sk_test_ (sandbox, sin validez fiscal).
1
Verifica la conexión
Sin API Key:
curl https://sandbox.cucu.bo/api/v3/ping
const data = await fetch('https://sandbox.cucu.bo/api/v3/ping').then(r => r.json());
import requests
print(requests.get('https://sandbox.cucu.bo/api/v3/ping').json())
{ "message": "pong", "timestamp": "2026-02-11T12:00:00" }
2
Emite la factura
Campos mínimos (todos):
Respuesta
| Campo | Tipo | Descripción |
|---|---|---|
pointOfSaleId | UUID | Punto de venta registrado en el SIAT |
clientDocumentType | int | 1 CI, 2 CEX, 3 PAS, 4 OD, 5 NIT |
clientDocumentNumber | string | Número de documento del cliente |
clientBusinessName | string | Razón social o nombre |
clientEmail | string | Opcional. Destino del correo con la factura |
paymentMethodCode | int | 1 Efectivo, 2 Tarjeta, 6 Transferencia (catálogo SIAT) |
details[] | array | Ítems (mínimo 1) |
details[].activityEconomic | string | Actividad económica (CAEB) |
details[].codeProductSin | string | Código de producto/servicio del SIN |
details[].description | string | Descripción libre |
details[].quantity | number | Cantidad, admite decimales |
details[].unitMeasure | int | Unidad de medida SIN: 58 Servicio, 1 Unidad, 57 Pieza |
details[].priceUnit | number | Precio unitario en Bs, 2 decimales |
curl -X POST https://sandbox.cucu.bo/api/v3/invoices \
-H "Content-Type: application/json" \
-H "X-API-Key: YOUR_API_KEY" \
-d '{
"pointOfSaleId": "660e8400-e29b-41d4-a716-446655440004",
"clientDocumentType": 5,
"clientDocumentNumber": "99001",
"clientBusinessName": "EMPRESA DEMO S.R.L.",
"clientEmail": "demo@ejemplo.com",
"paymentMethodCode": 1,
"details": [{
"activityEconomic": "620100",
"codeProductSin": "83141",
"description": "Servicio de desarrollo de software",
"quantity": 1,
"unitMeasure": 58,
"priceUnit": 500.00
}]
}'
const response = await fetch('https://sandbox.cucu.bo/api/v3/invoices', {
method: 'POST',
headers: { 'Content-Type': 'application/json', 'X-API-Key': 'YOUR_API_KEY' },
body: JSON.stringify({
pointOfSaleId: '660e8400-e29b-41d4-a716-446655440004',
clientDocumentType: 5,
clientDocumentNumber: '99001',
clientBusinessName: 'EMPRESA DEMO S.R.L.',
clientEmail: 'demo@ejemplo.com',
paymentMethodCode: 1,
details: [{
activityEconomic: '620100',
codeProductSin: '83141',
description: 'Servicio de desarrollo de software',
quantity: 1,
unitMeasure: 58,
priceUnit: 500.00
}]
})
});
const data = await response.json();
import requests
response = requests.post(
'https://sandbox.cucu.bo/api/v3/invoices',
headers={'Content-Type': 'application/json', 'X-API-Key': 'YOUR_API_KEY'},
json={
'pointOfSaleId': '660e8400-e29b-41d4-a716-446655440004',
'clientDocumentType': 5,
'clientDocumentNumber': '99001',
'clientBusinessName': 'EMPRESA DEMO S.R.L.',
'clientEmail': 'demo@ejemplo.com',
'paymentMethodCode': 1,
'details': [{
'activityEconomic': '620100',
'codeProductSin': '83141',
'description': 'Servicio de desarrollo de software',
'quantity': 1,
'unitMeasure': 58,
'priceUnit': 500.00
}]
}
)
print(response.json())
201 Created:{
"success": true,
"message": "Factura emitida exitosamente",
"data": {
"id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"invoiceNumber": 1,
"cuf": "2872F7294502332E637FABFBC3654EA82202AD48E0969F14EBEB8AF74",
"state": "VALIDATED",
"clientBusinessName": "EMPRESA DEMO S.R.L.",
"amountTotal": 500.00,
"literal": "Quinientos 00/100 Bolivianos",
"emissionDate": "2026-02-11T12:00:00",
"emissionType": "NORMAL",
"documents": {
"a4": "https://sandbox.cucu.bo/api/v3/invoices/a1b2c3d4-e5f6-7890-abcd-ef1234567890/documents/a4",
"ticket": "https://sandbox.cucu.bo/api/v3/invoices/a1b2c3d4-e5f6-7890-abcd-ef1234567890/documents/ticket",
"ticketsiat": "https://sandbox.cucu.bo/api/v3/invoices/a1b2c3d4-e5f6-7890-abcd-ef1234567890/documents/ticketsiat",
"xml": "https://sandbox.cucu.bo/api/v3/invoices/a1b2c3d4-e5f6-7890-abcd-ef1234567890/documents/xml",
"zip": "https://sandbox.cucu.bo/api/v3/invoices/a1b2c3d4-e5f6-7890-abcd-ef1234567890/documents/zip"
},
"verificationUrl": "https://siat.impuestos.gob.bo/consulta/QR?nit=...&cuf=...&numero=...&t=2"
},
"timestamp": "2026-02-11T12:00:00"
}
| Campo | |
|---|---|
id | Para consultas, anulación y notas |
cuf | Código Único de Facturación del SIAT |
state | VALIDATED, REJECTED, CANCELLED |
emissionType | NORMAL o CONTINGENCY |
documents | PDF A4, ticket, XML y ZIP, con tu API Key |
3
Descarga el PDF
a4, ticket, ticketsiat, xml o zip, con tu API Key:curl -OJ https://sandbox.cucu.bo/api/v3/invoices/{id}/documents/a4 \
-H "X-API-Key: YOUR_API_KEY"
4
Opcional: conecta un agente de IA
https://sandbox.cucu.bo/mcp con X-API-Key. Conectar.