---
title: "Anular factura"
method: POST
path: "/invoices/{id}/changeToCanceled"
tags: ["Facturas"]
---

# Anular factura

`POST /invoices/{id}/changeToCanceled`

## Request

- Base URL: `https://api.pirpos.com`
- URL: `https://api.pirpos.com/invoices/{id}/changeToCanceled`
- Auth: HTTP bearer

Cambia el estado de una factura a "Anulada" y revierte sus efectos en inventario y caja.

**Autenticación requerida:** Este endpoint requiere autenticación Bearer Token.
Usar el campo `tokenCurrent` obtenido del servicio de login (/login) en el header:
`Authorization: Bearer {tokenCurrent}`

**Requisitos:**
- Requiere caja registradora activa
- El usuario debe tener el permiso de anular facturas (`IE_POST_CANCELED`)
- La factura debe estar en un estado que permita anulación

**Efectos de la anulación:**
- Revierte el movimiento en la caja registradora
- Restaura el inventario de productos
- Para facturas electrónicas, inicia proceso de anulación ante la DIAN
- Notifica al sistema contable integrado (Siigo/Loggro)

## Ejemplos de Uso

### Anular factura con motivo
```json
{
  "reason": "Error en los productos facturados"
}
```

## Path parameters

- `id` string, required

## Request body

- object
  - `reason` string: Motivo de anulación

## Response `200`

Factura anulada exitosamente

- Invoice
  - `_id` string: ID único de la factura
  - `businessId` string: ID del negocio al que pertenece la factura
  - `business` object: Información del negocio
    - `name` string: Nombre del negocio
    - `nit` string: NIT del negocio
    - `address` string: Dirección del negocio
  - `number` string: Número de la factura
  - `invoicePrefix` string: Prefijo de la factura
  - `seq` number: Número secuencial de la factura
  - `products` object[]: Lista de productos en la factura
    - `idInternal` string: ID del producto
    - `name` string: Nombre del producto
    - `quantity` number: Cantidad
    - `price` number: Precio unitario
  - `total` number: Total de la factura
  - `totalPaid` number: Total pagado
  - `status` 'Pendiente' | 'Pagada' | 'Anulada': Estado de la factura
  - `type` 'Normal' | 'FacturaElectronica': Tipo de factura
  - `table` object: Información de la mesa
    - `idInternal` string: ID de la mesa
    - `name` string: Nombre de la mesa
  - `client` object: Información del cliente
    - `idInternal` string: ID del cliente
    - `name` string: Nombre del cliente
    - `phone` string: Teléfono del cliente
  - `cashier` object: Información del cajero
    - `idInternal` string: ID del cajero
    - `name` string: Nombre del cajero
  - `paid` object: Información de pago
    - `paymentMethodValue` object
      - `paymentMethod` string: Método de pago utilizado
  - `delivery` object: Información de entrega
    - `isDelivery` boolean: Si es una entrega a domicilio
    - `deliveryProvider` string: Proveedor de entrega
    - `deliveryGuy` object
      - `internalId` string: ID del repartidor
      - `name` string: Nombre del repartidor
  - `deliveryCost` number: Costo de entrega
  - `eInvoice` object: Información de facturación electrónica
    - `DIAN` object
      - `dianState` string: Estado en DIAN
  - `externalIntegration` object: Integraciones externas
    - `siigo` object
      - `statusCode` number: Código de estado en Siigo
    - `loggro` object
      - `statusCode` number: Código de estado en Loggro
  - `credit` object: Información de crédito
    - `dueDate` string, date-time: Fecha de vencimiento del crédito
  - `createdOn` string, date-time: Fecha de creación
  - `modifiedOn` string, date-time: Fecha de última modificación
  - `deletedInfo` object: Información de eliminación
    - `isDeleted` boolean: Si la factura está eliminada

## Other responses

- `400`: No se puede anular la factura
- `401`: Token de autorización inválido o sin caja activa
- `403`: Sin permisos para anular facturas
- `404`: Factura no encontrada
- `500`: Error interno del servidor

---

[API](https://skmtc.dev/loggro/apis/restobar-servicios-del-m-dulo-de-restobar.md) - [All operations](https://skmtc.dev/loggro/apis/restobar-servicios-del-m-dulo-de-restobar/llms.txt) - [OpenAPI document](https://skmtc.dev/loggro/apis/restobar-servicios-del-m-dulo-de-restobar/revisions/9d4431a3cddc?raw)
