Facturas
Solerba permite emitir facturas electrónicas validadas por la DGI de Panamá. Cada factura genera un CUFE (Código Único de Factura Electrónica) que garantiza su validez fiscal.
Tipos de documento
| Código | Tipo | Descripción |
|---|---|---|
01 | Factura de operaciones internas | Factura estándar para venta de bienes y servicios |
04 | Nota de crédito | Documento que anula o modifica una factura emitida, requiere el CUFE de la factura original |
Flujo de facturación
El proceso de emisión de una factura sigue estos pasos:
1. Crear factura → Se envían los datos del documento
2. Validación → El sistema valida datos fiscales, impuestos y totales
3. Timbrado → Se envía al proveedor autorizado (PAC) para validación ante la DGI
4. CUFE generado → La DGI asigna el Código Único de Factura Electrónica
5. PDF generado → Se genera el PDF con todos los datos fiscales y el CUFE
6. Entregado → La factura está disponible para descarga y envío¿Qué es el CUFE?
El CUFE (Código Único de Factura Electrónica) es el identificador fiscal que la DGI asigna a cada documento electrónico válido. Es la prueba de que la factura fue recibida y aprobada por la autoridad fiscal.
Impuestos (ITBMS)
El ITBMS (Impuesto de Transferencia de Bienes Muebles y Servicios) es el impuesto aplicable en Panamá. Solerba soporta las siguientes tasas:
| Código | Tasa | Descripción |
|---|---|---|
00 | 0% | Exento de impuestos |
01 | 7% | Tasa general |
02 | 10% | Tasa para licores y productos específicos |
03 | 15% | Tasa para tabaco y productos específicos |
Cada ítem de la factura debe incluir al menos un impuesto. El cálculo del impuesto se realiza automáticamente sobre el precio del ítem.
Ejemplo de cálculo
Para un producto de $100.00 con ITBMS al 7%:
| Concepto | Monto |
|---|---|
| Precio | $100.00 |
| ITBMS (7%) | $7.00 |
| Total | $107.00 |
Formas de pago
La DGI requiere especificar la forma de pago de cada factura:
| Código | Forma de pago | Descripción |
|---|---|---|
02 | Tarjeta | Tarjeta de crédito o débito |
03 | Cheque | Pago con cheque |
04 | Transferencia | Transferencia bancaria |
08 | Efectivo | Pago en efectivo |
99 | Otro | Otra forma de pago (requiere descripción de mínimo 12 caracteres) |
PLAZO | Crédito a plazo | Venta a crédito con plazo de pago |
Forma de pago "Otro"
Cuando se usa el código 99 (Otro), es obligatorio incluir una descripción de al menos 12 caracteres explicando la forma de pago.
Una factura puede tener múltiples formas de pago. La suma de los montos de todas las formas de pago debe coincidir con el total de la factura.
Descuentos
Solerba soporta descuentos en dos niveles:
Descuentos a nivel de ítem
Cada ítem puede tener un descuento individual que se aplica sobre el precio unitario:
{
"description": "Producto A",
"qty": 2,
"price": 50,
"discount": 5,
"taxes": [{ "code": "01" }]
}Descuentos a nivel de documento
Se aplican al total de la factura, adicionales a los descuentos por ítem:
{
"discounts": [
{
"amount": 10,
"description": "Descuento por pronto pago"
}
]
}Notas de crédito
Una nota de crédito es un documento que anula parcial o totalmente una factura emitida previamente. Para emitir una nota de crédito:
- Usa
doctype: "04"en la solicitud - Incluye el CUFE de la factura original en
additionalData.creditNote.cufe - Define los ítems y montos que cubre la nota de crédito
{
"doctype": "04",
"branchId": 1,
"items": [
{
"description": "Devolución de producto",
"qty": 1,
"price": 50,
"taxes": [{ "code": "01" }]
}
],
"payments": [
{ "type": "02", "amount": 53.5 }
],
"additionalData": {
"creditNote": {
"cufe": "FE0120000155704849-2-2021-3200012026021019600000460010129600000462"
}
}
}CUFE obligatorio
Las notas de crédito siempre requieren el CUFE de la factura original a la que hacen referencia. Sin este dato, la emisión será rechazada.
Cancelación de facturas
Las facturas emitidas pueden ser canceladas. La cancelación genera un registro ante el proveedor de facturación.
- Se requiere el ID de la factura
- Opcionalmente se puede incluir una razón de cancelación (entre 15 y 255 caracteres)
- Una vez cancelada, la factura no puede reactivarse
Para más detalles sobre el endpoint, consulta .
Idempotencia
Para evitar facturas duplicadas, puedes usar el campo externalId:
{
"externalId": "ORDER_12345",
"branchId": 1,
"items": [...],
"payments": [...]
}Si envías una solicitud con un externalId que ya fue procesado exitosamente, el sistema retornará la factura existente en lugar de crear una nueva. Esto es útil para reintentos seguros en caso de errores de red.
Longitud máxima
El campo externalId acepta hasta 100 caracteres. Usa identificadores únicos de tu sistema (IDs de orden, números de referencia, etc.).
Siguientes pasos
- — Referencia completa del endpoint con todos los campos
- — Cómo cancelar una factura emitida
- — Consulta facturas por ID o CUFE
- — Tipos de receptor y datos requeridos