Manual de usuario · Facturación electrónica
Facturación Electrónica de Panamá en Odoo 19
Del RUC al CUFE: configuración del PAC, catálogos de la DGI, emisión de facturas, notas de crédito y débito, anulaciones, contingencia y punto de venta con el Sistema de Facturación Electrónica de Panamá.
1.Cómo usar este manual
Qué encontrará aquí, cómo está organizado y qué se asume que ya funciona.
Este manual cubre la facturación electrónica de Panamá dentro de Odoo 19, implementada por
el módulo multipac_felpa y su extensión para el punto de venta
pos_multipac_felpa. Está escrito para tres perfiles distintos:
Quien configura
Capítulos 4 a 15. Todo lo que hay que dejar listo antes de emitir el primer documento: datos de la empresa, credenciales del PAC, diarios, catálogos, contactos y productos.
Quien factura
Capítulos 16 a 27. La operación diaria: emitir, anular, corregir con notas de crédito y débito, consultar el estado en la DGI y entregar el CAFE al cliente.
Quien atiende la caja
Capítulos 28 a 31. El punto de venta: cómo se timbra cada ticket, cómo se anula y qué revisa Odoo al cerrar la sesión.
Convenciones
- Las rutas de menú se escriben así: Contabilidad → Clientes → Facturas.
- Los nombres de campo aparecen tal como se leen en la pantalla en español: Tipo de Emisión FEL de Panamá.
- Los nombres técnicos, cuando hacen falta, van en monoespaciado:
fel_pa_cufe. - Los estados FEL se muestran como etiquetas: Borrador Aceptada Rechazado Cancelado.
Que Odoo 19 ya está instalado, que la empresa tiene su plan de cuentas de Panamá cargado
(l10n_pa) y que la empresa ya está afiliada al Sistema de Facturación Electrónica
de Panamá y tiene contrato con un PAC. La afiliación ante la DGI y la contratación del PAC son
trámites externos a Odoo.
La base de demostración de las capturas
Todas las capturas de este manual provienen de una base de demostración creada específicamente
para documentarlo. La empresa emisora se llama GRUPO CMW, S.A., tiene RUC
155653692-2-2017 con DV 48 y opera con el PAC The Factory HKA en su
ambiente de pruebas.
Las facturas, notas de crédito, notas de débito y anulaciones que verá en las capturas fueron certificadas de verdad contra el ambiente de pruebas de la DGI: los CUFE, los protocolos de autorización y los códigos QR son auténticos y provienen de la respuesta real del PAC. Por tratarse del ambiente de pruebas, ninguno de esos documentos tiene efecto comercial ni fiscal.
2.La facturación electrónica en Panamá
Los cinco conceptos que hay que tener claros antes de tocar Odoo.
En Panamá la factura electrónica se rige por el Sistema de Facturación Electrónica de Panamá (SFEP) de la Dirección General de Ingresos (DGI). La lógica de fondo es sencilla: usted no emite una factura y la manda al cliente sin más; primero la certifica, y sólo cuando la DGI la autoriza el documento existe legalmente.
Los conceptos
| Término | Qué significa |
|---|---|
| DGI | Dirección General de Ingresos. Es la autoridad tributaria panameña, equivalente a la SAT guatemalteca o al SAT mexicano. |
| PAC | Proveedor Autorizado Calificado. Es la empresa privada certificada por la DGI que recibe el documento, lo firma electrónicamente y lo transmite a la DGI. Odoo nunca habla directamente con la DGI: siempre habla con el PAC. |
| FE | Factura Electrónica. El documento fiscal propiamente dicho, en formato XML/JSON, que vive en los servidores de la DGI. |
| CUFE | Código Único de Factura Electrónica. Es la «matrícula» del documento: una cadena larga que identifica de forma única esa factura ante la DGI. Sin CUFE, el documento no está certificado. |
| CAFE | Comprobante Auxiliar de Factura Electrónica. Es la representación impresa o en PDF que se entrega al cliente. El CAFE no es la factura: es un comprobante de que existe una FE, y por eso lleva impreso el CUFE y un código QR para consultarla. |
| RUC / DV | Registro Único de Contribuyente y su Dígito Verificador. En Panamá el DV se maneja como un dato aparte del RUC y siempre viaja junto con él. |
| Folios | La cantidad de documentos que su licencia con el PAC le permite certificar. Se consumen uno por documento aceptado. |
A lo largo de todo el manual verá que la pregunta clave siempre es la misma: ¿el documento tiene CUFE? Si lo tiene, está certificado ante la DGI y ya no se puede modificar: sólo se puede anular o corregir con una nota. Si no lo tiene, todavía es un borrador interno de Odoo, por más que esté publicado contablemente.
Los cinco PAC soportados
El módulo trae integración con cinco proveedores. Cada uno usa una tecnología distinta y expone funciones distintas, y eso cambia lo que usted verá en la pantalla:
| PAC | Protocolo | Qué funciones ofrece en Odoo |
|---|---|---|
| The Factory HKA | SOAP | El más completo: enviar, consultar estado, descargar PDF y XML, anular, consultar RUC/DV, folios restantes, enviar el documento por correo desde el PAC y rastrear esos correos. Además soporta la utilidad offline. |
| EBI | SOAP | Mismo conjunto de funciones que HKA (comparten la estructura del mensaje). |
| eFacturapty | SOAP | Igual que los anteriores, con una diferencia de formato en la lista de ítems y formas de pago. No expone la consulta de estado del documento. |
| Digifact | REST | Requiere generar un token con usuario y contraseña, que caduca. Enviar, consultar RUC/DV, descargar PDF y XML, consultar estado. No soporta folios restantes ni el envío de correo por el PAC, ni contingencia offline. |
| PanaFacturas | REST | También trabaja con token. Enviar, consultar RUC/DV y anular. No soporta descargas de PDF/XML, consulta de estado, folios ni correo. |
Odoo esconde automáticamente los botones que su PAC no soporta. Si no ve Folios restantes o Descargar PDF FEL, no es un error: es que ese proveedor no ofrece esa función. En el capítulo 25 hay una tabla que resume qué botón aparece con qué PAC.
3.Los módulos y qué hace cada uno
Dos módulos, un menú nuevo y un puñado de pestañas añadidas a pantallas que usted ya conoce.
multipac_felpa
Es el módulo base. Añade a Odoo:
- La configuración del PAC en la ficha de la empresa y la validación de esa configuración.
- Los catálogos de la DGI: 628 corregimientos con su código de ubicación, 421 categorías CPBS (clasificación de productos y servicios) y los tipos de identificación de receptor.
- La activación de FEL por diario, los tipos de documento fiscal y su numeración.
- Los campos fiscales en contactos (tipo de receptor, RUC, DV, corregimiento) y en productos (categoría CPBS, medicinas, vehículos).
- Toda la mecánica de certificación en la factura: la pestaña Panamá FEL, el CUFE, el QR, la anulación, la contingencia y las consultas al PAC.
- Un menú propio llamado FE-DGI y una bitácora de todas las peticiones enviadas al PAC.
- Once plantillas de factura impresa preparadas para el CAFE.
pos_multipac_felpa
Extiende el punto de venta para que cada ticket se convierta en una factura electrónica certificada en el momento del cobro, sin salir de la pantalla de caja. Añade la configuración FEL del punto de venta, el timbrado automático al validar el pago, el CUFE y el QR en el ticket, la anulación desde la pantalla de órdenes y un control de CUFE al cerrar la sesión.
El menú FE-DGI
Es el centro de control de la facturación electrónica. Agrupa los documentos por su estado ante la DGI y concentra la configuración:
| Menú | Qué muestra |
|---|---|
| Documentos electrónicos → Todos | Todo lo que alguna vez salió hacia el PAC: aceptados, rechazados, en contingencia y anulados. |
| → Documentos certificados | Sólo los Aceptada. Es la lista que cuadra con lo que la DGI tiene registrado. |
| → Documentos con error | Los Rechazado: se publicaron en Odoo pero el PAC los rechazó. Requieren acción. |
| → Documentos en contingencia | Los emitidos sin conexión, pendientes de subir a la DGI. |
| → Documentos anulados | Los Cancelado ante la DGI. |
| Peticiones API | La bitácora completa: cada llamada al PAC con su envío y su respuesta. |
| Sesiones de contingencia | Las contingencias abiertas y cerradas por diario. |
| Configuración | Diarios FEL, empresa, plantilla de factura, categorías CPBS y corregimientos. |
4.Instalación y requisitos
Qué necesita el servidor y en qué orden se instalan los módulos.
Dependencias de Odoo
multipac_felpa depende de account, sale,
sale_stock, contacts, base_address_extended,
l10n_latam_base y l10n_pa. Al instalarlo, Odoo arrastra todo eso
automáticamente. pos_multipac_felpa añade point_of_sale,
pos_sale y account_tax_python.
Dependencias de Python
El servidor necesita estas librerías instaladas en el entorno de Odoo:
pip install zeep qrcode img2pdf fpdf
zeep— cliente SOAP; es el que habla con HKA, EBI y eFacturapty.qrcode— genera la imagen del código QR que se imprime en el CAFE.img2pdfyfpdf— utilidades de las plantillas de impresión.
El servidor de Odoo debe poder alcanzar por HTTPS la URL del PAC. Si su instalación está detrás de un cortafuegos con lista blanca, hay que autorizar el dominio del proveedor antes de intentar la primera certificación; de lo contrario el primer envío se queda esperando y termina en error de conexión.
Orden de instalación
- Cargue el plan de cuentas de Panamá: en una empresa nueva, ponga el país
Panamá en la ficha de la empresa y deje que Odoo instale la localización
l10n_pa. Esto crea el ITBMS del 7 % y la moneda PAB. - Instale E-Invoice - Panamá FEL (
multipac_felpa) desde Aplicaciones. - Si va a usar caja, instale además POS E-Invoice - Panamá
(
pos_multipac_felpa). - Instale el idioma Español (Panamá) y asígneselo a los usuarios. El módulo trae su
traducción en
es_PA; sin ella verá etiquetas en inglés.
La instalación crea tres acciones planificadas que conviene conocer, porque explican comportamientos que de otro modo parecen mágicos:
- Panamá FEL: Contingency Process — cada 10 minutos reintenta enviar a la DGI los documentos que quedaron en contingencia.
- Panamá FEL: Close Old Contingencies — cada hora cierra las contingencias que llevan más de 24 horas abiertas.
- Panamá FEL: Send Offline Requests — cada hora sube al PAC los documentos generados con la utilidad offline.
5.Configuración fiscal de la empresa
Los datos que la DGI exige del emisor y dónde se capturan.
Vaya a Ajustes → Usuarios y empresas → Empresas y abra su empresa, o use el atajo FE-DGI → Configuración → Empresa.
Datos obligatorios del emisor
| Campo | Qué poner |
|---|---|
| Nombre de la empresa | La razón social exacta que aparece en el RUC. Si valida el RUC con el botón del encabezado, Odoo lo escribe por usted con el nombre que devuelve la DGI. |
| RUC | El Registro Único de Contribuyente, con guiones, tal como lo emite la DGI. Ejemplo: 155653692-2-2017. |
| DV para Contribuyente Panamá | El dígito verificador, siempre a dos posiciones. Ejemplo: 48. Se obtiene con el botón Validar RUC. |
| Dirección | Calle y número. Es lo que viaja como dirección del emisor. |
| Corregimiento | Se elige del catálogo de la DGI. De aquí sale el código de ubicación (por ejemplo 8-8-6 para Betania), que es un dato obligatorio del documento. |
| Distrito | La ciudad. Se filtra automáticamente por la provincia. |
| Provincia | La provincia panameña. |
| Teléfono | Debe poder normalizarse al formato panameño 999-9999 o 9999-9999. Odoo quita el prefijo +507 y los caracteres no numéricos antes de enviarlo. |
| Moneda | PAB (balboa). El balboa está a la par con el dólar; para exportaciones puede facturar en otra moneda, véase el capítulo 21. |
El código de ubicación del corregimiento es obligatorio en el documento electrónico, tanto para el emisor como para los receptores contribuyentes. Si falta, el envío se detiene con un error antes de salir de Odoo. Es la causa número uno de fallos en las primeras certificaciones.
Validar el RUC de la empresa
El botón Validar RUC del encabezado consulta el RUC contra la DGI a través del PAC y trae tres cosas: la razón social oficial, el DV y el tipo de contribuyente. Odoo escribe esos valores en la ficha. Es la forma correcta de obtener el DV: no lo calcule a mano.
6.Conexión con el PAC
Las credenciales, el ambiente y las opciones por defecto que evitan trabajo repetido.
En la misma ficha de la empresa, abra la pestaña Configuración FEL de Panamá.
Configuración del PAC
| Campo | Para qué sirve |
|---|---|
| PAC | El proveedor contratado. Al elegirlo, Odoo muestra u oculta el resto de campos según lo que ese PAC necesite. |
| URL | El punto de acceso del servicio. En los PAC SOAP termina en ?wsdl. Cada proveedor tiene una URL distinta para pruebas y otra para producción: cambiarla es lo que mueve su operación de un ambiente a otro. |
| Token Empresa | En HKA, EBI y eFacturapty es la credencial que identifica a su empresa; la entrega el PAC. En Digifact y PanaFacturas este campo es de sólo lectura y lo llena el botón Generar token. |
| Token Password | La contraseña que acompaña al token. Se muestra enmascarada y sólo la ven los usuarios del grupo FEL Password User. |
| Nombre de usuario de la empresa | Sólo para Digifact y PanaFacturas. En Digifact, Odoo lo antepone con PA. y el RUC al generar el token. |
| URL del token / de validación / de consulta / de descarga / de anulación | Los PAC REST exponen cada función en una dirección distinta, así que hay que capturarlas por separado. Los PAC SOAP usan una sola URL para todo. |
| Código de medio | Sólo PanaFacturas: el medio de emisión que le asignó el proveedor. |
| Ambiente | Pruebas o Producción. Además de la URL, algunos PAC cambian el comportamiento según este valor: en Digifact, por ejemplo, marca el documento como emisión de prueba. |
Cambie los tres a la vez: la URL del PAC, las credenciales de producción y el campo Ambiente. Es frecuente cambiar sólo el ambiente y seguir apuntando a la URL de pruebas: los documentos se certifican bien, pero contra el servidor equivocado y sin valor fiscal. Después de cambiar, emita una factura de prueba y verifique que el CUFE aparece en el portal de consulta de la DGI.
Token con caducidad (Digifact y PanaFacturas)
Los PAC REST no usan una credencial fija sino un token que caduca. Con esos proveedores aparece el botón Generar token y el campo Vencimiento del token. No hace falta estar pendiente: si al momento de enviar un documento el token ya venció, Odoo lo renueva solo antes de continuar. El botón sirve para la puesta en marcha y para comprobar que el usuario y la contraseña son correctos.
Configuraciones adicionales
| Opción | Efecto |
|---|---|
| Descripción del producto para FEL | Decide qué texto se envía como descripción de cada línea: el nombre del producto del catálogo o la descripción de línea tal como quedó escrita en la factura. Por defecto, la descripción de línea. |
| Publicar FEL con errores | Cambia lo que pasa cuando el PAC rechaza un documento. Desmarcado (recomendado al inicio): la validación se detiene con un error y la factura no se publica. Marcado: la factura se publica en Odoo con estado FEL Rechazado y el motivo queda registrado en la conversación, para reprocesarla después. |
En una tienda o un mostrador con mucho volumen, Publicar FEL con errores evita que un problema del PAC deje al cajero bloqueado; los documentos quedan en la lista Documentos con error y se reprocesan después. En una operación de facturación revisada una por una, es preferible dejarlo desmarcado para que nadie entregue al cliente una factura que la DGI no autorizó.
Valores por defecto
Estos campos rellenan automáticamente cada factura nueva. Bien configurados, el usuario que factura no tiene que tocar la pestaña FEL en el día a día:
| Campo | Qué controla |
|---|---|
| Naturaleza de operación predeterminada | Normalmente Venta. Véase la tabla completa en el capítulo 33. |
| Tipo de venta predeterminado | Normalmente Venta de negocios. |
| Método de pago | El diario de banco o efectivo cuya forma de pago FEL se enviará por defecto. Véase el capítulo 11. |
| Motivo de cancelación predeterminado | El texto que se propone al anular un documento. |
| Motivo de contingencia predeterminado | El texto de las contingencias que Odoo abre automáticamente. |
| Categoría CPBS del producto predeterminada | La clasificación que se usará en las líneas cuyo producto no tenga una propia. Configúrela siempre: sin categoría, la DGI rechaza el documento. |
7.Verificar la configuración y los folios
Dos botones que ahorran horas de ensayo y error.
Verificar la configuración de FEL
El botón Verificar la configuración de FEL, en el encabezado de la empresa, revisa de una sola pasada todo lo que hace falta para certificar y le dice exactamente qué falta. Distingue entre campos obligatorios (sin ellos no se puede emitir) y advertencias (se puede emitir, pero algo va a funcionar peor de lo esperado).
Esta misma validación se ejecuta automáticamente justo antes de cada envío al PAC. Por eso, si algo falta, el error aparece al validar la factura y no cuando el PAC responde: Odoo ni siquiera intenta la llamada.
Folios restantes
El botón Folios restantes (disponible en HKA, EBI y eFacturapty) consulta cuántos documentos le quedan por certificar. Devuelve la licencia, su vigencia, el ciclo actual y el consumo del ciclo:
Cuando se agotan, el PAC rechaza los envíos y no hay nada que configurar en Odoo para evitarlo: hay que comprar más folios al proveedor. Consúltelos al menos una vez al mes, y con más frecuencia si su consumo es alto.
8.Catálogos de la DGI
Corregimientos y categorías CPBS: dos listas que el módulo trae cargadas y que usted sólo consulta.
Corregimientos
En FE-DGI → Configuración → Configuración de corregimientos → Corregimientos está el catálogo completo: 628 corregimientos, cada uno con su código de ubicación, su distrito y su provincia.
provincia-distrito-corregimiento) es el que viaja al documento
electrónico como código de ubicación.Al elegir un corregimiento en un contacto o en la empresa, Odoo rellena solo el distrito correspondiente. Es una lista de referencia: no hay que crear registros nuevos.
Categorías CPBS
La DGI exige clasificar cada ítem facturado según el catálogo CPBS (Catálogo de Productos y Servicios, basado en UNSPSC). El módulo trae 421 categorías en FE-DGI → Configuración → Configuración de productos → Categorías UNSPSC.
Odoo busca en este orden: primero la categoría del producto de la línea; si el producto no tiene, usa la categoría por defecto de la empresa. Si no hay ninguna de las dos, el documento se envía sin clasificación y la DGI lo rechaza. Por eso conviene dejar siempre una categoría por defecto configurada, aunque sea genérica, mientras se termina de clasificar el catálogo de productos.
9.Diarios FEL: sucursal y CAFE
El diario es lo que decide si una factura se certifica o no, y con qué datos de sucursal sale.
En Odoo, el diario es el libro donde se registran las facturas. En la localización panameña cumple un segundo papel: representa el punto de facturación ante la DGI. Ahí se define el código de sucursal, el formato del CAFE y la numeración fiscal.
Abra FE-DGI → Configuración → Diario —que lista sólo los diarios con FEL activo— o vaya a Contabilidad → Configuración → Diarios y elija el de facturas de cliente. Luego abra la pestaña Configuración FEL de Panamá.
Los dos interruptores
| Campo | Qué hace |
|---|---|
| FEL Activo | Marca el diario como parte del sistema de facturación electrónica. Si está apagado, las facturas de ese diario son documentos internos de Odoo y nada se envía a la DGI. También es lo que hace aparecer la pestaña Panamá FEL en la factura. |
| Timbrar FEL | Es el valor por defecto del campo Timbrar FEL de cada factura nueva. Encendido, la factura se certifica al validarla; apagado, se publica sin certificar y se puede timbrar más tarde con el botón Procesar FEL. |
Si su empresa tiene varias sucursales o varias cajas que deben numerar por separado ante la DGI, cree un diario por cada punto de facturación. Cada uno lleva su propio código de sucursal y su propia secuencia de números fiscales, y así las series nunca se cruzan.
Configuración FEL
| Campo | Qué poner |
|---|---|
| Código de sucursal emisora | El código de sucursal que la DGI le asignó, normalmente 0000 para la casa matriz. Si se deja vacío, Odoo usa el código corto del diario, lo cual casi nunca es lo que quiere: llénelo siempre. |
| Tipo de documento por defecto | El tipo fiscal que se propondrá en las facturas de este diario; para ventas normales, Factura de operación interna. |
| Tipo de sucursal | Local comercial (venta al público) o Local B2B (venta a empresas). Determina cómo clasifica la DGI el punto de emisión. |
| Formato del CAFE | Cómo se imprime el comprobante: sin emisión de CAFE, o en impresora de tickets o papel carta. |
| Entrega del CAFE | Cómo llega al cliente: no se emite, en papel o como documento electrónico. |
| Envío del contenedor | Normal, o bien que el receptor exime al emisor de la obligación de enviarle el contenedor del documento. |
| Coordenadas | Latitud y longitud del establecimiento, en formato +8.9892,-79.52010. Se usan en Digifact y PanaFacturas; si se dejan vacías, el módulo envía las coordenadas del centro de la Ciudad de Panamá. |
Estos dos campos le declaran a la DGI cómo entrega usted el comprobante. Si imprime tickets en una tienda, declárelo; si sólo envía PDF por correo, declare documento electrónico. Declarar una cosa y hacer otra es una inconsistencia que puede aparecer en una fiscalización.
10.Tipos de documento y numeración
Nueve tipos fiscales, cada uno con su propio contador.
La DGI distingue nueve tipos de documento electrónico. En Odoo cada uno es un registro dentro del diario, con su propio código de punto de facturación y su propio número correlativo.
En la misma pestaña del diario, el botón Crear tipos de documento FEL los da de alta todos de una vez. Es lo primero que hay que hacer al configurar un diario nuevo.
| Código | Tipo de documento | Cuándo se usa |
|---|---|---|
01 | Factura de operación interna | La venta normal dentro de Panamá. Es el caso mayoritario. |
02 | Factura de importación | Operaciones de importación. |
03 | Factura de exportación | Ventas a un receptor en el extranjero. Véase el capítulo 21. |
04 | Nota de crédito referente a una FE | Corrige a la baja una factura electrónica concreta. Exige referenciar el CUFE original. |
05 | Nota de débito referente a una FE | Corrige al alza una factura electrónica concreta. También exige la referencia. |
06 | Nota de crédito genérica | Ajuste a la baja sin referirse a una factura electrónica específica. |
07 | Nota de débito genérica | Ajuste al alza sin referencia. |
08 | Factura de zona franca | Operaciones bajo régimen de zona franca. |
09 | Reembolso | Documentos de reembolso. |
Código y número
| Campo | Qué significa |
|---|---|
| Código | Es el punto de facturación fiscal que la DGI le asignó a esa serie: tres dígitos, por ejemplo 007. Al crear los tipos, Odoo lo rellena con el código corto del diario; hay que corregirlo con el que le dio la DGI. |
| Número actual de la secuencia | El último número usado. Antes de emitir, Odoo lo incrementa en uno y lo rellena a diez dígitos: el 1 se convierte en 0000000001. |
| Activo | Sólo puede haber un tipo activo por diario y por tipo de documento. Para empezar una serie nueva —por ejemplo, tras un cambio autorizado de punto de facturación— desactive el registro anterior y cree uno nuevo. |
El número de secuencia es editable a propósito, para poder continuar una numeración que venía de otro sistema. Pero si lo baja por debajo de un número ya emitido, el PAC rechazará el siguiente documento con el mensaje «El documento está duplicado». Si necesita retomar una numeración, ponga el contador por encima del último número certificado, nunca por debajo.
El botón que crea los tipos de documento los nombra en inglés (Facturas de cliente - Internal bill). Es sólo el nombre visible del registro y puede renombrarlo sin ningún efecto sobre la certificación: lo que viaja a la DGI es el código, no el nombre.
11.Formas de pago
Cómo se le dice a la DGI si le pagaron en efectivo, con tarjeta o a crédito.
Cada documento electrónico declara la forma en que se pagó. En Odoo eso se configura en los diarios de banco y efectivo: cada diario lleva asociada una forma de pago FEL, y la factura hereda la del diario que se le indique.
| Código | Forma de pago | Diario típico |
|---|---|---|
01 | Crédito | Un diario «Crédito» para las ventas a plazo. Es el valor por defecto si no se indica otro. |
02 | Efectivo | Caja. |
03 | Tarjeta de crédito | El banco adquirente. |
04 | Tarjeta de débito | El banco adquirente. |
05 | Tarjeta de fidelización | Programas de puntos. |
06 | Vale | Vales de consumo. |
07 | Gift card | Tarjetas de regalo. |
08 | Transferencia o depósito bancario | El banco principal. |
99 | Otro | Requiere describir la forma de pago en texto libre. |
La forma más limpia de trabajar es crear un diario por cada forma de pago que use realmente —Efectivo, Tarjeta, Transferencia, Crédito— y asignar a cada uno su código FEL. Después, en la empresa, elija como Método de pago por defecto el que más use. La factura seguirá permitiendo cambiarlo caso por caso.
12.Contactos y tipos de receptor
La DGI reconoce cuatro clases de receptor, y cada una exige datos distintos.
La ficha del contacto es donde más errores de certificación se originan, porque lo que se exige depende de qué tipo de receptor sea. Al abrir un contacto verá un interruptor FE Panamá activa y, junto al RUC, el campo DV.
Los cuatro tipos de receptor
| Código | Tipo | Qué es obligatorio |
|---|---|---|
01 | Contribuyente | RUC, DV, tipo de contribuyente, tipo de identificación, nombre, corregimiento y distrito. Es el caso de las ventas entre empresas. |
02 | Consumidor final | Tipo de identificación, número de identificación y nombre. No necesita corregimiento. |
03 | Gobierno | Los mismos datos que un contribuyente, con el tipo de identificación de gobierno. |
04 | Extranjero | Tipo de identificación (pasaporte, identificación extranjera u otro), número de identificación, nombre y un país distinto de Panamá. No lleva RUC ni DV. |
El tipo de identificación se filtra solo
Al cambiar el tipo de receptor, Odoo restringe la lista de tipos de identificación a los que la DGI admite para esa clase y selecciona el primero. No hace falta memorizar las combinaciones: si el desplegable no ofrece la opción que busca, es que ese tipo de identificación no corresponde al tipo de receptor elegido.
Verificar la configuración del contacto
El botón Verificar la configuración de FEL del contacto hace la misma revisión que el de la empresa, pero aplicando las reglas del tipo de receptor. Es la forma rápida de saber por qué una factura no se deja certificar.
Aunque el consumidor final no necesita RUC, la validación sí exige un número de identificación (la cédula). Si mantiene un contacto genérico «Consumidor Final» para el mostrador, déjele un número de identificación capturado; de lo contrario cada venta a ese contacto se detendrá pidiéndolo.
El interruptor FE Panamá activa desactiva toda la validación FEL para ese contacto. Es útil para proveedores, empleados o contactos internos que nunca van a recibir una factura electrónica: evita que aparezcan campos y avisos que no vienen al caso.
13.Validación de RUC y DV
Cómo obtener el dígito verificador y la razón social directamente de la DGI.
El botón Validar RUC del contacto consulta el RUC contra la DGI a través del PAC y escribe en la ficha lo que la autoridad devuelve:
- El RUC normalizado, tal como lo tiene registrado la DGI.
- La razón social oficial, que sustituye al nombre que usted hubiera escrito.
- El DV, siempre a dos dígitos.
- El tipo de contribuyente: persona natural o jurídica.
- Si el RUC está afiliado al SFE o no.
Si la consulta falla con el tipo de contribuyente indicado, Odoo la reintenta automáticamente con el otro (natural ↔ jurídica) antes de darse por vencido. Por eso no importa demasiado acertar el tipo antes de validar: la propia consulta lo corrige.
El asistente de validación
Existe además un asistente independiente para consultar un RUC sin abrir su ficha:
Validación al crear el contacto
Los usuarios del grupo FEL RUC Validator User tienen un comportamiento adicional: al crear un contacto de tipo contribuyente o gobierno con identificación RUC, Odoo valida el RUC automáticamente y rellena razón social, DV y tipo de contribuyente. Esto permite un flujo muy rápido en mostrador: se escribe el RUC en el campo de nombre y Odoo completa la ficha.
La casilla Ignorar verificación PAC de la pestaña FEL del contacto salta esa validación automática. Sirve para importaciones masivas de contactos y para dar de alta contactos que no son contribuyentes panameños. Los usuarios del sistema se crean siempre con esta casilla marcada, para que crear un usuario nunca dispare una llamada al PAC.
Cuando la consulta devuelve que el RUC no está afiliado a la facturación electrónica, la verificación de configuración lo muestra como advertencia. Se puede facturar igual, pero conviene saberlo: ese receptor no recibirá el documento por los canales del sistema y habrá que entregarle el CAFE.
14.Productos: CPBS, medicinas y vehículos
Lo que hay que clasificar y los dos casos especiales que la DGI trata aparte.
En la ficha del producto aparece una pestaña Configuración FEL de Panamá.
| Campo | Qué hace |
|---|---|
| Excluir de la factura | La línea que use este producto no se envía a la DGI y su importe se resta del total del documento electrónico. Además, Odoo le quita los impuestos al validar. Sirve para conceptos que no forman parte de la operación gravada, como una propina sugerida. |
| Categoría CPBS de Panamá | La clasificación del catálogo de la DGI. Si se deja vacía, se usa la de la empresa. |
| Información del artículo | Texto libre que se envía junto con la línea, para detalles que la descripción no cubre. |
| Tipo de producto de Panamá | Bien o servicio (lo normal), Medicina o Vehículo. Los dos últimos activan bloques de datos adicionales que la DGI exige. |
Medicinas
Si el producto es Medicina, el documento electrónico debe incluir los números de lote y la cantidad entregada de cada uno. Odoo los toma automáticamente de los movimientos de inventario asociados a la línea de factura, así que el requisito es que la venta se despache desde inventario con lotes; no hay nada que capturar a mano en la factura.
Vehículos
Si el producto es Vehículo, se despliega un bloque con los veinte datos que la DGI pide para la venta de automotores:
Como el chasis y el número de motor son únicos de cada unidad, en la práctica cada vehículo se da de alta como un producto propio. No es un catálogo de modelos: es un catálogo de unidades.
15.Permisos y grupos de usuario
Cuatro grupos que separan quién configura, quién anula y quién ve las contraseñas.
| Grupo | Qué permite |
|---|---|
| FEL User | Ver las pestañas FEL en empresa, diarios, contactos y productos, y anular documentos con el asistente. Es el grupo del personal de facturación. |
| FEL Manager | Todo lo anterior más el acceso al menú FE-DGI completo: bitácora de peticiones API y sesiones de contingencia. Incluye implícitamente a FEL User. |
| FEL RUC Validator User | Activa la validación automática de RUC al crear contactos. Se le da a quien da de alta clientes. |
| FEL Password User | Permite ver el campo Token Password de la empresa. Es un grupo aparte, deliberadamente: cualquiera puede necesitar configurar el PAC, pero muy pocos deben poder leer la contraseña. |
Para el punto de venta hay dos permisos adicionales, que se conceden por usuario en la pestaña FEL Panamá de su ficha (véase el capítulo 30).
16.Emitir una factura paso a paso
El flujo completo, desde el borrador hasta el CUFE, con lo que ocurre por dentro en cada paso.
La buena noticia es que, con la configuración hecha, facturar en Panamá es exactamente igual que facturar en cualquier Odoo: se crea la factura, se valida y ya está. La certificación ocurre dentro de la validación, sin pasos adicionales.
1. Crear la factura
Contabilidad → Clientes → Facturas → Nuevo. Elija el cliente, el diario con FEL activo y las líneas.
Al elegir el diario, Odoo rellena solo el tipo de documento y el interruptor Timbrar FEL. Al elegir el cliente, ajusta el destino de la operación: si el contacto tiene un país distinto de Panamá, lo pone en Extranjero.
2. Revisar la pestaña Panamá FEL
En la mayoría de las facturas no hay que tocar nada: los valores vienen de la empresa y del diario. Se revisa cuando el documento no es una venta interna normal —una exportación, un traslado, una factura de zona franca— o cuando hay que escribir información de interés para el receptor.
3. Confirmar
Al pulsar Confirmar, y sólo si el diario tiene FEL activo y el interruptor Timbrar FEL está encendido, Odoo hace esto en orden:
- Asigna el número fiscal. Toma el siguiente número del tipo de documento y lo escribe con diez dígitos. Este número ya no cambia.
- Depura los impuestos. Quita los impuestos de las líneas con importe negativo (los descuentos se declaran aparte, no como líneas gravadas) y de las líneas cuyo producto está marcado como excluido.
- Publica el asiento contable. La factura pasa a Registrado con normalidad.
- Valida la configuración de la empresa y del cliente. Si algo falta, se detiene aquí con un mensaje que dice exactamente qué campo es.
- Arma el documento y lo envía al PAC.
- Guarda la respuesta: CUFE, URL del QR, fecha de recepción de la DGI y protocolo de autorización. Genera la imagen del QR y el importe total en letras.
4. El resultado
Tres señales: el estado Panamá FEL Estado pasa a Aceptada, aparece el CUFE en la pestaña FEL y se dibuja el código QR en la cabecera. Si falta cualquiera de las tres, el documento no está certificado.
Facturar sin timbrar, y timbrar después
Si apaga Timbrar FEL antes de confirmar, la factura se publica contablemente pero no se envía a la DGI. Después, cuando quiera certificarla, use el botón Procesar FEL que aparece en la propia pestaña. Es útil cuando se registran facturas de un periodo anterior o cuando el PAC está caído y no quiere bloquear la contabilidad.
La lista de facturas
17.La pestaña Panamá FEL, campo por campo
Los cuatro bloques de la pestaña y qué significa cada dato.
Información de factura FEL
Es la parte editable, y sólo mientras la factura está en borrador.
| Campo | Qué significa |
|---|---|
| Timbrar FEL | Si esta factura debe certificarse al confirmarla. |
| Tipo de Emisión FEL de Panamá | Cuatro valores. 01 Autorización previa, funcionamiento normal es el caso habitual: se pide autorización antes de entregar el documento. 02 es lo mismo en contingencia. 03 y 04 son autorización posterior: el documento se entrega y se autoriza después, que es como funciona la emisión offline. |
| Tipo de Documento | Cuál de los nueve tipos fiscales es. Determina también qué número correlativo se usa. |
| Contingencia | Sólo visible si la factura se emitió dentro de una contingencia; enlaza a la sesión correspondiente. |
| Operación Naturaleza | Qué clase de operación es: venta, exportación, traslado, devolución, consignación, remesa, entrega gratuita, compra o importación. |
| Destino Operación | Panamá o Extranjero. Se ajusta solo según el país del cliente. En Extranjero se añaden al documento las condiciones de entrega y la moneda. |
| Tipo de Venta | Venta de negocios, venta de activo fijo, venta de bien inmueble o factura de servicio. |
Fuera de la pestaña, en la cabecera de la factura, hay dos campos más que también viajan al documento: el Método de Pago y, en la pestaña Otra información, la Información de interés: un texto libre que la DGI transporta al receptor.
Certificación FEL
Este bloque aparece cuando ya hay CUFE y es de sólo lectura. Es el acuse de la DGI.
| Campo | Qué es |
|---|---|
| Fecha de Emisión | La fecha y hora exactas que se declararon, en hora de Panamá. Si la fecha de factura es hoy, se usa el instante del envío; si es una fecha pasada, se usa esa fecha a las 00:00. |
| Código de Documento | El punto de facturación fiscal (tres dígitos). |
| Número de Documento | El correlativo de diez dígitos. |
| Panamá FEL CUFE Formateado | El CUFE en grupos de cuatro caracteres, para poder leerlo y dictarlo sin equivocarse. |
| URL del Código QR | La dirección de consulta pública del documento en el portal de la DGI. Es lo que codifica el QR impreso. |
| Fecha Recepción | Cuándo recibió la DGI el documento. |
Acciones FEL
Referencias de facturas FEL
El último bloque enlaza esta factura con otras facturas electrónicas ya certificadas. Es obligatorio en notas de crédito y de débito referenciadas (tipos 04 y 05), y es lo que permite a la DGI saber qué documento se está corrigiendo.
Los botones de la barra superior
| Botón | Cuándo aparece |
|---|---|
| Nota de Débito Referenciada | En facturas registradas que no sean notas de crédito. Abre una factura nueva de tipo 05 ya enlazada a esta. |
| Procesar FEL | Cuando el estado es Rechazado, para reintentar el envío. |
| Descargar PDF FEL | Cuando hay CUFE y el PAC ofrece la descarga. |
| Anular FEL | Sólo mientras el documento no está registrado. La anulación de documentos ya registrados se hace desde la lista; véase el capítulo 22. |
18.Qué viaja al PAC
Un mapa de dónde sale cada dato del documento electrónico. Útil cuando el PAC devuelve un error sobre un campo concreto.
Cuando el PAC rechaza un documento, el mensaje se refiere al nombre técnico del campo, no a la etiqueta que usted ve en Odoo. Esta tabla traduce entre ambos mundos.
| Bloque del documento | Dato | De dónde sale en Odoo |
|---|---|---|
| Sucursal emisora | Código de sucursal | Diario → Código de sucursal emisora |
| Tipo de sucursal | Diario → Tipo de sucursal | |
| Coordenadas | Diario → Coordenadas | |
| Dirección del emisor | Empresa → dirección, corregimiento, distrito, provincia | |
| Datos de la transacción | Tipo de emisión | Factura → Tipo de Emisión FEL |
| Tipo de documento | Factura → Tipo de Documento | |
| Número y punto de facturación | Tipo de documento del diario (secuencia y código) | |
| Naturaleza, destino y tipo de venta | Factura → pestaña Panamá FEL | |
| Formato y entrega del CAFE, contenedor | Diario → Configuración FEL | |
| Fecha de emisión | Factura → fecha de factura, convertida a hora de Panamá | |
| Información de interés | Factura → Otra información | |
| Cliente | Tipo de cliente FE | Contacto → Tipo de receptor |
| Razón social | Contacto → Razón social FE, o el nombre si está vacía | |
| RUC, DV y tipo de contribuyente | Contacto → RUC, DV, tipo de contribuyente | |
| Dirección, corregimiento, distrito, provincia | Contacto → dirección | |
| Hasta tres correos electrónicos | Contacto → correo, separando por comas | |
| Teléfono | Contacto → teléfono, normalizado a formato panameño | |
| Ítems | Descripción | Línea de factura, o nombre del producto según la opción de la empresa |
| Código de producto | Producto → referencia interna | |
| Cantidad y precio unitario | Línea de factura | |
| Descuento unitario | Calculado a partir del % de descuento de la línea | |
| Tasa y valor de ITBMS | Impuesto de la línea: 7 %→01, 10 %→02, 15 %→03, cualquier otro→00 | |
| Código CPBS y CPBS abreviado | Producto → categoría CPBS; si no tiene, la de la empresa | |
| Lotes / datos del vehículo | Producto → tipo de producto Medicina o Vehículo | |
| Totales | Total neto, ITBMS y total facturado | Totales de la factura, restando las líneas excluidas |
| Descuentos y bonificaciones | Las líneas con importe negativo se declaran como descuentos, no como ítems | |
| Número de ítems | Líneas de producto con cantidad y precio positivos, sin contar las excluidas | |
| Forma de pago | Factura → Método de Pago → forma de pago FEL del diario | |
| Total en letras | Lo calcula Odoo tras certificar, para imprimirlo en el CAFE |
Si en la factura hay líneas negativas (un descuento global, una bonificación), Odoo no las envía como ítems: las agrupa en el bloque de descuentos y bonificaciones del documento, con su descripción limpia de caracteres especiales, y ajusta los totales. Por eso también les quita los impuestos al confirmar: el descuento no es una venta gravada negativa.
19.Notas de crédito
Cómo corregir a la baja una factura ya certificada.
Una vez que un documento tiene CUFE ya no se puede modificar. Si hay que devolver mercancía,
corregir un precio a la baja o anular parcialmente una operación, el instrumento es la nota de
crédito referente a una factura electrónica (tipo 04).
- Abra la factura certificada y pulse Nota de crédito.
- Escriba el motivo y la fecha de reversión, y confirme el diario.
- Odoo crea la nota con el tipo de documento 04 ya seleccionado y con la factura original cargada en Referencias de facturas FEL.
- Ajuste las líneas: si la devolución es parcial, borre las que no correspondan y corrija las cantidades.
- Confirme. La nota se certifica igual que una factura y recibe su propio CUFE.
0000000001 del tipo 04 es independiente del de las facturas.Si intenta certificar una nota de tipo 04 o 05 sin ninguna factura en Referencias de facturas FEL, Odoo se detiene con el mensaje «La nota de crédito o débito debe tener referencia a la(s) factura(s) original(es)». Sólo se aceptan como referencia documentos que ya tengan CUFE.
Son cosas distintas y no intercambiables. La anulación deja el documento sin efecto ante la DGI y sólo procede dentro de los plazos que la normativa permite. La nota de crédito es un documento nuevo que corrige uno anterior y siempre es válida. Ante la duda, y sobre todo si ha pasado tiempo o el periodo ya se declaró, use nota de crédito.
20.Notas de débito referenciadas
Cuando hay que cobrar de más sobre una factura ya emitida.
La nota de débito referente a una factura electrónica (tipo 05) es el reflejo de
la nota de crédito: aumenta el importe de una operación ya facturada. Se usa para fletes que no se
incluyeron, intereses de mora, ajustes de precio al alza o cargos posteriores.
- Abra la factura original y pulse Nota de Débito Referenciada.
- Odoo abre una factura nueva con el mismo cliente y el mismo diario, con el tipo de documento 05 y la factura original ya referenciada.
- Capture las líneas del cargo adicional.
- Confirme. Se certifica y recibe su CUFE.
Cuando el ajuste no corresponde a una factura electrónica concreta —por ejemplo, un ajuste sobre documentos preelectrónicos— existen la nota de crédito genérica (06) y la nota de débito genérica (07), que no exigen referencia. Se seleccionan a mano en el campo Tipo de Documento de la pestaña FEL.
21.Facturas de exportación
Qué cambia cuando el receptor está fuera de Panamá.
Para exportar hacen falta tres cosas, y sólo tres:
- Que el contacto sea de tipo receptor Extranjero, con pasaporte o identificación extranjera y un país distinto de Panamá.
- Que el tipo de documento de la factura sea 03 Factura de exportación.
- Que el Destino Operación sea Extranjero —Odoo lo pone solo al elegir el cliente— y que la naturaleza sea Exportación.
Condiciones de entrega y moneda
Cuando el destino es extranjero, el documento incorpora un bloque adicional con:
- Las condiciones de entrega: se toman del incoterm de la factura. Si no hay
incoterm, Odoo envía
EXW. - La moneda de la operación.
- El tipo de cambio, sólo si la moneda no es USD ni PAB. Se toma la tasa vigente a la fecha de la factura.
Dejarlo vacío no da error: Odoo envía EXW por defecto. Pero EXW
(en fábrica) rara vez es la condición real de una exportación, y ese dato queda declarado ante la
DGI. Capture el incoterm que corresponda en la pestaña Otra información.
22.Anulación ante la DGI
Cómo dejar sin efecto un documento certificado, y qué arrastra consigo.
Anular no es borrar. Es enviarle a la DGI una solicitud de anulación de un documento existente, identificándolo por su CUFE y explicando el motivo. Si la DGI la acepta, el documento queda registrado como anulado y ambos —usted y la autoridad— conservan el rastro.
Cómo se hace
- Vaya a la lista de facturas y marque la casilla del documento (o de varios).
- Abra el menú Acciones y elija Cancelar FE.
- Escriba el motivo de la anulación. Viene propuesto el motivo por defecto de la empresa.
- Confirme.
Qué hace Odoo al anular
La anulación no se limita a marcar un estado: deshace toda la operación en Odoo, en este orden:
- Envía la anulación al PAC y espera su confirmación. Si el PAC no la procesa, no se toca nada en Odoo y se muestra el error.
- Si el documento venía de una orden de punto de venta, anula también esa orden.
- Rompe las conciliaciones y cancela los pagos asociados.
- Elimina los apuntes analíticos.
- Pasa la factura a Cancelado.
Una vez que la DGI acepta la anulación, no hay forma de deshacerla: el CUFE queda anulado para siempre y hay que emitir un documento nuevo. Además, la anulación en Odoo cancela los pagos que estuvieran aplicados a la factura, así que revise antes si esos pagos están conciliados con el banco.
La normativa panameña limita el plazo para anular una factura electrónica. Odoo enviará la solicitud igualmente; es el PAC quien devuelve el rechazo si el plazo venció. Cuando eso ocurra, el camino correcto es una nota de crédito.
23.Documentos rechazados y reproceso
Qué hacer cuando el PAC dice que no.
Si la empresa tiene activada la opción Publicar FEL con errores, un rechazo no detiene la validación: la factura se publica con estado FEL Rechazado y el motivo exacto del PAC queda escrito en la conversación del documento.
Cómo reprocesar
- Vaya a FE-DGI → Documentos electrónicos → Documentos con error para verlos todos juntos.
- Lea el motivo en la conversación de cada uno.
- Corrija la causa: casi siempre está en la ficha del cliente, en el producto o en el número de documento.
- Pulse Procesar FEL, en la barra superior o directamente desde la lista.
Un documento rechazado ya consumió su número fiscal, pero no llegó a la DGI. Si decide no reprocesarlo, no lo deje publicado: debe cancelarse en Odoo, para que su contabilidad no registre una venta que fiscalmente no existe.
Vigilancia diaria
Revisar Documentos con error debería ser parte del cierre del día. Un documento rechazado que nadie mira es una venta registrada en Odoo que la DGI nunca supo que existió, y esa diferencia sólo crece con el tiempo.
24.Contingencia y emisión offline
Qué hacer cuando el PAC o internet no responden.
La normativa panameña prevé que un contribuyente pueda seguir facturando cuando no logra comunicarse con el sistema. A eso se le llama contingencia, y consiste en emitir el documento con autorización posterior: se entrega al cliente y se transmite a la DGI cuando se restablece la comunicación.
Abrir una contingencia
- Abra el diario, pestaña Configuración FEL de Panamá.
- Pulse Crear contingencia FEL.
- Escriba el motivo. Viene propuesto el motivo por defecto de la empresa.
Mientras la contingencia esté abierta, las facturas de ese diario se emiten dentro de ella y quedan enlazadas a la sesión. En FE-DGI → Sesiones de contingencia se ven todas, abiertas y cerradas, con los documentos que abarcó cada una.
Cerrar la contingencia
Se cierra a mano con el botón Cerrar contingencia FEL activa del diario, o se cierra sola: la tarea programada Close Old Contingencies cierra cada hora las contingencias que llevan más de 24 horas abiertas. Es una salvaguarda para que nadie se quede facturando indefinidamente en un modo que debería ser excepcional.
Subir los documentos pendientes
La tarea Contingency Process reintenta cada diez minutos enviar a la DGI todos los documentos que quedaron en estado . No hay que hacer nada manualmente: en cuanto vuelve la comunicación, se van certificando solos y pasan a Aceptada.
La utilidad offline
Para operaciones que no pueden detenerse —típicamente cajas de tienda— HKA, EBI y eFacturapty ofrecen una utilidad offline: un programa en Java que se instala en el equipo local, genera el CUFE sin conexión y guarda el documento para subirlo después.
Se activa en la empresa, pestaña Configuración FEL de Panamá, bloque Configuración de la utilidad offline de PAC:
| Campo | Qué es |
|---|---|
| Disponible herramienta offline | Activa el modo offline. |
| Ruta de la utilidad offline | El directorio del servidor donde está instalado Pa_UsoServicios.jar. |
| Ruta de pendientes | El directorio donde se escriben los documentos generados sin conexión, a la espera de subirse. |
| Forzar certificación offline para consumidor final | Hace que todas las ventas a consumidor final se emitan por la vía offline, aunque haya conexión. Es el modo habitual en tiendas con alto volumen: el cliente nunca espera a que responda el PAC. |
La tarea programada Send Offline Requests sube cada hora los documentos pendientes. Odoo registra el resultado de cada intento en la petición API correspondiente, incluida la respuesta literal del programa Java.
El servidor de Odoo debe tener Java instalado y acceso de lectura y escritura a los dos directorios. Como el programa se ejecuta en el propio servidor, esta modalidad no funciona en alojamientos donde no se pueden ejecutar procesos externos.
25.Consultas al PAC
Estado del documento, PDF y XML oficiales, envío por correo y rastreo.
Desde la pestaña FEL de cualquier documento certificado, el bloque Acciones FEL permite preguntarle al PAC por ese documento. Estas consultas no modifican nada: sólo traen información.
Estado del documento
Pregunta a la DGI cómo está registrado el documento. Devuelve el CUFE, las fechas de emisión y recepción, el estado y el mensaje de la autoridad.
Para resolver dudas: si un documento quedó con CUFE pero no está seguro de que llegara, esta consulta es la fuente de verdad. Además, si el estado en Odoo era Rechazado pero la DGI responde Autorizada, al volver a procesar el documento Odoo lo corrige solo y lo pasa a Aceptada sin emitir nada nuevo.
Descargar PDF y XML
Descargar PDF y Descargar XML traen del PAC los archivos oficiales del documento y los adjuntan a la factura. El XML es el documento fiscal propiamente dicho; el PDF es la representación que genera el proveedor.
Enviar por correo desde el PAC
En HKA y EBI, el botón Enviar correo por PAC hace que sea el proveedor quien envíe el documento al cliente, no su servidor de correo. Tiene una ventaja práctica: la entrega queda registrada del lado del PAC y se puede auditar con el botón Correo enviado por PAC, que devuelve el destinatario, la fecha, el estado del envío y el identificador del mensaje.
Qué ofrece cada PAC
| Acción | HKA | EBI | eFacturapty | Digifact | PanaFacturas |
|---|---|---|---|---|---|
| Enviar documento | Sí | Sí | Sí | Sí | Sí |
| Consultar RUC / DV | Sí | Sí | Sí | Sí | Sí |
| Anular documento | Sí | Sí | Sí | — | Sí |
| Estado del documento | Sí | Sí | — | Sí | — |
| Descargar PDF / XML | Sí | Sí | Sí | Sí | — |
| Folios restantes | Sí | Sí | Sí | — | — |
| Correo por el PAC y rastreo | Sí | Sí | — | — | — |
| Utilidad offline | Sí | Sí | Sí | — | — |
26.Bitácora de peticiones API
Todo lo que Odoo le dijo al PAC y todo lo que el PAC contestó.
FE-DGI → Peticiones API → FEL Api Requests guarda una fila por cada llamada: envíos de documentos, consultas de RUC, descargas, anulaciones, consultas de folios y generaciones de token.
Al abrir una petición se ven las dos mitades de la conversación: lo que se envió y lo que se recibió.
| Estado | Qué significa |
|---|---|
| Borrador | La petición se creó pero aún no salió. |
| En cola | Está en proceso de envío. |
| Enviado | Salió y se recibió respuesta, pendiente de interpretar. |
| Hecho | El PAC respondió con código de éxito. |
| Error | El PAC devolvió un error. El motivo está en la respuesta. |
Cuando un documento no se certifica y el mensaje en pantalla no basta, abra la petición correspondiente: ahí está el contenido literal que se envió y la respuesta completa del proveedor. Es también lo que le pedirá el soporte del PAC cuando abra un caso.
El contenido enviado a los PAC SOAP incluye el token y la contraseña de la empresa. Por eso el menú está restringido al grupo FEL Manager. Téngalo en cuenta antes de exportar registros o de compartir capturas de esta pantalla.
27.La factura impresa (CAFE)
Cómo se ve el comprobante que recibe el cliente y qué se puede personalizar.
El módulo trae once plantillas de factura preparadas para el CAFE panameño. Todas imprimen el encabezado que exige la DGI, el CUFE, el protocolo de autorización, la referencia al certificador y el código QR de consulta.
Elegir y personalizar la plantilla
La plantilla predeterminada se elige en la empresa, pestaña Configuración de Factura FEL de Panamá, o desde FE-DGI → Configuración → Plantilla de factura.
| Grupo de opciones | Qué controla |
|---|---|
| Configuración predeterminada | La plantilla base y el logotipo del informe. El selector de configuración de plantilla estándar aplica de golpe una paleta de colores completa (Bold, Clásico, Corporativo, Moderno, Pulido, Vintage). |
| Marca de agua | Un logotipo, un texto o el estado del documento, con su color y tamaño. |
| Colores | Color base, texto, nombre y dirección de la empresa y del cliente, y las filas pares e impares de la tabla. |
| Otras configuraciones | Mostrar la descripción del producto, la imagen del producto, el importe en letras, las notas, el código de barras, el código QR de la FEL y su tamaño, y el logotipo de la DGI. |
| Columnas | Si se muestran las columnas de impuesto y descuento, el código del cliente, la referencia interna, la orden de origen y su fecha, y la fecha de vencimiento. |
| Tipografía y pie | Fuente y tamaño del informe, pie estándar o multicolumna con logotipo, y firma. |
Cada contacto puede tener su propia plantilla, en el campo Plantilla de factura de su ficha, y cada factura puede sobrescribirla. La prioridad es: la de la factura, si no la del cliente, si no la de la empresa. Es útil cuando un cliente corporativo exige un formato concreto.
Son dos casillas fáciles de pasar por alto: Mostrar QR FEL y Mostrar logotipo DGI. Sin la primera, el cliente no puede consultar su factura en el portal de la DGI escaneando el comprobante.
28.Punto de venta: configuración
Lo que hay que dejar listo para que cada ticket salga certificado.
El módulo pos_multipac_felpa convierte cada venta de caja en una factura electrónica
certificada, sin que el cajero tenga que salir de la pantalla de cobro. Para que funcione hacen falta
tres cosas.
1. Que el diario de facturación del PDV tenga FEL activo
En los ajustes del punto de venta, el diario de facturación debe ser un diario con FEL Activo encendido y sus tipos de documento creados. Es lo que enciende toda la funcionalidad: si ese diario no tiene FEL, el punto de venta se comporta como un Odoo normal.
2. Los métodos de pago del PDV
Cada método de pago del punto de venta debe apuntar a un diario que tenga configurada su forma de pago FEL (capítulo 11). Así, cuando el cajero cobra en efectivo, el documento declara efectivo; cuando cobra con tarjeta, declara tarjeta.
3. Las opciones FEL del punto de venta
En Ajustes → Punto de venta, con la tienda seleccionada arriba, hay tres bloques nuevos.
| Opción | Qué hace |
|---|---|
| Mostrar logo | Imprime el logotipo de la empresa en el ticket. |
| Tamaño QR | Tamaño en píxeles del código QR del ticket. 280 funciona bien en impresoras de 80 mm. |
| Facturación automática | Marca sola la casilla Recibo/Factura al entrar en la pantalla de pago. Actívela: es lo que hace que el cajero no tenga que acordarse de pedir factura en cada venta. |
| Deshabilitar descarga de PDF | Evita que Odoo genere el PDF de la factura al cerrar cada venta. Acelera notablemente el cobro; el ticket impreso ya cumple la función del CAFE. |
| Cliente por defecto | El contacto que se asigna automáticamente a la orden si el cajero no eligió ninguno. Normalmente el «Consumidor Final». |
| Logo personalizado | Usa el logotipo propio del punto de venta en lugar del de la empresa (se carga en la ficha del PDV). |
| Validar CUFE en sesión | Impide cerrar la sesión de caja si alguna venta facturada se quedó sin CUFE. Véase el capítulo 31. |
| Forzar devolución hacia pago directamente | Tras iniciar una devolución, lleva al cajero directamente a la pantalla de pago. |
| Opción | Qué hace al anular un ticket |
|---|---|
| Cancelar movimiento de inventario | Cancela el albarán y devuelve el inventario reservado. |
| Cancelar pago | Cancela y elimina los pagos registrados en la orden. |
| Cancelar orden | Pasa la orden del PDV al estado cancelado. |
Lo normal es dejar los tres activados: una anulación ante la DGI debe deshacer también el inventario y el cobro.
Opciones offline
| Opción | Qué hace |
|---|---|
| Usar offline local | Habilita la facturación contra una aplicación offline instalada en la propia caja. |
| Forzar offline para consumidor final | Emite siempre por la vía offline las ventas a consumidor final, aunque haya internet. Evita que el cliente espere la respuesta del PAC. |
| Tipo de documento | El tipo fiscal que usará la emisión offline. |
| URL offline local | La dirección de la aplicación offline, normalmente http://localhost:5000. Al abrir la sesión, el punto de venta comprueba si responde. |
Sólo en cajas con volumen alto o con conexión poco fiable. Añade una pieza más que mantener —la aplicación local en cada caja— a cambio de que la venta no dependa nunca de la latencia del PAC. Si su tienda tiene buena conexión, la emisión en línea es más simple y más fácil de auditar.
29.Punto de venta: operación diaria
Una venta completa, desde abrir la caja hasta entregar el ticket con su CUFE.
1. Capturar la venta
2. Elegir el cliente
En Panamá toda venta facturada necesita un cliente. Si el cajero intenta validar sin seleccionarlo, aparece el aviso «No se pueden emitir facturas sin haber establecido un cliente en la venta». Por eso conviene configurar el cliente por defecto: para las ventas de mostrador, el cajero no tiene que elegir nada.
3. Cobrar
Qué comprueba Odoo antes de validar
Al pulsar Validar, y antes de cobrar nada, el punto de venta revisa:
- Que haya cliente seleccionado.
- Que si el cliente es contribuyente o gobierno, tenga RUC y DV. Si falta alguno, se detiene indicando cuál.
- Que si el cliente es contribuyente o gobierno, haya conexión: esas ventas no pueden emitirse offline.
- Que la orden tenga al menos un producto.
Justo antes de validar, la caja le pide al servidor el siguiente número fiscal. Si esa llamada falla —porque se cayó la red— y el modo offline está configurado, la venta se desvía automáticamente a la vía offline. Ese es el mecanismo que evita que una caída de internet detenga la caja.
4. El ticket
Si el ticket muestra Protocolo de Autorización y CUFE, la venta está certificada. Si esos datos faltan, la venta se registró en Odoo pero no llegó a la DGI y hay que revisarla antes de cerrar la sesión.
30.Punto de venta: anulaciones y devoluciones
Cómo deshacer una venta certificada desde la propia caja.
La lista de órdenes
El botón Órdenes lleva a la lista de ventas de la sesión. Al filtrar por Pagado, la lista muestra dos columnas propias de Panamá: el número fiscal y el CUFE.
Anular
El botón sólo se muestra si el usuario tiene el permiso Cancelar en punto de venta. Si además tiene Motivo de cancelación en punto de venta, se le pedirá escribir el motivo:
Al confirmar, Odoo envía la anulación a la DGI y, según las opciones configuradas, cancela el albarán, los pagos y la orden. Al terminar muestra el aviso «Documento FEL anulado correctamente» y devuelve al cajero a la pantalla de productos.
Anular desde el punto de venta únicamente es posible mientras la sesión está abierta. Si la sesión ya se cerró, Odoo responde «Sólo es posible anular facturas de sesiones abiertas, por favor realice una nota de crédito». Después del cierre, la corrección se hace con una nota de crédito desde Contabilidad.
Devoluciones
Una devolución en el punto de venta se hace con el botón Reembolso de la lista de órdenes, como en cualquier Odoo. La diferencia panameña es que la orden de devolución genera una nota de crédito de tipo 04 enlazada automáticamente a la factura electrónica original, y se certifica ante la DGI como tal.
Use Anular FEL cuando la venta se hizo por error y todavía está la sesión abierta: no queda documento vivo. Use Reembolso cuando el cliente devuelve realmente la mercancía: queda la factura original y su nota de crédito, que es lo que la contabilidad y la DGI esperan ver.
31.Cierre de sesión y control de CUFE
La red de seguridad que impide cerrar la caja con ventas sin certificar.
Al cerrar una sesión de punto de venta con FEL activo, Odoo no revisa —como haría normalmente— que las facturas estén publicadas: revisa que todas tengan CUFE. Es una comprobación más estricta, y es la correcta: en Panamá una factura publicada sin CUFE es una venta que la DGI desconoce.
El comportamiento depende de la opción Validar CUFE en sesión:
| Opción | Qué ocurre si hay facturas sin CUFE |
|---|---|
| Activada | El cierre se bloquea con el mensaje «Las siguientes facturas no cuentan con CUFE» y la lista de las afectadas. Hay que resolverlas antes de cerrar. |
| Desactivada | La sesión se cierra, pero el mismo mensaje queda registrado en la conversación de la sesión para poder revisarlo después. |
Déjela activada. Bloquear un cierre es molesto una vez; descubrir semanas después que faltan facturas ante la DGI es mucho peor. Si el bloqueo aparece, vaya a FE-DGI → Documentos con error, reprocese lo que se pueda y cancele lo que no, y vuelva a cerrar.
32.Errores frecuentes
Los mensajes que más se ven y qué hacer con cada uno.
| Mensaje | Causa | Solución |
|---|---|---|
| Faltan campos obligatorios para la certificación FEL | Falta algún dato de la empresa. | Pulse Verificar la configuración de FEL en la empresa: la lista de campos que faltan aparece completa. |
| Datos del cliente incompletos para la certificación FEL | Falta algún dato del contacto según su tipo de receptor. | Abra el contacto y pulse Verificar la configuración de FEL. Lo más habitual: falta el DV, el corregimiento o el número de identificación. |
| El cliente debe tener un código de ubicación para emitir la factura | Un receptor contribuyente o gobierno sin corregimiento. | Asigne el corregimiento en la dirección del contacto. |
| El tipo de documento es obligatorio para registrar la factura | La factura no tiene tipo de documento FEL. | Elíjalo en la pestaña Panamá FEL. Para que se rellene solo, configure el tipo de documento por defecto del diario. |
| El documento está duplicado (código 102) | Ese número fiscal ya fue certificado. | Suba el contador del tipo de documento del diario por encima del último número usado y reprocese. |
| La nota de crédito o débito debe tener referencia a la(s) factura(s) original(es) | Nota de tipo 04 o 05 sin referencia. | Añada la factura original en Referencias de facturas FEL. Debe tener CUFE. |
| RUC no encontrado | La consulta a la DGI no devolvió resultados. | Revise el RUC carácter por carácter, incluidos los guiones. Odoo ya reintenta con los dos tipos de contribuyente, así que el problema está en el número. |
| El token de la empresa ha expirado | Digifact o PanaFacturas con token vencido. | Se renueva solo al enviar. Si persiste, pulse Generar token y revise usuario y contraseña. |
| Sólo es posible anular facturas de sesiones abiertas | Se intenta anular un ticket de una sesión ya cerrada. | Emita una nota de crédito desde Contabilidad. |
| Las siguientes facturas no cuentan con CUFE | Al cerrar la sesión del PDV hay ventas sin certificar. | Reprocéselas desde Documentos con error; cancele en Odoo las que no vayan a certificarse. |
| No se pueden emitir facturas sin haber establecido un cliente | Venta de PDV sin cliente. | Seleccione el cliente, o configure el cliente por defecto del punto de venta. |
| Clientes contribuyentes y gobiernos necesitan facturar con internet | Se intenta emitir offline a un contribuyente. | Sólo el consumidor final puede emitirse offline. Espere a que vuelva la conexión. |
| La ruta de la utilidad offline no está configurada | Modo offline activo sin rutas. | Complete las dos rutas en la empresa, y verifique que el servidor tiene Java y permisos sobre esos directorios. |
Cuando el mensaje no basta
- Abra FE-DGI → Peticiones API y busque la última petición del documento.
- Lea la pestaña Respuesta: ahí está el mensaje literal y el código del PAC.
- Compare la pestaña Petición con la tabla del capítulo 18 para localizar el campo que el PAC señala.
- Si el problema es del proveedor, abra el caso adjuntando exactamente esas dos pestañas.
33.Referencia de catálogos
Todos los códigos que usa el módulo, en un solo lugar.
Estados FEL del documento
| Estado | Significado |
|---|---|
| Borrador | Aún no se ha intentado certificar. |
| Aceptada | Certificada por la DGI. Tiene CUFE. |
| Rechazado | El PAC devolvió un error. No tiene CUFE. |
| Emitida sin conexión; pendiente de transmitir. | |
| Cancelado | Anulada ante la DGI. |
Tipo de emisión
| Código | Descripción |
|---|---|
01 | Autorización previa, funcionamiento normal |
02 | Autorización previa, operación en contingencia |
03 | Autorización posterior, funcionamiento normal |
04 | Autorización posterior, operación en contingencia |
Naturaleza de la operación
| Código | Descripción | Código | Descripción |
|---|---|---|---|
01 | Venta | 13 | Remesa |
02 | Exportación | 14 | Entrega gratuita |
10 | Traslado | 20 | Compra |
11 | Devolución | 21 | Importación |
12 | Consignación |
Tipo de venta
| Código | Descripción |
|---|---|
1 | Venta de negocios |
2 | Venta de activo fijo |
3 | Venta de bien inmueble |
4 | Factura de servicio |
Tasas de ITBMS
| Código DGI | Impuesto en Odoo | Uso típico |
|---|---|---|
00 | 0 % o exento | Medicamentos, alimentos y demás operaciones exentas. |
01 | 7 % | La tasa general del ITBMS. |
02 | 10 % | Bebidas alcohólicas y hospedaje. |
03 | 15 % | Productos derivados del tabaco. |
El módulo traduce el porcentaje del impuesto de la línea a estos cuatro códigos. Si un impuesto
tiene un porcentaje distinto de 7, 10 o 15, se declara como 00. Revise que sus
impuestos de venta usen exactamente esos porcentajes.
Tipos de receptor y de contribuyente
| Receptor | Descripción | Contribuyente | Descripción |
|---|---|---|---|
01 | Contribuyente | 1 | Persona natural |
02 | Consumidor final | 2 | Persona jurídica |
03 | Gobierno | ||
04 | Extranjero |
Otros catálogos del diario
| Campo | Valores |
|---|---|
| Tipo de sucursal | 1 Local comercial · 2 Local B2B |
| Formato del CAFE | 1 Sin emisión de CAFE · 2 Impresora de tickets · 3 Papel 8½″ × 11″ |
| Entrega del CAFE | 1 Sin emisión · 2 En papel · 3 Documento electrónico |
| Envío del contenedor | 1 Normal · 2 El receptor exime al emisor |
| Destino de la operación | 1 Panamá · 2 Extranjero |
Acciones que Odoo envía al PAC
| Acción | Qué hace |
|---|---|
Enviar | Transmite el documento para su certificación. |
ConsultarRucDV | Consulta un RUC y devuelve razón social, DV, tipo y afiliación al SFE. |
EstadoDocumento | Consulta el estado de un documento ya emitido. |
AnulacionDocumento | Solicita la anulación de un documento. |
DescargaPDF / DescargaXML | Descarga los archivos oficiales. |
FoliosRestantes | Consulta la licencia y el consumo de folios. |
EnvioCorreo / RastreoCorreo | Envía el documento por correo desde el PAC y rastrea esos envíos. |
GenerarToken | Obtiene un token de acceso (Digifact y PanaFacturas). |
Tareas programadas
| Tarea | Frecuencia | Qué hace |
|---|---|---|
| Panamá FEL: Contingency Process | 10 minutos | Reintenta certificar los documentos en contingencia. |
| Panamá FEL: Close Old Contingencies | 1 hora | Cierra las contingencias de más de 24 horas. |
| Panamá FEL: Send Offline Requests | 1 hora | Sube al PAC los documentos generados con la utilidad offline. |
Cada día: revisar Documentos con error y Documentos en contingencia; las dos listas deberían quedar vacías. Cada semana: comparar Documentos certificados con las ventas del periodo. Cada mes: consultar los folios restantes y confirmar que alcanzan para el mes siguiente.