Skip to main content

Resumen

HerramientaAuthDescripcion
crearFacturaSiEmitir factura electronica completa
listarFacturasSiListar facturas paginadas
obtenerFacturaSiDetalle de factura por UUID
obtenerFacturaPorCufSiDetalle de factura por CUF
anularFacturaSiAnular factura ante el SIAT
verificarEstadoFacturaSiEstado actual en el SIAT
crearNotaCreditoDebitoSiEmitir nota credito/debito
resumenFacturacionSiDashboard de facturacion
descargarDocumentoSiDescargar PDF, ticket o XML como base64
verificarFormatoNitNoValidar formato NIT
historialClienteSiHistorial de facturacion por NIT
buscarNormativaNoRAG normativa SIAT
erroresComunesSiatNoErrores comunes y soluciones
buscarContingenciasNoRAG contingencias
calcularMontoLiteralNoMonto numerico a texto literal

Herramientas de Facturacion

crearFactura

Crea y emite una factura electronica validada por el SIAT. Firma digital, CUF, validacion fiscal, generacion de PDF/XML y envio de email al cliente — todo en una sola llamada.
ParametroTipoRequeridoDescripcion
requestJsonStringSiJSON con los datos de la factura
Requiere autenticacion: Si Ejemplo de uso con AI:
“Emite una factura a DEMO S.R.L. con NIT 99001 por Bs. 500 de servicio de desarrollo”

listarFacturas

Lista facturas emitidas por el tenant autenticado, paginadas y ordenadas por fecha de emision descendente.
ParametroTipoRequeridoDescripcion
pageintNoPagina (inicia en 0, default: 0)
sizeintNoElementos por pagina (max 50, default: 10)
Requiere autenticacion: Si Ejemplo de uso con AI:
“Lista mis ultimas 5 facturas”

obtenerFactura

Obtiene los detalles completos de una factura por UUID, incluyendo datos del cliente, montos, estado SIAT, CUF y codigo QR.
ParametroTipoRequeridoDescripcion
idStringSiUUID de la factura
Requiere autenticacion: Si Ejemplo de uso con AI:
“Muestra los detalles de la factura a1b2c3d4-e5f6-7890-abcd-ef1234567890”

obtenerFacturaPorCuf

Obtiene los detalles de una factura por su CUF (Codigo Unico de Factura), el identificador unico ante el SIN.
ParametroTipoRequeridoDescripcion
cufStringSiCodigo Unico de Factura
Requiere autenticacion: Si Ejemplo de uso con AI:
“Busca la factura con CUF 2872F729450…”

anularFactura

Anula una factura electronica emitida. La anulacion es irreversible ante el SIAT.
ParametroTipoRequeridoDescripcion
idStringSiUUID de la factura
codigoMotivointSi1=Error datos, 2=Devolucion, 3=Periodo posterior, 4=Otro
Requiere autenticacion: Si Ejemplo de uso con AI:
“Anula la factura a1b2c3d4… por error de datos”

verificarEstadoFactura

Verifica el estado actual de una factura directamente con el SIAT. Estados posibles: VALIDATED, REJECTED, CANCELLED, PENDING, CONTINGENCY.
ParametroTipoRequeridoDescripcion
idStringSiUUID de la factura
Requiere autenticacion: Si Ejemplo de uso con AI:
“Verifica el estado de la factura a1b2c3d4… en el SIAT”

crearNotaCreditoDebito

Crea y emite una Nota de Credito o Debito contra una factura original validada. La nota se envia al SIAT para validacion con documento sector 24.
ParametroTipoRequeridoDescripcion
requestJsonStringSiJSON con los datos de la nota
Requiere autenticacion: Si Ejemplo de uso con AI:
“Emite una nota de credito contra la factura a1b2c3d4… por devolucion de Bs. 100”

resumenFacturacion

Obtiene un resumen tipo dashboard de la facturacion del tenant: total facturas, montos, estados, facturas recientes.
ParametroTipoRequeridoDescripcion
(ninguno)--No requiere parametros
Requiere autenticacion: Si Ejemplo de uso con AI:
“Dame un resumen de mi facturacion”

descargarDocumento

Descarga el PDF (A4 o ticket) o XML de una factura como contenido base64. Busca primero en S3 (CDN), si no existe genera el documento al vuelo.
ParametroTipoRequeridoDescripcion
cufStringSiCodigo Unico de Factura
formatoStringSia4 (PDF A4), ticket (PDF 80mm) o xml
Requiere autenticacion: Si Ejemplo de uso con AI:
“Descarga el PDF de la factura con CUF 2872F729…”

Herramientas de Utilidades SIAT

verificarFormatoNit

Valida el formato de un NIT boliviano. Los NITs validos tienen 7-15 digitos. El NIT 0 es valido (consumidor final).
ParametroTipoRequeridoDescripcion
nitStringSiNIT a validar (solo digitos)
Requiere autenticacion: No Ejemplo de uso con AI:
“Verifica si el NIT 1023456789 es valido”

historialCliente

Obtiene el historial de facturacion de un cliente por NIT. Muestra razon social, email, telefono y cantidad de facturas emitidas.
ParametroTipoRequeridoDescripcion
nitStringSiNIT del cliente
Requiere autenticacion: Si Ejemplo de uso con AI:
“Cual es el historial de facturacion del cliente con NIT 99001?”

buscarNormativa

Busqueda semantica (RAG) en la normativa oficial del SIAT sobre facturacion electronica boliviana.
ParametroTipoRequeridoDescripcion
consultaStringSiPregunta o termino de busqueda
Requiere autenticacion: No Ejemplo de uso con AI:
“Como funciona el CUFD segun la normativa?”

erroresComunesSiat

Lista los errores mas comunes del SIAT con sus codigos, descripciones y soluciones recomendadas.
ParametroTipoRequeridoDescripcion
(ninguno)--No requiere parametros
Requiere autenticacion: No Ejemplo de uso con AI:
“Cuales son los errores mas comunes del SIAT?”

buscarContingencias

Busqueda semantica (RAG) en el historial de contingencias y eventos significativos. Encuentra caidas del SIAT, puntos de venta con problemas, duracion y patrones.
ParametroTipoRequeridoDescripcion
consultaStringSiPregunta sobre contingencias
Requiere autenticacion: No Ejemplo de uso con AI:
“Cuantas caidas del SIAT hubo este mes?”

calcularMontoLiteral

Convierte un monto numerico a su representacion en texto literal (requerido por el SIAT en cada factura).
ParametroTipoRequeridoDescripcion
montodoubleSiMonto numerico a convertir
Requiere autenticacion: No Retorno ejemplo: "Quinientos 50/100 Bolivianos" Ejemplo de uso con AI:
“Convierte 1500.75 a texto literal”

Conceptos clave

El CUF es un codigo alfanumerico de ~50 caracteres generado por el SIAT que identifica univocamente cada factura electronica ante el SIN. Es el equivalente a un “DNI” de la factura.
  • Se genera al momento de emision y no cambia
  • Es necesario para anulaciones, consultas y descargas publicas
  • Los endpoints publicos /public/invoice/{cuf}/pdf y /public/invoice/{cuf}/xml usan el CUF como identificador
  • Ejemplo: 2872F7294502332E637FABFBC3654EA82202AD48E0969F14EBEB8AF74
Cuando el SIAT no esta disponible (caida, mantenimiento, problemas de red), CUCU activa el modo contingencia automaticamente:
  1. La factura se emite localmente con un CUF temporal
  2. Se almacena en la base de datos con estado CONTINGENCY
  3. Cuando el SIAT vuelve, CUCU sincroniza automaticamente las facturas pendientes
  4. El CUF temporal se reemplaza por el CUF definitivo del SIAT
El AI no necesita hacer nada especial — la contingencia es transparente.
El NIT (Numero de Identificacion Tributaria) boliviano tiene estas reglas:
  • Longitud: 7 a 15 digitos (solo numeros)
  • NIT 0: Valido — representa “consumidor final” (Sin nombre)
  • Validacion: Usa verificarFormatoNit antes de emitir para evitar rechazos del SIAT
  • Documento tipo 5: En clientDocumentType, el valor 5 = NIT
  • Los NITs se validan contra el algoritmo oficial del SIN (modulo 11)
Cada item en una factura requiere un codeProductSin del catalogo oficial del SIN. Ejemplos comunes:
CodigoDescripcion
83141Servicios de consultoria en tecnologia
86101Servicios de consultoria en gestion
46211Venta de software
73119Servicios de publicidad
85960Servicios de capacitacion
Usa la herramienta buscarNormativa para consultar codigos especificos.
El campo unitMeasure usa codigos numericos del catalogo SIN:
CodigoDescripcion
1Unidad
2Kilogramo
14Metro
57Pieza
58Servicio
La unidad mas comun para servicios es 58. Para productos fisicos, usa la unidad que corresponda.