Anular nota de crédito
/api/v1/notas-credito/:notaCreditoId/anularAnula una nota aceptada de los sectores SIAT 24 o 47. Requiere X-API-Key con permiso notascredito.anular de la misma empresa, ambiente, modalidad, sucursal y punto de venta de la nota.
X-API-KeyVer operaciones de Notas de crédito Contrato de la operación
Anula una nota aceptada de los sectores SIAT 24 o 47. Requiere X-API-Key con permiso notas_credito.anular de la misma empresa, ambiente, modalidad, sucursal y punto de venta de la nota.
Solicitud
notaCreditoId es el UUID de la nota, distinto del UUID de la factura original y de su CUF.
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
codigoMotivo | integer | Sí | Código positivo obtenido del catálogo motivos_anulacion. El valor 1 del ejemplo no es un valor por defecto. SIAT valida el motivo y el plazo fiscal. |
Idempotency-Key es opcional. Si lo envías debe ser un UUID v4. La misma clave y motivo reutilizan el intento existente; usarla para otra nota o motivo devuelve 409. Sin cabecera también se bloquean anulaciones simultáneas de la misma nota.
Envía únicamente codigoMotivo en el cuerpo de la solicitud.
Confirmación y resultado pendiente
| HTTP | Estado local | Comportamiento |
|---|---|---|
200 | anulado | SIAT confirmó la anulación. Libera el monto consumido por la nota para posteriores devoluciones. |
202 | anulacion_pendiente | El resultado es incierto. Conserva el monto consumido y todavía no confirma la anulación. |
Para conciliar un resultado pendiente, repite esta misma solicitud con el mismo motivo. Si enviaste una clave, conserva la misma. El resultado permanece pendiente hasta que se confirme la anulación. Si persiste, contacta con soporte. Obtener nota de crédito permite consultar el estado registrado de la nota. Durante la espera, codigoEstado: 908 conserva la aceptación original.
Historial y errores
La anulación no anula ni modifica la factura original. La nota conserva su CUF, datos e historial. El PDF continúa disponible con la marca «ANULADO» tras confirmar la anulación. La respuesta añade codigoMotivoAnulacion, anuladaEn y, cuando SIAT lo devuelve, codigoRecepcionAnulacion.
Un motivo ausente o no positivo devuelve 400. Un conflicto de estado o de clave devuelve 409; una nota de otra empresa, ambiente o modalidad devuelve 404. Un rechazo explícito de SIAT devuelve 422 y mantiene la nota aceptada. Tras ese rechazo puedes corregir el motivo con una nueva solicitud sin clave o con otra clave. Para reactivar una nota anulada usa Revertir anulación de nota de crédito.
Ejemplo
Solicitud de ejemplo
{
"codigoMotivo": 1
}Respuesta
Ejemplo de respuesta
application/json{
"message": "nota de crédito anulada correctamente",
"data": {
"id": "00000000-0000-4000-8000-000000000001",
"facturaId": "00000000-0000-4000-8000-000000000042",
"nroNota": 1,
"cuf": "B2C3D4E5F60718293A4B5C6D7E8F90123456789ABCDEF0123456789ABCDEF01",
"codigoRecepcion": "00000000-0000-4000-8000-000000000043",
"codigoEstado": 905,
"estado": "anulado",
"fechaEmision": "2026-08-30T16:10:00-04:00",
"montoTotalOriginal": 500,
"montoTotalDevuelto": 100,
"montoEfectivoCredito": 13,
"codigoPuntoVenta": 0,
"codigoDocumentoSector": 24,
"urlQr": "https://pilotosiat.impuestos.gob.bo/consulta/QR?nit=123456789&cuf=B2C3D4E5F60718293A4B5C6D7E8F90123456789ABCDEF0123456789ABCDEF01&numero=1&t=2",
"urlXml": "https://api.example.test/api/v1/public/notas-credito/B2C3D4E5F60718293A4B5C6D7E8F90123456789ABCDEF0123456789ABCDEF01/xml",
"urlPdf": "https://api.example.test/api/v1/public/notas-credito/B2C3D4E5F60718293A4B5C6D7E8F90123456789ABCDEF0123456789ABCDEF01/pdf",
"creadoEn": "2026-08-30T16:10:00-04:00",
"actualizadoEn": "2026-08-30T16:10:00-04:00",
"codigoMotivoAnulacion": 1,
"codigoRecepcionAnulacion": "anulacion-siat-demo",
"anuladaEn": "2026-08-30T16:10:00-04:00"
}
}Datos ficticios; los identificadores y valores cambian en cada respuesta.
202 Accepted
La anulación todavía no está confirmada. Repite la misma solicitud con el mismo motivo y conserva la clave de idempotencia si la enviaste. El monto continúa consumido hasta la confirmación.
{
"message": "anulación de nota de crédito pendiente de confirmación",
"data": {
"id": "00000000-0000-4000-8000-000000000001",
"facturaId": "00000000-0000-4000-8000-000000000042",
"nroNota": 1,
"cuf": "B2C3D4E5F60718293A4B5C6D7E8F90123456789ABCDEF0123456789ABCDEF01",
"codigoRecepcion": "00000000-0000-4000-8000-000000000043",
"codigoEstado": 908,
"estado": "anulacion_pendiente",
"fechaEmision": "2026-08-30T16:10:00-04:00",
"montoTotalOriginal": 500,
"montoTotalDevuelto": 100,
"montoEfectivoCredito": 13,
"codigoPuntoVenta": 0,
"codigoDocumentoSector": 24,
"urlQr": "https://pilotosiat.impuestos.gob.bo/consulta/QR?nit=123456789&cuf=B2C3D4E5F60718293A4B5C6D7E8F90123456789ABCDEF0123456789ABCDEF01&numero=1&t=2",
"urlXml": "https://api.example.test/api/v1/public/notas-credito/B2C3D4E5F60718293A4B5C6D7E8F90123456789ABCDEF0123456789ABCDEF01/xml",
"urlPdf": "https://api.example.test/api/v1/public/notas-credito/B2C3D4E5F60718293A4B5C6D7E8F90123456789ABCDEF0123456789ABCDEF01/pdf",
"creadoEn": "2026-08-30T16:10:00-04:00",
"actualizadoEn": "2026-08-30T16:10:00-04:00",
"codigoMotivoAnulacion": 1
}
}