Inicio Rápido
Bienvenido a la API de Solerba. Esta guía te ayudará a emitir tu primera factura electrónica y entender los fundamentos de nuestra API Lite.
¿Prefieres usar el panel de facturación?
Si prefieres emitir facturas sin código, tus vendedores pueden hacerlo directamente desde el . Esta guía está enfocada en la integración por API.
Requisitos previos
Antes de comenzar, asegúrate de tener:
- Una cuenta de Solerba con acceso al
- Al menos una empresa registrada con sus credenciales de facturación configuradas
- Al menos una sucursal creada para la empresa
- Un paquete de folios activo asignado a la empresa
- Un API Token generado para la empresa
Paso 1: Obtén tu API Token
- Inicia sesión en el
- Navega a Empresas y selecciona la empresa para la que deseas facturar
- En la sección de API Token, haz clic en Generar Token
- Copia el token generado y guárdalo de forma segura
Seguridad del token
El API Token tiene una vigencia de 120 días. Guárdalo de forma segura y nunca lo expongas en código fuente público. Usa variables de entorno para almacenarlo.
Paso 2: Haz tu primera llamada a la API
Probemos tu API Token consultando una factura existente:
curl -X GET "https://api.solerba.com/external-api/invoicing/find?id=1" \
-H "X-SOLERBA-TOKEN: tu-api-token-aqui"Ejemplo en JS.
const response = await fetch('https://api.solerba.com/external-api/invoicing/find?id=1', {
method: 'GET',
headers: {
'X-SOLERBA-TOKEN': process.env.SOLERBA_TOKEN
}
});
const result = await response.json();
console.log(result);Ejemplo en Py
import requests
response = requests.get(
'https://api.solerba.com/external-api/invoicing/find',
params={'id': 1},
headers={
'X-SOLERBA-TOKEN': 'tu-api-token-aqui'
}
)
result = response.json()
print(result)Si tu token es válido, recibirás una respuesta con los datos de la factura o un mensaje indicando que no fue encontrada.
Paso 3: Crea tu primera factura
Vamos a crear una factura básica a Consumidor Final (el caso más simple):
curl -X POST "https://api.solerba.com/external-api/invoicing/lite" \
-H "X-SOLERBA-TOKEN: tu-api-token-aqui" \
-H "Content-Type: application/json" \
-d '{
"branchId": 1,
"items": [
{
"description": "Servicio de consultoría",
"qty": 1,
"price": 100,
"taxes": [
{
"code": "01"
}
]
}
],
"payments": [
{
"type": "08",
"amount": 107
}
]
}'Ejemplo JS
const response = await fetch('https://api.solerba.com/external-api/invoicing/lite', {
method: 'POST',
headers: {
'X-SOLERBA-TOKEN': process.env.SOLERBA_TOKEN,
'Content-Type': 'application/json'
},
body: JSON.stringify({
branchId: 1,
items: [
{
description: 'Servicio de consultoría',
qty: 1,
price: 100,
taxes: [{ code: '01' }]
}
],
payments: [
{ type: '08', amount: 107 }
]
})
});
const result = await response.json();
console.log(result);Ejemplo Py
import requests
response = requests.post(
'https://api.solerba.com/external-api/invoicing/lite',
headers={
'X-SOLERBA-TOKEN': 'tu-api-token-aqui',
'Content-Type': 'application/json'
},
json={
'branchId': 1,
'items': [
{
'description': 'Servicio de consultoría',
'qty': 1,
'price': 100,
'taxes': [{'code': '01'}]
}
],
'payments': [
{'type': '08', 'amount': 107}
]
}
)
result = response.json()
print(result)¿Qué estamos enviando?
branchId: ID de la sucursal desde la que se facturaitems: Un producto/servicio de $100.00 con ITBMS al 7% (código01)payments: Pago en efectivo (código08) por $107.00 (precio + impuesto)- Al no enviar
client, se genera automáticamente como Consumidor Final
Paso 4: Entiende la respuesta
Si la factura se emitió correctamente, recibirás una respuesta como esta:
{
"success": true,
"result": {
"id": 18874,
"cufe": "FE0120000155704849-2-2021-3200012026021019600000460010129600000462",
"urlPdf": "https://storage.solerba.com/invoices/18874.pdf",
"datetime": "2026-03-20T15:30:00.000Z"
}
}| Campo | Descripción |
|---|---|
id | Identificador único de la factura en Solerba |
cufe | Código Único de Factura Electrónica — el identificador fiscal ante la DGI |
urlPdf | URL para descargar el PDF de la factura |
datetime | Fecha y hora de emisión |
Paso 5: Consulta tu factura
Puedes consultar la factura creada usando su id o su cufe:
# Por ID
curl -X GET "https://api.solerba.com/external-api/invoicing/find?id=18874" \
-H "X-SOLERBA-TOKEN: tu-api-token-aqui"
# Por CUFE
curl -X GET "https://api.solerba.com/external-api/invoicing/find?cufe=FE0120000155704849-2-2021-3200012026021019600000460010129600000462" \
-H "X-SOLERBA-TOKEN: tu-api-token-aqui"Ejemplo JS
// Por ID
const response = await fetch('https://api.solerba.com/external-api/invoicing/find?id=18874', {
headers: { 'X-SOLERBA-TOKEN': process.env.SOLERBA_TOKEN }
});
const result = await response.json();
console.log(result);Ejemplo Py
# Por ID
response = requests.get(
'https://api.solerba.com/external-api/invoicing/find',
params={'id': 18874},
headers={'X-SOLERBA-TOKEN': 'tu-api-token-aqui'}
)
print(response.json())Problemas comunes
| Error | Causa | Solución |
|---|---|---|
401 Unauthorized | Token inválido o expirado | Verifica tu API Token. Los tokens expiran cada 120 días. |
400 Bad Request | Datos de la factura inválidos | Revisa que todos los campos requeridos estén presentes y sean válidos. |
| Sin folios disponibles | El paquete de la empresa no tiene folios | Contacta al administrador para que asigne un nuevo paquete de folios. |
404 Not Found | Factura no encontrada | Verifica que el id o cufe sea correcto. |
Siguientes pasos
- — Aprende sobre los tipos de documento, impuestos y formas de pago
- — Referencia completa del endpoint con todos los campos disponibles
- — Cómo facturar a contribuyentes, gobierno y extranjeros
- — Detalles sobre el manejo de API Tokens