Manual de usuario · Facturación electrónica
Facturación Electrónica en Línea (FEL) de Guatemala en Odoo 20
Configuración del certificador, emisión de todos los tipos de DTE, receptor con NIT, CUI o pasaporte, anulaciones ante la SAT, contingencia y facturación electrónica en el punto de venta.
1.Cómo usar este manual
Qué cubre, para quién está escrito y de dónde salieron las pantallas que ilustran cada paso.
Este manual explica cómo emitir facturación electrónica en línea (FEL) de Guatemala desde Odoo 20: cómo se configura el certificador, cómo se emite cada tipo de documento tributario electrónico, qué hacer cuando la SAT rechaza un documento, cómo se anula y cómo funciona todo esto dentro del punto de venta.
Cubre dos módulos principales y uno complementario, que trabajan juntos:
multicert_felgt
El motor de la FEL. Arma el XML del DTE, lo envía al certificador, guarda el número de autorización y controla anulaciones, contingencia, reintentos y la factura impresa.
pos_multicert_felgt
Lleva la FEL al punto de venta: certifica al cobrar, imprime el ticket con el número de autorización y el código QR, y permite anular y devolver desde la caja.
nit_dpi_multicert_verification complementario
Consulta el NIT o el CUI contra el servicio del certificador y trae el nombre inscrito del contribuyente antes de facturarle. Se contrata y se instala aparte.
Está pensado para tres perfiles:
- El cajero o facturador — capítulos 14 a 18 y 22 a 26: emitir, anular y devolver.
- El contador — capítulos 19 a 21 y 27: anulaciones, errores de la SAT, contingencia y monitoreo de los documentos certificados.
- Quien implementa — capítulos 4 a 13: la lista completa de configuración, campo por campo, con las reglas que la SAT valida en cada uno.
1.1 Convenciones
| Elemento | Significado |
|---|---|
| Contabilidad › Configuración › Diarios | Ruta de menú. Cada › es un clic más adentro. |
fel_gt_uuid |
Nombre técnico de un campo. Sirve para buscarlo en filtros, importaciones o soporte. |
| Certificada | Estado que se ve en pantalla, tal como lo muestra Odoo. |
| DTE | Documento Tributario Electrónico: la factura, nota o recibo ya certificado por la SAT. |
Todas las pantallas son reales, tomadas de una base de datos de demostración de Odoo 20 de la
empresa ficticia Distribuidora El Quetzal, S.A. Los documentos que aparecen certificados
provienen de un ambiente de pruebas simulado: un simulador local que responde con el mismo
formato que el servicio de INFILE, porque la firma electrónica del emisor de pruebas había vencido
cuando se prepararon las capturas. Por eso su serie es **PRUEBAS** y su número de
autorización no existe ante la SAT. El rechazo que se muestra en el capítulo 20 y las consultas de
NIT del capítulo 13 sí son respuestas reales del certificador. En producción la serie es un
identificador alfanumérico asignado al certificar.
2.Qué es la FEL y cómo funciona
El circuito completo, desde que usted presiona «Confirmar» hasta que el cliente puede verificar su factura en el portal de la SAT.
La Facturación Electrónica en Línea es el régimen con el que la SAT sustituyó las facturas preimpresas. Bajo la FEL, un documento no existe legalmente hasta que un certificador autorizado lo firma y lo registra ante la SAT, y eso ocurre en el momento mismo de emitirlo, no al final del mes.
2.1 Los actores
| Actor | Papel |
|---|---|
| El emisor | Su empresa. Genera el documento y lo envía a certificar. Necesita estar afiliada al régimen FEL y tener asignados uno o varios códigos de establecimiento. |
| El certificador | Empresa autorizada por la SAT (INFILE, Guatefacturas, G4S, Megaprint, Digifact) que firma electrónicamente el XML y lo registra. Le entrega a usted el número de autorización. |
| La SAT | Valida el contenido del documento y lo guarda. Publica un verificador donde cualquiera puede comprobar que un DTE existe. |
| El receptor | Su cliente. Debe estar identificado con NIT, CUI (DPI), pasaporte, o como
Consumidor Final (CF) cuando no se identifica. |
2.2 El circuito de una factura
Los cinco pasos ocurren en un solo clic y tardan típicamente entre uno y tres segundos. Si algo falla en el paso 3 o 4 —un dato mal capturado, el certificador caído, la conexión perdida— Odoo no deja a medias el documento: lo detiene, lo difiere para reintentarlo o lo pasa a contingencia, según cómo esté configurado. Los capítulos 20 y 21 explican esos tres caminos.
2.3 Los datos que devuelve la SAT
Cuando la certificación tiene éxito, el documento queda marcado con cuatro datos que ya no cambian y que son los que el cliente y la SAT reconocen:
| Dato | Campo en Odoo | Qué es |
|---|---|---|
| Número de autorización | fel_gt_uuid |
Identificador único universal (UUID) del DTE. Es «el número» de la factura electrónica. |
| Serie | fel_gt_serie |
Serie asignada por la SAT al documento. |
| Número del DTE | fel_gt_dte_number |
Correlativo dentro de la serie. |
| Fecha de autorización | fel_gt_dte_date |
Momento exacto en que el certificador registró el documento. |
En Odoo 20 los tres primeros datos que importan al día a día —Estado FEL, Serie y Número DTE— aparecen en la cabecera de la factura, junto al diario, sin necesidad de abrir ninguna pestaña.
Odoo numera sus facturas con su propia secuencia (FACT/2026/00001). La serie y el
número del DTE los asigna la SAT y son independientes. Si prefiere que el nombre del asiento
contable sea el número del DTE, active Nombre del Documento Establecido por FEL
(capítulo 7): el documento pasará a llamarse DTE-3889776740.
2.4 Verificación pública
Todo DTE se puede verificar sin contraseña. Una vez certificado, la factura muestra dos botones nuevos en su barra superior:
- PDF certificador — descarga el PDF que emite el certificador (INFILE, Megaprint, Digifact o G4S) con el diseño oficial del proveedor.
- PDF SAT — abre en una pestaña nueva el verificador público de la SAT
(
felpub.c.sat.gob.gt) con el número de autorización, el NIT emisor, el NIT receptor y el monto ya cargados; desde ahí la SAT entrega su propia representación del documento.
3.Los módulos y su alcance
Qué instala cada uno, de qué depende y qué aparece en pantalla después de instalarlo.
3.1 multicert_felgt — el motor de la FEL
Es el módulo principal. Trabaja sobre las facturas de cliente, las facturas de proveedor (para la factura especial), las notas de crédito y débito y los recibos.
| Qué agrega | Dónde se ve |
|---|---|
| Configuración del certificador | Contabilidad › Configuración › Ajustes y la ficha de la compañía |
| Pestaña Configuración FEL Guatemala | En cada diario de venta o compra |
| Pestaña FEL, estado en la cabecera y botones de certificación | En cada factura |
| Aplicación FE-SAT | Bandejas de documentos electrónicos, bitácora de envíos y DTE sin registrar |
| Catálogo de 67 frases FEL | FE-SAT › Configuración |
| 18 diseños de factura impresa | Ficha de la compañía, pestaña Diseño de Factura FEL Guatemala |
| Asistente de anulación con el catálogo de la SAT | Botón Cancelar FEL de la factura |
| Dos tareas programadas | Contingencia y certificación diferida |
Depende de account, sale, l10n_gt y
base_address_extended, y necesita las librerías de Python img2pdf y
fpdf instaladas en el servidor.
3.2 pos_multicert_felgt — la FEL en el punto de venta
Certifica cada venta del punto de venta en el momento del cobro, imprime el ticket con los datos del DTE y el código QR de verificación, y agrega a la caja las operaciones que antes obligaban a ir al backend: anular con concepto de la SAT, emitir la nota de crédito de una devolución y trabajar en contingencia cuando no hay Internet.
Depende de point_of_sale, pos_stock, account_tax_python y
del propio multicert_felgt.
3.3 nit_dpi_multicert_verification — complementario
Añade la consulta en línea del NIT y del CUI contra el servicio del certificador. Al capturar un contacto, el sistema trae el nombre tal como está inscrito en la SAT, de modo que el DTE no se rechace por un nombre que no coincide. Guarda además una bitácora de consultas para no pagar dos veces por el mismo NIT. No es indispensable para emitir: sin él, Odoo 20 sigue validando el dígito verificador del NIT, pero no consulta el nombre.
multicert_felgt es la puerta de entrada al monitoreo de
documentos electrónicos.Instale siempre multicert_felgt primero: los otros dos dependen de él y de sus
grupos de seguridad. Si instala el módulo de punto de venta antes de configurar el certificador,
la caja arrancará, pero cada cobro terminará en error de certificación.
4.Puesta en marcha: lista de verificación
El orden en que conviene configurar, con el capítulo donde se explica cada paso.
Una implementación de FEL que sale bien a la primera sigue este orden. Cada línea es un requisito de la siguiente.
- Contrate al certificador y pida las credenciales del ambiente de pruebas y las de producción. Pida también el código de establecimiento de cada sucursal (lo asigna la SAT, no el certificador).
- Complete los datos de la empresa: NIT, razón social inscrita, dirección, correo y tipo de personería. → capítulo 5
- Active la emisión y cargue las credenciales del certificador. → capítulo 6
- Revise las opciones generales: moneda del DTE, redondeo, descripción de línea, errores y anulaciones. → capítulo 7
- Configure un diario por cada tipo de documento que vaya a emitir y actívele la generación de FEL. → capítulo 8
- Asigne las frases que correspondan a su régimen tributario en cada diario. → capítulo 9
- Verifique impuestos y posiciones fiscales: el IVA debe estar clasificado como impuesto FEL. → capítulo 10
- Configure la validación de NIT/DPI si la contrató. → capítulo 13
- Dé permisos a los usuarios que facturan y a los que pueden anular. → capítulo 29
- Emita una factura de prueba contra el ambiente de pruebas y verifíquela en el portal del certificador antes de cambiar a producción. → capítulo 14
Un DTE certificado en producción existe ante la SAT aunque haya sido una prueba, y solo se puede quitar anulándolo dentro del plazo. Haga todas las pruebas con las credenciales del ambiente de pruebas del certificador y cámbielas a producción únicamente cuando el circuito completo funcione.
El certificador firma con un certificado del emisor que tiene vigencia. Cuando vence, la SAT
rechaza todos los documentos con el error FEL-GUI-88 «La firma del emisor no está
vigente» (capítulo 20). Pida a su certificador la renovación antes de la fecha de vencimiento,
tanto en pruebas como en producción.
5.Datos de la empresa emisora
Los campos de la compañía que viajan dentro del XML y que la SAT valida uno por uno.
La SAT compara los datos del emisor con su registro. Si el nombre o la dirección no coinciden con lo inscrito, rechaza el documento. Estos campos se llenan en Ajustes › Usuarios y empresas › Empresas.
5.1 Campos obligatorios
Odoo los revisa antes de enviar nada al certificador y detiene la confirmación si falta alguno:
| Campo | Nombre técnico | Qué debe contener |
|---|---|---|
| NIT | vat |
NIT del emisor, sin guiones. Es el que identifica a la empresa ante la SAT. |
| Registro fiscal | company_registry |
La razón social inscrita en la SAT, que casi nunca es igual al nombre comercial. Si está llena, es la que viaja como nombre del emisor en el DTE y la que encabeza el ticket del punto de venta. |
| Correo electrónico | email |
Correo del emisor. La SAT lo exige y algunos certificadores envían ahí las notificaciones. |
| Dirección | street |
Dirección fiscal. Se completa con municipio, departamento y código postal. |
«Distribuidora El Quetzal, S.A.» es el nombre comercial y es el que ve el usuario en Odoo; «DISTRIBUIDORA EL QUETZAL, SOCIEDAD ANONIMA» es la razón social y es la que va en el DTE. El primero se escribe en Nombre de la empresa; la segunda, en Registro fiscal. Cada diario puede además definir su propio nombre comercial para la sucursal (capítulo 8).
5.2 La pestaña Configuración Certificador FEL Guatemala
La ficha de la compañía de Odoo 20 trae tres pestañas propias de Guatemala: Configuración Validador NIT/DPI FEL Guatemala (la instala el módulo complementario), Diseño de Factura FEL Guatemala (capítulo 28) y Configuración Certificador FEL Guatemala, que repite las opciones de Ajustes y agrega las propias del contribuyente. Solo las ve el grupo Encargado Factura Electronica.
| Campo | Para qué sirve |
|---|---|
| Esta compañía emite FEL | Interruptor maestro. Solo en las compañías activadas se exigen los datos del certificador; el resto opera sin llenar nada de FEL. |
| Código Establecimiento | Número que la SAT asigna a cada sucursal. Es obligatorio y viaja en cada DTE. Si un diario define el suyo, ese tiene prioridad. |
| Tipo de Personería | Catálogo de la SAT (sociedad anónima, cooperativa, fundación, entidad del Estado…). El módulo trae los tipos precargados. |
| Pequeño Contribuyente | Cambia la afiliación del DTE a PEQ y el nombre impreso del documento a
«Factura Pequeño Contribuyente». |
| Fecha de resolución y Número de resolución | Datos de la resolución de afiliación especial que la SAT emitió al contribuyente. Se agregan únicamente a la frase de tipo 1, escenario 3 (capítulo 9). |
| Nota de crédito rebajando régimen antiguo | Para las notas de crédito que corrigen documentos del régimen anterior a la FEL. |
| Impuesto NABO | Impuesto que usa la nota de abono (capítulo 18). |
| Configuración Cuenta Ajena | Habilita los cobros por cuenta de terceros (capítulo 28). |
| Configuración Exportación | Nombre y código del exportador y lugar de expedición, que viajan en el complemento de exportación (capítulo 15). |
Si la sucursal se crea en Odoo como una compañía hija de la matriz, la pestaña muestra un aviso: el NIT del emisor, las credenciales del certificador y los datos del contribuyente se heredan de la compañía raíz y aparecen como solo lectura. En la sucursal se configuran únicamente su Código Establecimiento y su dirección. Así todas emiten con el mismo NIT y las mismas credenciales, cada una con su establecimiento.
6.Credenciales del certificador
Los cinco certificadores soportados y qué dato pide cada uno.
La configuración de FEL de uso diario vive en Contabilidad › Configuración › Ajustes, en el bloque Facturación Electrónica, que en Odoo 20 aparece al principio de la sección Contabilidad. El bloque solo se muestra si la compañía es de Guatemala.
6.1 Elegir el certificador
El desplegable Certificador a utilizar define contra qué proveedor se firma. Al elegirlo, Odoo muestra únicamente el bloque de credenciales de ese proveedor y oculta los demás.
| Certificador | Autenticación | Particularidades |
|---|---|---|
| INFILE | Usuario (alias) + llave de firma + llave de certificación | Dos métodos: Directo (una sola llamada) o Firma/Certificación (firma y certifica en pasos separados, con URL de anulación propia). |
| Guatefacturas | Usuario y contraseña + usuario y contraseña de autenticación HTTP | Servicio SOAP. Requiere las dos parejas de credenciales. |
| G4S | Requestor + usuario | Servicio SOAP con una sola URL. |
| Megaprint | Usuario + apikey | Trabaja con token con vencimiento. Odoo lo renueva solo y muestra su vigencia; el botón Obtener Token lo pide a mano. Tiene URL distinta para verificar, firmar, registrar, anular y descargar el PDF. |
| Digifact | Usuario y contraseña | También con token; usa un segundo token («NUC») para ciertas operaciones. |
6.2 INFILE paso a paso
Es el certificador más usado en Guatemala, y el que ilustra este manual.
| Campo | Qué se escribe |
|---|---|
| Usuario INFILE (Alias/Prefijo) | El alias del emisor que entrega INFILE; no es el NIT. |
| Llave Firma INFILE (Token) | Token de firma. |
| Llave Certificación INFILE (Llave) | Llave de certificación. |
| URL Directo INFILE | Endpoint del proceso unificado, cuando el método es «Directo». |
| URL Firma / URL Certificación / URL Anulación INFILE | Endpoints del método «Firma/Certificación». |
Una URL truncada no da un error claro: el servicio responde con una página que no es la esperada y el módulo falla al interpretarla. Si al certificar aparece un error de análisis del documento en vez de un mensaje de la SAT, revise que las URL estén completas y sin espacios al final. Si la URL no responde en absoluto, el documento no se pierde: pasa a contingencia (capítulo 21).
Los bloques de credenciales están restringidos al grupo Encargado Factura Electronica. Un usuario con el grupo Usuario Factura Electronica puede facturar y anular, pero no ve las llaves.
7.Opciones generales de FEL
Cómo se arma el contenido del DTE: moneda, decimales, descripción de las líneas, qué hacer cuando algo falla y las reglas de anulación.
Estas opciones están en el mismo bloque Facturación Electrónica y afectan a todos los documentos de la compañía.
7.1 Moneda del documento
| Opción | Efecto |
|---|---|
| Seleccionar moneda de facturación a factura | Activada (valor por defecto), el DTE viaja en la moneda de la factura: una factura en dólares se certifica en dólares. Desactivada, todo se convierte a la moneda fija que se indique abajo. |
| Moneda de facturación | Solo aparece si la anterior está desactivada. Es la moneda a la que se convierte el documento, normalmente el quetzal. |
Un contacto puede tener su propia preferencia: en la ficha del cliente, Moneda de facturación en base al documento hace que sus DTE salgan siempre en la moneda del documento aunque la compañía convierta.
7.2 Descripción y unidad de medida de las líneas
| Opción | Efecto |
|---|---|
| Descripcion de producto de factura | Descripcion envía el texto de la línea tal como se editó; Nombre de producto envía siempre el nombre del producto, ignorando ediciones. |
| Unidad de medida de producto de factura | Unidad envía siempre UND; la otra opción envía la unidad del producto
(cajas, quintales, litros). |
| No enviar referencia interna del producto | Quita el prefijo [PRD-001] de la descripción que se manda al certificador. |
| Separador de referencia interna | Cuando sí se envía la referencia, el carácter que la separa del nombre. |
| Número decimales de redondeo | Decimales con que se redondean precios e impuestos en el XML. Si es cero, se usan dos. |
7.3 Qué hacer cuando la certificación falla
| Opción | Efecto |
|---|---|
| Publicar asiento con errores SAT | Permite que el asiento contable quede publicado aunque la SAT haya rechazado el DTE. Úselo con criterio: contablemente la venta existe, pero fiscalmente no hay documento. |
| Diferir certificación FEL en ecommerce | Si la factura nace de una venta del sitio web y la certificación falla, no interrumpe la compra: publica el asiento y reintenta en segundo plano. |
| Intentos de certificación diferida | Cuántas veces reintenta antes de marcar el documento para revisión manual (5 por defecto). Solo se ve si la opción anterior está activa. |
| Avisar contingencia tras N intentos | Tras cuántos intentos fallidos de un documento en contingencia se notifica al responsable (30 por defecto). Los reintentos siguen después del aviso. |
| Responsable de alertas FEL | Usuario al que se le asigna la actividad cuando el documento no tiene comercial. |
7.4 Anulaciones y notas fuera de plazo
- Nombre del Documento Establecido por FEL — renombra el asiento contable como
DTE-en vez de la secuencia de Odoo. - Código Establecimiento — el de la compañía, usado cuando el diario no define el suyo.
- Permitir anulación extemporánea — envía la anulación de un DTE a Consumidor Final aunque haya pasado el plazo en línea (capítulo 19).
- Vigencia frase de NCRE fuera de plazo — fecha desde la que el sistema agrega sola la frase tipo 9, escenario 22 a las notas de crédito emitidas más de dos meses después de la factura de origen. La SAT la exige desde el 29 de octubre de 2026 y la rechaza en cualquier otro tipo de DTE, incluida la nota de débito. Si se deja vacía, la frase no se agrega.
- Mostrar Columna de Descuento (bloque Configuración Factura) — agrega la columna de descuento a la factura impresa.
8.Los diarios FEL
Un diario por tipo de documento: dónde se activa la FEL, qué establecimiento usa y qué frases lleva.
En Odoo, el diario es lo que decide si una factura se certifica o no. La configuración está en Contabilidad › Configuración › Diarios, pestaña Configuración FEL Guatemala, que aparece únicamente en diarios de venta y de compra de una compañía guatemalteca.
8.1 Un diario por tipo de documento
La forma recomendada de trabajar es un diario por cada tipo de DTE. Así el usuario elige el diario y el tipo de documento sale correcto sin pensar:
| Diario | Tipo | Emite |
|---|---|---|
| Facturas de Cliente (FEL) | Venta | Factura (FACT) y factura
cambiaria (FCAM), con el tipo «Usuario» para poder elegir |
| Notas de Crédito (FEL) | Venta | Notas de crédito (NCRE) |
| Recibos (FEL) | Venta | Recibos (RECI), con la casilla
¿Es recibo? activada |
| Facturas de Exportación (FEL) | Venta | Factura cambiaria de exportación
(FEXP) |
| Facturas Especiales (FEL) | Compra | Factura especial (FESP) |
| Facturas Históricas (sin FEL) | Venta | Nada: carga de documentos ya certificados en otro sistema (capítulo 14) |
8.2 Los campos de la pestaña
| Campo | Para qué sirve |
|---|---|
| Generación de Facturación Electrónica | El interruptor real: si está apagado, las facturas de ese diario se publican como documentos internos y nunca se envían a la SAT. Es lo que se usa para cargar históricos. |
| Certificador a utilizar | Solo lectura: muestra el certificador de la compañía. |
| Tipo de Factura por Defecto | Fuerza el tipo de DTE de todas las facturas del diario. Con Usuario, respeta el tipo por defecto configurado en cada usuario y permite cambiarlo en la factura. |
| ¿Es recibo? | Marca el diario como emisor de recibos electrónicos (capítulo 17). |
| Descuento en Precio | Envía el descuento incorporado al precio unitario en vez de como descuento de línea. |
| Adenda Activa | Habilita la subpestaña Adendas (sección 8.4). |
| Código Establecimiento | El de esta sucursal. Tiene prioridad sobre el de la compañía. |
| Nombre comercial | Nombre con que se identifica el establecimiento en el DTE y en el ticket. |
| Dirección de facturación, código postal, departamento, municipio | Dirección del establecimiento emisor, que puede ser distinta de la fiscal. |
| Frase | Las frases que se copian a cada factura del diario (capítulo 9). |
| Logo Personalizado | Logotipo propio de la sucursal para la factura impresa. |
Todos los campos de esta pestaña llevan el sufijo - FEL GT en su etiqueta, para distinguirlos de los campos estándar del diario.
8.3 Contingencia
El grupo Contingencia FEL GT tiene la casilla Activar contingencia manualmente y los tres números del bloque de números de acceso que la SAT entrega para emitir sin conexión (rango inicial, rango final y número actual). Deben estar entre 100000000 y 999999999. El capítulo 21 explica cómo se usan.
8.4 Adendas
Una adenda es información adicional que viaja en el DTE sin efecto tributario, pensada para que el receptor la procese automáticamente. Se activa con Adenda Activa y luego se eligen, con interruptores, los datos a incluir:
Casi nunca por exigencia de la SAT: se usan cuando un cliente grande —una cadena, un distribuidor— pide que su número de orden de compra o su código de proveedor viajen dentro del XML para poder conciliar automáticamente.
9.Las frases FEL
Qué son, cuáles le tocan a su empresa y qué pasa si faltan.
Las frases son leyendas normadas por la SAT que declaran el régimen tributario del emisor y las exenciones que aplican al documento. Van dentro del XML como un código de tipo y un código de escenario, y se imprimen al pie de la factura y del ticket. Si falta una frase obligatoria para su régimen, la SAT rechaza el DTE: el capítulo 20 muestra un rechazo real por esa causa.
9.1 Los nueve tipos
| Tipo | Familia | Cuándo se usa |
|---|---|---|
| 1 | Retención del ISR | Declara si el emisor está sujeto a pagos trimestrales, a retención definitiva o a pago directo. Casi todo contribuyente necesita una. |
| 2 | Agente de Retención del IVA | Obligatoria si la SAT lo nombró agente de retención. |
| 3 | No genera derecho a crédito fiscal | Documentos que no dan crédito fiscal al receptor. |
| 4 | Exento o no afecto al IVA | 32 escenarios: exportaciones, cooperativas, donaciones, medicamentos, zonas francas, vivienda, transporte público, movilidad eléctrica… |
| 5 | Factura especial | Obligatoria en las facturas especiales (capítulo 16). |
| 6 | Régimen Especial de Contribuyente Agropecuario | Según la forma de pago del impuesto: sobre ventas brutas o sobre utilidades. |
| 7 | Regímenes electrónicos | Pequeño contribuyente electrónico y agropecuario electrónico. |
| 8 | Exento del ISR | Universidades, centros educativos, iglesias, cooperativas, entidades del Estado, usuarios de ZOLIC, movilidad eléctrica. |
| 9 | Frases especiales | Leyendas de otros documentos y decretos, las dos frases de la nota de abono (escenarios 16 y 17) y la de la nota de crédito fuera de plazo (escenario 22). |
9.2 Cómo se asignan
Las frases se configuran en el diario y de ahí se copian a cada factura nueva. En la factura se ven —y se pueden ajustar caso por caso mientras está en borrador— en la pestaña FEL, grupo Frases FEL. Tres frases las pone o las quita el propio sistema:
- Tipo 9, escenarios 16 y 17: solo en la nota de abono, según la naturaleza de la operación (capítulo 18). Si alguna de ellas aparece en otro tipo de documento, Odoo no deja confirmar.
- Tipo 9, escenario 22: solo en la nota de crédito emitida más de dos meses después de su factura de origen, a partir de la vigencia configurada (capítulo 7).
Un contribuyente normal del régimen sobre utilidades, no agente de retención, necesita una sola frase de tipo 1. Si además fue nombrado agente de retención del IVA, añade la de tipo 2. Todo lo demás depende de operaciones concretas: exportar, vender exento, emitir factura especial.
Si en la compañía se llenaron Número de resolución y Fecha de resolución, esos dos datos se agregan solo a la frase de tipo 1, escenario 3 («Sujeto a pago directo ISR»), que es la que exige la resolución de afiliación especial. Las demás frases viajan sin ellos. Llénelos solo si la SAT emitió esa resolución para el contribuyente.
10.Impuestos y posiciones fiscales
Cómo se traducen los impuestos de Odoo a los impuestos que entiende la SAT.
El XML del DTE no lleva «IVA por ventas 12%»: lleva un nombre de impuesto del catálogo de la SAT y su monto. La traducción se define en cada impuesto, en Contabilidad › Configuración › Impuestos.
10.1 Campos FEL del impuesto
| Campo | Valores y uso |
|---|---|
| Tipo impuesto FEL | IVA, PETROLEO, TURISMO HOSPEDAJE,
TURISMO PASAJES, TIMBRE DE PRENSA, BOMBEROS,
TASA MUNICIPAL y CEMENTO. Es el nombre corto que viaja en el
DTE. |
| Tipo de IDP FEL | Solo para el impuesto a la distribución de petróleo: Super, Regular o Disel. La SAT exige distinguirlos porque tienen tarifa distinta. |
| Timbre FEL | Marca el impuesto como timbre, que se reporta aparte del IVA. |
Los tres campos aparecen en la ficha del impuesto solo cuando su país es Guatemala. Si una línea lleva un impuesto sin clasificación FEL, Odoo detiene la confirmación con el mensaje «El impuesto … no tiene clasificación del Impuesto».
En Guatemala el precio al público incluye el IVA, y así vienen los DTE. Los impuestos de IVA del plan contable guatemalteco de Odoo 20 ya vienen como impuesto incluido en el precio. Si crea un impuesto nuevo, respete ese criterio o los totales del DTE no cuadrarán con los de Odoo.
10.2 Posiciones fiscales
Una posición fiscal cambia los impuestos según el tipo de cliente. Para la FEL, lo relevante es la casilla Exención De IVA, que aparece en las posiciones de compañías guatemaltecas y marca la posición como exenta.
11.Tipos de DTE y cómo se eligen
Los tipos de documento que emite el módulo y las tres cosas que deciden cuál sale.
11.1 El catálogo
| Código | Documento | Cuándo se usa |
|---|---|---|
FACT | Factura | La venta normal de bienes o servicios. Es el tipo por defecto. |
FCAM | Factura cambiaria | Venta al crédito documentada como título de crédito. Lleva un complemento con el abono y la fecha de vencimiento. |
FEXP | Factura cambiaria de exportación | Ventas al exterior. Lleva el complemento de exportación con los datos del exportador y del consignatario. |
FESP | Factura especial | La emite el comprador por cuenta de quien no puede facturar. Se registra como factura de proveedor. |
NCRE | Nota de crédito | Devoluciones, descuentos y correcciones que rebajan un DTE anterior. |
NDEB | Nota de débito | Cargos posteriores que aumentan un DTE anterior (intereses, fletes, ajustes). |
NABN | Nota de abono | Documento sin efecto de crédito fiscal; se emite desde una rectificativa de cliente. |
RECI | Recibo | Cobro que no constituye factura. Variantes: recibo por donación
(RDON) y recibo por anticipo (RANT). |
11.2 Quién decide el tipo
El campo Tipo de Factura de la factura es el que manda en el XML, pero su valor se calcula en cascada:
FACTSi el diario tiene un Tipo de Factura por Defecto distinto de «Usuario», ese tipo se impone y se reaplica cada vez que cambia el diario de la factura. Para elegir el tipo documento por documento —por ejemplo, factura normal o cambiaria— deje el diario en «Usuario» y cambie el campo Tipo de Factura en la pestaña FEL, grupo Adicionales FEL, mientras la factura está en borrador.
Hay dos excepciones que Odoo fija solo:
- Una rectificativa de cliente (la nota de crédito estándar de Odoo) nace como
NABN; cámbiela aNCREsi lo que quiere es una nota de crédito, o emítala desde un diario con tipoNCRE. - Una factura de proveedor nace como
FESP, que es el único tipo que se emite desde compras. En un diario de compra sin FEL, el documento queda como interno.
11.3 Estados de la certificación
Independiente del estado contable (borrador, registrado, cancelado), cada documento tiene su Estado certificación FEL, que en la cabecera de la factura se rotula Estado FEL:
| Estado | Significado |
|---|---|
| Sin certificar | Todavía no se ha enviado a la SAT. Es el estado de todo documento en borrador y de los históricos cargados en diarios sin FEL. |
| Certificación diferida: falló el envío y quedó en cola de reintentos automáticos. | |
| Error en datos FEL | La SAT lo rechazó y se agotaron los reintentos, o se publicó con errores. Requiere corrección manual. |
| Certificada | La SAT la registró. Tiene número de autorización, serie y número. |
| Emitida sin conexión con un número de acceso; pendiente de certificar. | |
| Se pidió anular fuera del plazo en línea; la SAT debe autorizarlo. | |
| Anulada FEL | Anulada ante la SAT. La factura muestra además la cinta ANULADA FEL. |
12.Contactos: NIT, CUI, pasaporte y CF
Cómo se identifica al receptor en Odoo 20 y qué reglas de la SAT dependen de esa identificación.
El receptor es el dato que más rechazos provoca. La SAT valida que exista, que el nombre coincida con su registro y que el tipo de identificación sea coherente con el monto y el tipo de documento.
12.1 Cómo identifica Odoo 20 al receptor
Odoo 20 trae de serie los identificadores del contacto: además del NIT, la localización guatemalteca agrega el campo CUI (el número del DPI) y, con el botón + junto al NIT, se pueden registrar otros identificadores, entre ellos el pasaporte. El módulo FEL lee esos datos en este orden:
| El contacto tiene… | Viaja a la SAT como | Uso |
|---|---|---|
| NIT | NIT | Contribuyente inscrito. Es el caso normal. |
| CUI y no NIT | CUI (tipo especial CUI) |
Persona individual sin NIT. Trece dígitos. |
| Pasaporte, o es de otro país | Extranjero (tipo especial
EXT) |
Receptores del exterior o extranjeros residentes. |
| Nada | CF | Consumidor Final. |
Un contacto hijo (por ejemplo, la sucursal de un cliente) puede facturar con otro número: el campo NIT Contacto, que aparece solo en contactos con empresa matriz, tiene prioridad sobre todo lo anterior.
Odoo 20 valida el NIT guatemalteco con su dígito verificador (módulo 11) al guardar el contacto y no deja grabar un NIT mal escrito. El CUI también se valida. Si además tiene el módulo complementario de validación con el certificador, para los usuarios con su permiso esa consulta en línea reemplaza a la revisión del dígito (capítulo 13).
12.2 Consumidor Final
Cuando el cliente no se identifica, el DTE se emite a Consumidor Final: el NIT viaja como
CF y el nombre como «Consumidor Final».
CF.
Conviene tener uno solo y usarlo como cliente por defecto del punto de venta.La SAT no admite documentos a Consumidor Final por más de Q2,500.00. Odoo lo bloquea
antes de enviar: si el total supera ese monto y el receptor es CF, exige registrar
el NIT, o bien el CUI o el pasaporte del comprador. El límite no aplica a un receptor extranjero
identificado. El mismo control existe en el punto de venta y aparece como un aviso al cobrar
(capítulo 23).
12.3 Disposiciones de la SAT para Consumidor Final
Las Reglas y Validaciones de la SAT vigentes en 2026 endurecieron el tratamiento del
receptor CF. El módulo las aplica y las explica en pantalla:
| Regla | Cómo se comporta Odoo |
|---|---|
No hay notas de crédito ni de débito a CF |
Bloquea la creación de la nota —también la nota de débito y la devolución del punto de venta— y explica el camino correcto: anular el documento y emitir uno nuevo con los datos correctos. |
La anulación de un DTE a CF solo se registra en línea el día de emisión
y el día siguiente |
Aplica a factura, factura cambiaria, factura de exportación y factura especial. Muestra la fecha límite en la factura y bloquea el envío fuera de plazo, salvo que se habilite la anulación extemporánea (capítulo 19). |
| Concepto de anulación del catálogo de la SAT | Toda anulación, en contabilidad o en la caja, exige elegir uno de los nueve conceptos del catálogo (capítulo 19). |
12.4 Contacto extranjero
La casilla Es Extranjero de la ficha marca al receptor del exterior y vuelve obligatorios los datos del consignatario de la pestaña Información Exportación, que exige la factura de exportación. Estos datos se heredan a los contactos hijos de la misma empresa.
12.5 Otros campos FEL del contacto
- Moneda de facturación en base al documento y Moneda de facturación — la moneda en que se le factura a ese cliente (capítulo 7).
- No Validar NIT con Certificador y Bloquear Escritura — los agrega el módulo complementario (capítulo 13). El segundo impide que un usuario sin permiso de encargado cambie el NIT, el CUI, el nombre o la dirección de un contacto ya validado.
13.Validación de NIT y DPI con el certificador
Módulo complementario: cómo traer el nombre inscrito del contribuyente antes de facturarle, y cómo evitar pagar dos veces por la misma consulta.
El módulo nit_dpi_multicert_verification consulta el NIT o el CUI contra el
servicio del certificador y reemplaza el nombre capturado por el nombre inscrito ante la
SAT. Es la forma más eficaz de evitar rechazos por diferencias de nombre.
13.1 Configuración
Está en el mismo Ajustes de contabilidad, bloque Validación de Contactos por medio de NIT o DPI, y se repite en la pestaña Configuración Validador NIT/DPI FEL Guatemala de la compañía. Es una configuración independiente de la del certificador de emisión: puede firmar con un proveedor y consultar NIT con otro.
| Campo | Qué se escribe |
|---|---|
| Certificador a utilizar para validación de NIT y DPI | Proveedor del servicio de consulta. |
| Cantidad Máxima de Solicitudes | Cuántas veces se consulta un mismo NIT al proveedor antes de responder desde la bitácora local. Con el valor 1, cada NIT se consulta una sola vez. |
| Usuario y Contraseña servicio consulta NIT/DPI | Credenciales de consulta. Megaprint no las usa (trabaja con token). |
| Usuario API y Contraseña API | Autenticación HTTP adicional; solo se piden para Guatefacturas. |
| Url servicio consulta NIT / DPI | Endpoints de cada consulta. |
| Url token servicio | Solo INFILE, para obtener el token de la consulta de DPI. |
| Forzar validación de NIT/DPI | Vuelve a consultar el nombre al momento de certificar, no solo al crear el contacto. |
| Bloquear duplicación de CF | Impide crear más de un contacto con NIT CF. |
13.2 Cómo se usa
Hay dos caminos, y ambos escriben el nombre oficial en el contacto:
- Al crear el contacto: escriba el NIT (o el DPI) en el campo del nombre o en el del NIT y guarde. El sistema consulta y sustituye el nombre por el que devuelve la SAT. Un número de trece dígitos se trata como DPI y se guarda en el campo CUI, no en el NIT.
- Sobre un contacto existente: abra la ficha y pulse Verificar Contacto. Consulta el NIT, o el CUI si el contacto no tiene NIT.
Si el número no existe, el sistema lo dice con claridad —«El NIT 99999999 que ingresó no es válido»— y no permite guardar. Si se escribe un DPI de trece dígitos en el campo NIT de un contacto ya creado, el aviso es «El DPI no es un NIT: regístrelo en el contacto como identificador CUI».
13.3 La bitácora de consultas
Cada consulta al proveedor se guarda en Contactos › Verificaciónes de Contactos con el NIT, el nombre devuelto, el certificador usado y dos contadores: consultas hechas al API y consultas resueltas desde la base local.
La casilla No Validar NIT con Certificador de la ficha excluye a un contacto del
control. Se marca sola en los contactos de países distintos de Guatemala. Tampoco se consultan
los contactos que se crean como hijos de otro contacto ni los que tienen NIT
CF.
La validación automática solo se dispara para usuarios con el grupo Validador NIT/DPI › Usuario. Un usuario sin ese grupo crea contactos con el comportamiento estándar de Odoo 20, que revisa el dígito verificador pero no consulta al certificador.
14.Emitir una factura electrónica
El procedimiento completo, qué revisar antes de confirmar y qué queda guardado después.
14.1 Paso a paso
- Vaya a Contabilidad › Clientes › Facturas y pulse Nuevo.
- Elija el cliente. Si es nuevo, capture el NIT primero para que la validación traiga el nombre inscrito (capítulo 13).
- Confirme el diario. Es lo que decide si el documento se certifica y con qué código de establecimiento.
- Verifique la fecha de vencimiento: es obligatoria para la FEL y Odoo detiene la confirmación si falta.
- Capture las líneas con su producto, cantidad, precio e impuestos.
- Abra la pestaña FEL y revise el Tipo de Factura y las frases.
- Si quiere un diseño impreso distinto del de la compañía, elíjalo en Plantilla Factura (capítulo 28).
- Pulse Confirmar. La certificación ocurre en ese momento.
14.2 Qué revisa Odoo antes de enviar
Si algo falta, la confirmación se detiene con un mensaje concreto y no se envía nada al certificador:
- Registro fiscal, correo, NIT y dirección de la empresa emisora.
- Fecha de vencimiento de la factura y nombre del receptor.
- Tipo de factura distinto de «Ninguno».
- Que cada línea lleve impuesto y que cada impuesto tenga su clasificación FEL.
- Límite de Q2,500.00 cuando el receptor es
CF. - Que el tipo de documento sea válido para el receptor (nada de notas a
CF). - Que las frases de la nota de abono estén solo en la nota de abono.
14.3 La pestaña FEL
Es el expediente electrónico del documento. Aparece en facturas de cliente, facturas de proveedor y rectificativas, siempre que el diario tenga la FEL activa.
| Grupo | Contenido |
|---|---|
| Datos Facturación | Número DTE, serie, número de autorización, fecha de autorización, fecha de emisión,
total en letras, los dos XML (enviado y certificado), la fecha límite de anulación
cuando el receptor es CF, y el concepto y motivo de anulación. |
| Datos Contingencia | Solo si el documento se emitió sin conexión: marca de contingencia y número de acceso. |
| Reintentos de Certificación | Número de intentos, último intento y el texto exacto del último error. |
| Frases FEL | Las frases que viajan en este documento. |
| Adicionales FEL | Tipo de factura, tipo de documento (en recibos), naturaleza de la operación (en notas de abono) y el documento de origen en notas de crédito y débito. |
Odoo guarda el XML enviado (DTE-) y el XML
certificado (CERTIFIED_DTE-) como archivos descargables
desde la pestaña FEL. Son la prueba técnica de lo que se transmitió y de lo que devolvió el
certificador; ante una discrepancia, es el primer documento que hay que revisar.
14.4 Facturas históricas sin certificar
Al migrar de otro sistema hay que cargar facturas que ya fueron certificadas antes. Para eso se usa un diario con la generación de FEL desactivada: las facturas se registran normalmente, quedan Sin certificar y nunca se envían a la SAT. Como el diario no tiene FEL, la factura tampoco muestra la pestaña FEL ni el estado en la cabecera.
No intente certificar facturas con fecha anterior a los últimos días: la SAT rechaza los DTE con demasiada antigüedad. El histórico se carga siempre en un diario sin FEL.
15.Factura cambiaria y de exportación
Dos variantes de la factura con requisitos propios de la SAT.
15.1 Factura cambiaria (FCAM)
Documenta una venta al crédito como título de crédito. Se emite igual que una factura normal,
pero con el tipo FCAM, que se elige en la pestaña FEL cuando el diario está en
«Usuario». El módulo agrega al XML el complemento cambiario con el abono, su monto y la
fecha de vencimiento de la factura.
15.2 Factura de exportación (FEXP)
Para ventas al exterior. Además de los datos normales, el DTE lleva el complemento de exportación, que Odoo arma con estos datos:
| Dato del complemento | De dónde sale |
|---|---|
| Nombre y código del exportador | Compañía, grupo Configuración Exportación (si faltan, la razón social y el NIT) |
| Lugar de expedición | Compañía, grupo Configuración Exportación |
| Nombre, dirección y país del consignatario | Ficha del cliente, pestaña Información Exportación (si faltan, el nombre y el país del cliente) |
| Otra referencia | Campo Referencia del cliente |
| INCOTERM | Pestaña Otra información de la factura; es opcional |
Las exportaciones no llevan IVA. Además del impuesto exento en las líneas, el DTE debe llevar la frase de tipo 4, escenario 1 («Exento de IVA - Exportaciones»). Configúrela en el diario de exportación para que se aplique sola. Un receptor extranjero no está sujeto al límite de Q2,500.00 de Consumidor Final.
16.Factura especial
El documento que emite el comprador cuando el vendedor no puede facturar.
La factura especial (FESP) la emite quien compra, por cuenta de quien vende,
cuando este último no está inscrito o se niega a facturar. Contablemente es una compra, y
por eso en Odoo se registra desde Contabilidad › Proveedores › Facturas, en un diario de
compra con FEL activa. Una factura de proveedor nace ya con el tipo FESP.
16.1 Requisitos
- Un diario de compra con Generación de Facturación Electrónica activada y Tipo de Factura por Defecto = Factura Especial.
- La frase de tipo 5 en ese diario.
- El vendedor identificado, normalmente con su CUI.
- El IVA de compras en las líneas.
La factura especial lleva un complemento con la retención de ISR —que el módulo calcula al 5% sobre la base— y la retención de IVA, junto con el total menos retenciones. La SAT exige retener el ISR sin importar el monto. Que esas retenciones se reflejen además como líneas contables es tarea de la localización contable; revise con su implementador que ambos cálculos coincidan.
17.Recibos electrónicos
Recibo, recibo por donación y recibo por anticipo.
El recibo documenta un cobro que no constituye factura. Se emite desde un diario de venta con la casilla ¿Es recibo? activada.
Dentro del recibo, el campo Tipo de Documento de la pestaña FEL distingue las tres variantes:
| Variante | Uso |
|---|---|
| Recibo | Cobro general que no es factura. |
| Recibo por Donacion | Donaciones recibidas por entidades autorizadas. |
| Recibo Anticipo | Anticipos de clientes, antes de emitir la factura definitiva. |
Los recibos llevan frases de tipo 9 de la familia «DTE (otros documentos)»: las que indican que el documento no sustituye una factura, que no genera derecho a crédito fiscal o que, concluido el servicio, debe emitirse la factura. Elija la que corresponda con su asesor y configúrela en el diario de recibos.
18.Notas de crédito, débito y abono
Cómo corregir un DTE ya certificado sin anularlo.
18.1 Nota de crédito (NCRE)
Rebaja un documento anterior: devoluciones, descuentos posteriores, correcciones de precio. Se crea con el botón Nota de crédito de la factura original, que abre el asistente estándar de Odoo. Después:
- Elija el diario de notas de crédito con FEL activa.
- En la pestaña FEL, confirme que el Tipo de Factura sea Nota de Crédito y que el campo NC Documento origen apunte a la factura corregida.
- Ajuste las líneas a lo que realmente se devuelve.
- Confirme.
Desde el 29 de octubre de 2026 la SAT exige que la nota de crédito emitida más de dos meses después de su factura de origen lleve la frase tipo 9, escenario 22 (artículo 17 de la Ley del IVA), y la rechaza en cualquier otro documento. Odoo la agrega o la quita sola al confirmar, comparando la fecha de la nota con la de la factura de origen.
18.2 Nota de débito (NDEB)
Aumenta un documento anterior: intereses, fletes cobrados después, ajustes al alza. Se genera con el botón Nota de débito que el módulo agrega a las facturas registradas. El botón abre una factura nueva ya enlazada al documento de origen —campo ND Documento origen— y con el tipo Nota de Débito.
18.3 Nota de abono (NABN)
Es un documento que no genera crédito fiscal. Se crea como rectificativa de cliente —que en
Odoo nace ya con el tipo NABN— y en la pestaña FEL pide la Naturaleza de la
operación:
- Vendedor intermediario de productos agropecuarios, artesanales y productos reciclados (frase tipo 9, escenario 16).
- Documento de rebaja de inventarios (frase tipo 9, escenario 17).
Al elegirla, el sistema coloca la frase correspondiente; sin ella no deja confirmar. Si la compañía tiene configurado un Impuesto NABO, las líneas de la nota de abono se envían con ese impuesto.
La SAT no admite notas de crédito ni de débito cuyo receptor sea CF. Odoo lo
impide desde que se pulsa el botón y explica el camino correcto: anular el documento dentro
del plazo y emitir uno nuevo con los datos correctos. Esto vale también para las devoluciones del
punto de venta (capítulo 24).
19.Anulación de un DTE ante la SAT
El concepto de anulación, los plazos por tipo de receptor y la anulación extemporánea.
Anular un DTE no es borrarlo: es enviar a la SAT una solicitud de anulación que queda registrada junto al documento original. Un DTE anulado sigue existiendo, con estado «anulado».
19.1 Cómo se anula
- Abra el documento certificado.
- Pulse Cancelar FEL en la barra de botones. Solo aparece en documentos registrados y certificados, y solo para usuarios de facturación electrónica.
- Elija el Concepto de anulación del catálogo de la SAT.
- Escriba el Detalle (obligatorio si el concepto es «Otros»).
- Pulse Anular DTE.
19.2 El catálogo de conceptos
| Código | Concepto |
|---|---|
001 | Error en los datos de la descripción |
002 | Error en el precio unitario |
003 | Error en el total del DTE |
004 | No cancelación del bien y/o servicio |
005 | Cancelación de la operación |
006 | Devolución de producto |
007 | Emisión con moneda incorrecta |
008 | Datos incorrectos del receptor |
009 | Otros — exige detalle escrito |
El texto que viaja a la SAT como motivo se arma con código, concepto y detalle:
008 Datos incorrectos del receptor - NIT del receptor capturado con error, hasta 250
caracteres.
19.3 Qué pasa al anular
Odoo envía la solicitud, espera la confirmación del certificador y solo entonces marca el documento: queda Cancelado en contabilidad, Anulada FEL en su estado FEL y con la cinta ANULADA FEL. Si el certificador no confirma, el documento no se marca como anulado y se avisa del error: es deliberado, para que nunca queden desalineados Odoo y la SAT. Un documento anulado ante la SAT ya no se puede regresar a borrador; hay que crear uno nuevo.
19.4 Los plazos
| Receptor | Plazo para anular en línea |
|---|---|
Consumidor Final (CF) |
El día de emisión y el día siguiente, en hora de Guatemala. Aplica a factura, factura cambiaria, factura de exportación y factura especial. |
| Receptor identificado (NIT, CUI o pasaporte) | El plazo general de la SAT, más amplio. Odoo no lo restringe. |
En los documentos a Consumidor Final, la pestaña FEL muestra el campo Límite de anulación con la fecha exacta. Pasado ese día, Odoo bloquea el envío con un mensaje que explica la regla.
19.5 Anulación extemporánea
Si necesita anular fuera de plazo, active Permitir anulación extemporánea en los ajustes. Con esa opción, Odoo envía la solicitud igual, deja constancia en el chatter y marca el documento como : la SAT traslada la petición a su proceso de autorización, que resuelve la Administración Tributaria.
El estado Anulación extemporánea pendiente se deduce de la fecha, no de la respuesta del certificador. Confirme siempre en el portal de su certificador o en la Agencia Virtual el resultado real de una anulación extemporánea antes de darla por hecha.
20.Cuando la certificación falla
Errores de la SAT, reintentos automáticos, cómo volver a certificar y qué pasa con un DTE que la SAT registró pero Odoo no alcanzó a guardar.
Hay dos familias de fallo, y se tratan distinto:
Error de datos
La SAT rechaza el contenido: un NIT que no existe, una frase que falta, la firma del emisor vencida. Reintentar no sirve; hay que corregir.
Error de servicio
El certificador no responde o se cayó la conexión. El documento es correcto y solo hace falta volver a intentar: Odoo lo pasa a contingencia (capítulo 21).
20.1 Comportamiento por defecto
En una factura normal, si la SAT rechaza el documento la confirmación se detiene y se muestra el error tal como lo devolvió el servicio. Nada queda a medias: la factura sigue en borrador. Solo si está activa Publicar asiento con errores SAT el asiento se publica y el documento queda en Error en datos FEL.
20.2 Certificación diferida
Para las ventas del sitio web —donde interrumpir el pedido es peor que retrasar la factura— la opción Diferir certificación FEL en ecommerce cambia esa conducta: el asiento se publica, el documento queda y una tarea programada reintenta cada 15 minutos hasta agotar los intentos configurados. Cada intento se registra en la pestaña FEL y en el chatter, con el número de intento y el texto del error.
Al agotarse los intentos, el documento pasa a Error en datos FEL y se crea la actividad Certificación FEL pendiente de corrección para el comercial de la factura o, si no tiene, para el Responsable de alertas FEL.
20.3 Cómo leer un error de la SAT
El rechazo de las figuras anteriores es una respuesta real del certificador y trae tres errores del validador de la SAT, cada uno con su numeral de las Reglas y Validaciones:
| Mensaje de la SAT | Qué significa y qué hacer |
|---|---|
FEL-GUI-18 | 2.2.4 «El NIT del Receptor [99999999] es inválido» |
El NIT del cliente no existe. Corrija el contacto —idealmente validándolo con el certificador— y vuelva a certificar. |
FEL-GUI-30 | 2.6.1 «El Tipo de Frase "Agente de Retención del IVA" debe
estar presente» |
El emisor está registrado como agente de retención y falta la frase de tipo 2. Agréguela al diario (capítulo 9). |
FEL-GUI-88 | 3.7.6 «La firma del emisor no está vigente…» |
Venció el certificado de firma del emisor. Solo el certificador puede renovarlo; mientras tanto ningún documento se certificará. |
| «Su usuario ha sido bloqueado por alto numero de errores» (Controles de Emisión) | Lo devuelve el propio certificador cuando un usuario acumula muchos rechazos seguidos: deja de enviar a la SAT. Corrija la causa de los errores y pida el desbloqueo. |
20.4 Volver a certificar
Corrija el dato y pulse Certificar FEL: el contador de intentos se reinicia y el documento se envía de nuevo. El botón aparece en documentos registrados que están o Error en datos FEL.
20.5 La bitácora de envíos
FE-SAT › Solicitudes de API › Solicitudes API FEL (la pantalla se titula FEL Logger) guarda cada llamada al certificador con el documento al que corresponde, el certificador y la fecha. Es la evidencia para reclamar a un proveedor.
20.6 DTE certificados que no llegaron a guardarse
Puede ocurrir que el certificador registre el documento ante la SAT y que, justo después, algo impida a Odoo guardar la factura: un corte de luz, un reinicio del servidor, un error en un paso posterior. Antes, al volver a intentarlo salía un segundo DTE por la misma venta. Odoo 20 lo evita así:
- Apenas el certificador responde, Odoo guarda un resguardo del DTE aparte de la factura.
- Si la factura llega a guardarse, el resguardo se borra solo.
- Si no, el resguardo queda en FE-SAT › Documentos Electrónicos › DTE sin registrar y la factura en borrador muestra un aviso: «Esta factura ya se certificó en SAT en un intento anterior que no llegó a guardarse».
- Al confirmarla de nuevo, Odoo reutiliza ese DTE en lugar de emitir otro, siempre que el contenido no haya cambiado. El chatter lo deja dicho. El punto de venta hace lo mismo cuando reenvía una venta.
Si la factura se modificó después del intento —otro monto, otro cliente—, Odoo no reutiliza el DTE y avisa. En ese caso el DTE del resguardo existe ante la SAT y hay que anularlo; una vez resuelto, un usuario Encargado Factura Electronica lo quita de la bandeja con Marcar como descartado.
21.Contingencia FEL
Seguir facturando cuando no hay Internet o el certificador está caído.
La SAT contempla que el emisor pueda quedarse sin servicio. Para eso entrega bloques de números de acceso: correlativos de nueve dígitos que identifican provisionalmente al documento mientras no se puede certificar. El cliente se lleva su comprobante con ese número, y el DTE se certifica después.
21.1 Configuración
En la pestaña FEL del diario, grupo Contingencia FEL GT:
| Campo | Contenido |
|---|---|
| Activar contingencia manualmente | Fuerza que todo lo del diario se emita en contingencia. Se usa cuando ya se sabe que el servicio está caído. |
| Número de Contingencia Actual Rango Inicial / Final | El bloque asignado por la SAT (entre 100000000 y 999999999). |
| Número de Contingencia Actual | El siguiente correlativo por usar. Avanza solo con cada documento. |
21.2 Qué ocurre en contingencia
- Si el certificador no responde al confirmar, o si el diario está en contingencia manual, el documento se publica con estado y toma un número de acceso del rango. El chatter explica por qué.
- Si está activa Nombre del Documento Establecido por FEL, el asiento se llama
DTE-. - El ticket muestra NUMERO DE ACCESO en lugar del número de autorización, y el botón PDF SAT y el QR apuntan al verificador de la SAT en modo contingencia.
- Cada diez minutos, una tarea programada intenta certificar todos los documentos en contingencia. Al lograrlo, el documento pasa a Certificada y obtiene su número de autorización definitivo.
La SAT da un plazo para certificar lo emitido en contingencia. Si un documento acumula muchos intentos fallidos, el sistema publica «Contingencia FEL sin resolver» en el chatter y crea una actividad para el comercial o el Responsable de alertas FEL; el umbral se configura en Avisar contingencia tras N intentos. Los reintentos continúan, pero ese aviso es la señal de que hay que revisar el servicio.
22.Punto de venta: configuración
Qué hay que dejar listo para que cada cobro salga certificado y el ticket sirva como factura electrónica.
En el punto de venta, la FEL no es un paso aparte: cada venta se certifica al cobrar y el ticket que imprime la caja es la representación impresa del DTE. Para que eso ocurra hacen falta tres cosas.
22.1 Lo que decide que un punto de venta emita FEL
| Requisito | Dónde se configura |
|---|---|
| Un diario de facturación con FEL activa | En Odoo 20 es el diario del punto de venta (el diario de venta con que se facturan las órdenes). De ahí toma el punto de venta el certificador, el código de establecimiento, el nombre comercial, la dirección, las frases y el rango de contingencia. |
| Facturación automática | Marca sola la factura en cada pedido, para que todo cobro genere DTE. |
| Un cliente por defecto | Normalmente Consumidor Final: se asigna a cada orden nueva, para que el cajero no tenga que elegirlo en cada venta. |
22.2 Opciones de facturación electrónica
Están en Punto de venta › Configuración › Ajustes, bloque Opciones Facturación Electrónica. Arriba de la página se elige a qué punto de venta se aplican los cambios. El bloque solo aparece si el diario de facturación tiene la FEL activa y solo lo ve el Administrador del punto de venta.
| Opción | Efecto |
|---|---|
| Mostrar Logo / Logo Personalizado | Imprime el logotipo en el ticket: el de la compañía, o el propio del punto de venta. |
| Mostrar Codigo QR y Tamaño QR | Imprime el QR de verificación y su tamaño en píxeles. Con INFILE el valor habitual es 110. |
| Mostrar Logo de FEL | Imprime el distintivo oficial de factura electrónica. |
| Facturación Automatica | Marca sola la factura al entrar a la pantalla de pago. |
| Deshabilitar Descarga de PDF | Evita que el navegador descargue el PDF de la factura en cada venta, que en una caja solo estorba. |
| Cliente por Defecto | Cliente que se asigna a cada orden nueva y al entrar a pagar si el cajero no eligió otro. |
| Ocultar Botón de Facturación | Quita el botón de factura de la pantalla de pago: si todo se factura, no hay nada que decidir. |
| Control de Precio / de Descuento / de Devolución | Desactivan en la pantalla de productos las teclas Precio, % y +/- del teclado numérico, para que el cajero no altere precios ni meta cantidades negativas. |
22.3 Contingencia, anulaciones y caja
El bloque de contingencia trae Habilitar Contigencia y los tres números del rango, que son los mismos del diario de facturación y se pueden editar desde aquí.
| Opción | Efecto |
|---|---|
| Cancelar Movimiento de Inventario | Al anular, cancela la salida de inventario y devuelve la existencia al almacén. |
| Cancelar Pago | Al anular, revierte el pago registrado en la sesión; en efectivo deja una línea de devolución en la caja. |
| Cancelar Orden | Al anular, deja la orden del punto de venta en estado cancelado. |
| Forzar Devolución hacia Pago Directamente | Al hacer una devolución, lleva directo a la pantalla de pago en vez de volver a la de productos. |
| Habilitar Abrir Caja Registradora (Opciones Visualización) | Agrega el botón Abrir Caja junto al de pago para abrir el cajón de dinero desde la interfaz, si hay una impresora o caja conectada. |
23.Punto de venta: la venta diaria
De abrir la caja a entregar el ticket con el número de autorización.
23.1 Abrir la caja
23.2 Capturar la venta
23.3 Elegir el cliente
Si la venta es a Consumidor Final no hay que hacer nada. Cuando el cliente pide factura con NIT, se pulsa el botón del cliente y se busca en la lista, o se crea en el momento.
Si el total llega a Q2,500.00 y el cliente es Consumidor Final, al validar aparece el aviso ERROR DE CLIENTE y la venta no se cierra hasta registrar el NIT, el CUI o el pasaporte del comprador. Es la misma regla del capítulo 12, aplicada en el momento del cobro. Si la orden no tiene cliente, el aviso es AGREGAR CLIENTE.
23.4 Cobrar y certificar
Al pulsar Validar, el punto de venta comprueba primero que hay conexión con el servidor; si la hay, crea la factura, la certifica y guarda el número de autorización, la serie y el número del DTE. Todo eso ocurre antes de que aparezca la pantalla Importe pagado.
23.5 El ticket como representación del DTE
Odoo 20 genera el ticket en el servidor, así que el documento impreso, el que se reimprime desde Órdenes y el que se envía por correo son idénticos.
CF.El encabezado sale de la razón social de la compañía y del diario de facturación (nombre comercial, dirección, municipio y departamento del establecimiento). Si el ticket muestra una dirección equivocada, el campo que hay que corregir está en la pestaña Configuración FEL Guatemala del diario. El QR lleva a la consulta del documento en el portal de INFILE cuando ese es el certificador, y al verificador de la SAT con los demás.
23.6 Consultar ventas ya certificadas
En Órdenes, cambie el filtro de Activo a Pagado. La lista agrega dos columnas propias y el buscador permite localizar una venta por Número FEL, Serie FEL o Número de Autorización FEL.
24.Punto de venta: anulaciones y devoluciones
Las dos formas de deshacer una venta y cuál corresponde en cada caso.
Anular el DTE
Se usa cuando la venta no debió existir: error de captura, cliente equivocado, operación cancelada. Deja el documento anulado ante la SAT.
Nota de crédito
Se usa cuando la venta existió y el cliente devuelve parte o todo. Exige receptor identificado: la SAT no admite notas a Consumidor Final.
24.1 Anular desde la caja
- Entre a Órdenes y cambie el filtro a Pagado.
- Seleccione la venta. A la derecha aparece el detalle y el botón rojo Anular FEL.
- Elija el Concepto de anulación (SAT).
- Escriba el motivo si se le pide y pulse Aplicar; si no se le pide, confirme.
Al confirmar, la caja avisa «Documento FEL anulado correctamente» y vuelve a la pantalla de productos. Según la configuración del capítulo 22, el sistema cancela la salida de inventario, revierte el pago y deja la orden cancelada. Las órdenes anuladas se consultan con el filtro Cancelado, donde siguen mostrando la serie y el número del DTE.
Un DTE del punto de venta se puede anular mientras la sesión de caja siga abierta. Una vez cerrada la sesión, el camino es la nota de crédito, porque anular movería asientos de un período ya cerrado; el sistema lo dice con ese mismo mensaje. Y como casi todas las ventas de caja son a Consumidor Final, aplica además el plazo de la SAT: el día de emisión y el día siguiente (capítulo 19). Odoo lo revisa antes de tocar inventario o pagos.
24.2 Devolución con nota de crédito
Para una devolución, seleccione la venta en Órdenes, toque la línea que regresa, indique la cantidad con el teclado y pulse Reembolso. Con Forzar Devolución hacia Pago Directamente, la caja pasa de inmediato a la pantalla de pago; al validar, se genera la nota de crédito electrónica enlazada al DTE original.
También se puede generar desde el backend: en Punto de venta › Órdenes › Órdenes, el botón Nota de Crédito crea la devolución completa, la cobra y la certifica en un solo paso. El sistema impide emitirla dos veces sobre la misma orden y, como en la caja, la rechaza si el receptor es Consumidor Final.
24.3 Cómo se ve en el backend
25.Punto de venta: contingencia
Vender sin Internet y certificar después, sin detener la caja.
La caja es donde la contingencia importa de verdad: una tienda no puede dejar de vender porque se cayó el enlace. El módulo cubre tres situaciones.
25.1 Sin conexión con el servidor
Al validar una venta, el punto de venta intenta contactar al servidor. Si no lo consigue y Habilitar Contigencia está activa, toma el siguiente número de acceso del rango, cierra la venta e imprime el ticket con ese número. Si se acabó el rango, avisa «Llegó al límite de números habilitados». Si la contingencia no está habilitada, la venta no se cierra y el sistema avisa que debe estar en línea para continuar.
25.2 Certificador caído
Si el servidor responde pero el certificador no, la factura se publica en con su número de acceso, igual que en contabilidad (capítulo 21), y la venta se cierra normalmente.
25.3 Contingencia global
Cuando ya se sabe que el certificador está caído, no tiene sentido que cada venta intente conectarse y espere el fallo. El modo de contingencia global hace que todas las ventas del punto de venta salgan directamente en contingencia. Se guarda en la configuración del punto de venta, de modo que sobrevive a un cierre del navegador. En esta versión no tiene un interruptor en pantalla: lo activa y lo desactiva su implementador.
25.4 Qué pasa después
Las ventas quedan en el backend con estado . La tarea programada las certifica cuando el servicio vuelve, y entonces obtienen su número de autorización definitivo.
Al cerrar una sesión de caja, el sistema revisa que ninguna factura haya quedado sin firma ni número de acceso. Si encuentra alguna, no deja cerrar y la lista con el mensaje «Favor verifique que estas facturas tengan firma o numero de acceso FEL». Las ventas en contingencia sí permiten cerrar, porque tienen número de acceso.
26.Punto de venta: permisos del cajero
Quién puede anular, quién debe justificar y qué caja ve cada usuario.
El módulo agrega a la ficha de cada usuario (Ajustes › Usuarios y empresas › Usuarios) una pestaña FEL con los permisos propios de la caja:
| Campo | Efecto |
|---|---|
| Tipo de Factura por Defecto | Tipo de DTE que usa el usuario cuando el diario deja elegir. |
| Cancelar en Punto de Venta | Habilita el botón Anular FEL y la generación de notas de crédito desde la caja y desde la orden. Sin él, el cajero no puede deshacer ventas. |
| Motivo de Cancelación en Punto de Venta | Obliga a escribir un motivo además del concepto de la SAT. |
| Punto de Venta por Defecto | Los puntos de venta asignados al usuario. Junto a ellos se muestra la ubicación de inventario de la que sale su mercadería. |
| Cuenta Analítica por Defecto en POS | Cuenta analítica que se asigna sola a las líneas de las facturas generadas por sus ventas; sirve para separar resultados por tienda o por vendedor. |
Asignar el Punto de Venta por Defecto no es cosmético: en compañías guatemaltecas aplica reglas de acceso que impiden a un cajero ver los puntos de venta, las órdenes, las sesiones, los almacenes y las ubicaciones de otra tienda. Los usuarios con el permiso de Administrador del punto de venta quedan exentos y ven todo.
27.Monitoreo: el menú FE-SAT
El tablero desde el que se controla, todos los días, qué se certificó y qué quedó pendiente.
La aplicación FE-SAT agrupa todos los documentos electrónicos, sin importar el diario ni el tipo. Está reservada al grupo Encargado Factura Electronica.
27.1 Documentos electrónicos
| Vista | Qué muestra |
|---|---|
| Todos los Documentos | Todo lo que llegó a tener trato con la SAT: certificado, con error, en contingencia, anulado o pendiente de anulación. |
| Documentos Certificados | Lo que quedó bien. |
| Documentos con Error | La bandeja de trabajo: lo que hay que corregir. |
| Documentos en Contingencia | Emitidos sin conexión, pendientes de certificar. |
| Documentos Cancelados | Anulados y anulaciones extemporáneas pendientes. |
| DTE sin registrar | Documentos que el certificador registró y que Odoo no alcanzó a guardar (capítulo 20). |
27.2 Rutina diaria sugerida
- Abrir Documentos con Error. Si hay algo, corregirlo y pulsar Certificar FEL.
- Abrir Documentos en Contingencia. Si hay documentos de días anteriores, revisar el servicio del certificador.
- Abrir DTE sin registrar. Si hay algo, confirmar de nuevo la factura correspondiente para que reutilice el DTE, o anularlo ante la SAT si ya no corresponde.
- Al cierre del mes, contrastar Documentos Certificados contra el libro de ventas y contra lo que muestra la Agencia Virtual de la SAT.
27.3 Sesiones y órdenes del punto de venta
28.La factura impresa y la cuenta ajena
La representación gráfica del DTE, sus diseños y el cobro por cuenta de terceros.
28.1 La representación impresa
El DTE legalmente es el XML; lo que se le entrega al cliente es su representación gráfica. Cuando el documento está certificado, el botón Imprimir de la factura usa el diseño FEL con los datos fiscales: número de autorización, fecha de certificación en hora de Guatemala, certificador con su NIT, las frases del régimen, el distintivo FEL y el código QR de verificación. Un documento en contingencia imprime su número de acceso.
28.2 Diseños y opciones
La pestaña Diseño de Factura FEL Guatemala de la compañía concentra la apariencia:
- 18 diseños: Vintage, Bold, Moderno, Pulido, Corporativo, Clásico, Infile Clásico, Odoo, Minimalista, Banda, Lateral, Compacto, Tarjetas, Ticket FEL GT y los cuatro de página completa (Panorama, Lienzo, Columna y Geométrico), que llevan la autorización y el QR en una franja al pie.
- Estilo: estilo de tabla, densidad, esquinas redondeadas, posición del QR, fuente y tamaño, tipo de pie de página.
- Colores del tema, del texto, de las filas alternas, de la compañía y del cliente.
- Columnas de la tabla y bloques del documento: numeración, código, unidad de medida, descuento, impuestos, imagen del producto, emisor, contacto del cliente, referencias, vencimiento, moneda, vendedor, total en letras, desglose de impuestos, pagos, notas, QR y logotipo FEL.
- Textos adicionales (información de pago y mensaje de cierre), marca de agua de texto o de imagen y firma.
- Vista previa en PDF genera el resultado sin tener que imprimir una factura real.
La plantilla se puede fijar además por documento, desde el campo Plantilla Factura de la factura.
El botón PDF certificador descarga el PDF que genera el propio proveedor, y PDF SAT abre el verificador público de la SAT. Son útiles cuando el cliente exige el formato oficial o cuando hay que demostrar qué quedó registrado.
28.3 Cobros por cuenta ajena
Algunas empresas cobran, dentro de su factura, montos que no son ingreso propio: derechos arancelarios, tasas de terceros, cobros por cuenta de otro contribuyente. La SAT lo contempla como cuenta ajena y exige detallar cada documento del tercero.
Se habilita en la pestaña Configuración Certificador FEL Guatemala de la compañía, grupo Configuración Cuenta Ajena, indicando el producto que representa el cobro y, si se desea, un NIT y una descripción por defecto. En las facturas aparece entonces el botón Cuenta Ajena, que abre un asistente donde se captura, por cada documento del tercero, el NIT, el número, la fecha, la descripción y la base. Al confirmar, el módulo agrega a la factura una línea sin impuestos con el total, guarda el detalle en la pestaña Cuenta Ajena y lo envía dentro del DTE. Si la factura vuelve a borrador, esa línea se elimina.
29.Usuarios, permisos y automatizaciones
Quién puede hacer qué, y qué hace el sistema solo.
29.1 Los grupos de seguridad
En la ficha del usuario, sección de permisos de Contabilidad, aparecen dos privilegios nuevos: Facturación Electrónica y Validador NIT/DPI.
| Grupo | Permite |
|---|---|
| Facturación Electrónica › Usuario Factura Electronica | Facturar, ver la pestaña FEL, anular DTE con Cancelar FEL, reintentar con Certificar FEL y generar notas de crédito y anulaciones desde las órdenes del punto de venta. |
| Facturación Electrónica › Encargado Factura Electronica | Todo lo anterior más la aplicación FE-SAT, las credenciales del certificador, el diseño de la factura, descartar DTE sin registrar y modificar contactos protegidos. |
| Validador NIT/DPI › Usuario | Dispara la consulta automática de NIT y DPI al crear o editar contactos. |
| Punto de venta › Usuario / Administrador | Operar la caja; el administrador ve todos los puntos de venta y sus ajustes. |
Recién instalado el módulo, ningún usuario pertenece a los grupos de facturación electrónica —ni siquiera el administrador—. Sin ellos no se ve la aplicación FE-SAT ni el botón Cancelar FEL. Asignar los grupos es el primer paso después de instalar.
29.2 Tareas programadas
| Tarea | Cada | Qué hace |
|---|---|---|
| Procesamiento de facturas en contingencia | 10 min | Reintenta certificar todo lo que quedó en contingencia y avisa cuando un documento acumula demasiados intentos. |
| Certificación FEL diferida (ecommerce) | 15 min | Reintenta los documentos pendientes de certificar hasta agotar los intentos configurados. |
30.Problemas frecuentes
Los avisos que más aparecen y qué hacer con cada uno.
| Síntoma | Causa y solución |
|---|---|
| «Favor agregar el tipo de Factura, previo a validarla» | El campo Tipo de Factura quedó en «Ninguno». Elíjalo en la pestaña FEL o configure un tipo por defecto en el diario. |
| «Por favor ingrese el registro fiscal de la empresa emisora» | Falta la razón social en el campo Registro fiscal de la compañía (capítulo 5). |
| «Por favor ingrese la fecha de vencimiento de la factura» | La FEL exige fecha de vencimiento incluso al contado. Revise los términos de pago. |
| «Las líneas de Factura deben de llevar impuesto (IVA)» o «El impuesto … no tiene clasificación del Impuesto» | Hay una línea sin impuesto o un impuesto sin Tipo impuesto FEL (capítulo 10). |
| «No se pueden emitir facturas con un monto mayor a Q 2,500.00 a un NIT CF» | Registre el NIT del cliente, o su CUI o pasaporte si no tiene NIT. |
| «Parece que el número NIT … no es válido» al guardar un contacto | Odoo 20 revisó el dígito verificador y el NIT está mal escrito. Verifíquelo con el cliente. |
| «El NIT … que ingresó no es válido» | El servicio de consulta del certificador no encontró ese NIT. Verifíquelo con el cliente; no lo fuerce marcando No Validar NIT con Certificador salvo que sepa que es correcto. |
| «El DPI no es un NIT: regístrelo en el contacto como identificador CUI» | Se escribió un DPI en el campo NIT. Muévalo al campo CUI. |
| «SAT ya no admite notas de crédito ni de débito con receptor Consumidor Final» | Anule el documento original dentro del plazo y emita uno nuevo con los datos correctos (capítulos 18 y 19). |
| «Seleccione la naturaleza de la operación de la Nota de Abono…» | Falta elegir la Naturaleza de la operación en la pestaña FEL (capítulo 18). |
| «El plazo para anular en línea este DTE a Consumidor Final venció el …» | Es un DTE a Consumidor Final fuera del plazo. Habilite la anulación extemporánea si corresponde, o gestione la anulación con la SAT. |
| «La anulación no fue confirmada por el certificador…» | El servicio no respondió. El documento sigue vigente ante la SAT: revise el chatter y reintente. No lo dé por anulado. |
| «La factura ya ha sido anulada en SAT, por lo que no puede ser restablecida a borrador» | Un DTE anulado no se reutiliza. Cree una factura nueva. |
| «Solo es posible anular facturas de sesiones abiertas, favor realice una nota de crédito» | La sesión de caja ya se cerró. Emita una nota de crédito (capítulo 24). |
| «Favor verifique que estas facturas tengan firma o numero de acceso FEL» | Hay ventas sin certificar en la sesión que intenta cerrar. Certifíquelas o déjelas en contingencia. |
Rechazo FEL-GUI-88 «La firma del emisor no está vigente» |
Venció el certificado de firma del emisor. Pida la renovación a su certificador. |
| «Su usuario ha sido bloqueado por alto numero de errores» | El certificador suspendió las emisiones del usuario tras muchos rechazos seguidos. Corrija la causa de los errores y pida al certificador el desbloqueo. |
| El documento se certificó pero no imprime el QR | Falta en el servidor la librería que dibuja los códigos de barras. Es un tema de instalación, no de configuración: solicítelo a su proveedor de hosting. |
| El ticket muestra una dirección equivocada | El encabezado del ticket sale del diario de facturación del punto de venta, no de la ficha de la compañía (capítulo 23). |
| Un documento se quedó «Pendiente de certificar» | Revise que las dos tareas programadas estén activas (capítulo 29) y lea el último error en la pestaña FEL. |
| Una factura en borrador dice que «ya se certificó en SAT en un intento anterior» | Confírmela sin cambiar su contenido: Odoo reutilizará ese DTE (capítulo 20). |
31.Anexos
Referencia rápida para consultar sin leer el capítulo completo.
31.1 Tipos de DTE
| Código | Documento | Se emite desde |
|---|---|---|
FACT | Factura | Factura de cliente |
FCAM | Factura cambiaria | Factura de cliente |
FEXP | Factura cambiaria de exportación | Factura de cliente |
FESP | Factura especial | Factura de proveedor |
NCRE | Nota de crédito | Rectificativa de cliente |
NDEB | Nota de débito | Botón «Nota de débito» |
NABN | Nota de abono | Rectificativa de cliente |
RECI | Recibo / donación / anticipo | Diario marcado como recibo |
31.2 Estados de certificación
| Estado | Acción típica |
|---|---|
| Sin certificar | Ninguna: es el estado de borradores e históricos. |
| Pendiente de certificar | Esperar el reintento automático. |
| Error en datos FEL | Corregir y pulsar Certificar FEL. |
| Certificada | Entregar al cliente. |
| Contingencia FEL | Esperar a que la tarea programada la certifique. |
| Anulación extemporánea pendiente | Confirmar el resultado con la SAT. |
| Anulada FEL | Emitir el documento correcto si corresponde. |
31.3 Conceptos de anulación (catálogo SAT)
| Código | Concepto |
|---|---|
001 | Error en los datos de la descripción |
002 | Error en el precio unitario |
003 | Error en el total del DTE |
004 | No cancelación del bien y/o servicio |
005 | Cancelación de la operación |
006 | Devolución de producto |
007 | Emisión con moneda incorrecta |
008 | Datos incorrectos del receptor |
009 | Otros (requiere detalle) |
31.4 Tipos de frase
| Tipo | Familia | Frases disponibles |
|---|---|---|
| 1 | Retención del ISR | 3 |
| 2 | Agente de Retención del IVA | 1 |
| 3 | No genera derecho a crédito fiscal | 1 |
| 4 | Exento o no afecto al IVA | 32 |
| 5 | Factura especial | 1 |
| 6 | Régimen Especial de Contribuyente Agropecuario | 2 |
| 7 | Regímenes electrónicos | 2 |
| 8 | Exento del ISR | 11 |
| 9 | Frases especiales (incluye nota de abono 16 y 17 y NCRE fuera de plazo 22) | 14 |
31.5 Disposiciones de la SAT vigentes (noviembre de 2026)
| Disposición | En Odoo |
|---|---|
| Tope de Q2,500.00 para Consumidor Final | Bloqueo al confirmar y al cobrar en la caja (capítulos 12 y 23). |
Anulación en línea de DTE a CF: día de emisión y día siguiente |
Fecha límite en la pestaña FEL; bloqueo o anulación extemporánea (capítulo 19). |
Sin notas de crédito ni de débito a CF | Bloqueo en contabilidad y en la caja (capítulo 18). |
| Concepto de anulación del catálogo 001–009 | Asistente de anulación y caja (capítulos 19 y 24). |
| Frase 9-22 solo en NCRE emitida más de dos meses después del origen, desde el 29/10/2026 | Se agrega sola (capítulos 7 y 18). |
31.6 Campos técnicos más consultados
| Campo | Contenido |
|---|---|
fel_gt_uuid | Número de autorización del DTE |
fel_gt_serie / fel_gt_dte_number | Serie y número |
fel_gt_dte_date | Fecha y hora de autorización |
fel_gt_state | Estado de la certificación |
fel_gt_invoice_type | Tipo de DTE |
fel_gt_contingency_access_number | Número de acceso de contingencia |
fel_gt_cancel_reason_code | Concepto de anulación |
fel_gt_cert_error | Último error devuelto por la SAT |
31.7 Glosario
| Término | Significado |
|---|---|
| DTE | Documento Tributario Electrónico. |
| FEL | Facturación Electrónica en Línea, el régimen de la SAT. |
| Certificador | Empresa autorizada que firma y registra los DTE. |
| Número de autorización | UUID que identifica al DTE ante la SAT. |
| Serie y número | Identificación del DTE asignada al certificarlo. |
| Código de establecimiento | Número que la SAT asigna a cada sucursal. |
| Frase | Leyenda normada que declara régimen o exención. |
| Adenda | Información adicional sin efecto tributario dentro del DTE. |
| Número de acceso | Correlativo provisional para emitir en contingencia. |
| CF | Consumidor Final: receptor no identificado. |
| CUI | Código Único de Identificación, el número del DPI. |
31.8 Enlaces útiles
- Verificador público de DTE de la SAT — comprobar un documento por su número de autorización (el botón PDF SAT lo abre ya cargado).
- Agencia Virtual de la SAT — consulta de documentos emitidos y recibidos.
- Portal de su certificador — consumo de créditos, estado del servicio y descarga de XML.