FEL Guatemala with SAP Business One: how certification works, NIT validation and the documents you need
By Zain Abbas, Kodenova · Updated
Guatemala does not let you send invoices straight to the tax authority. Every document goes through a certificador first. That one design choice shapes how an SAP Business One integration works, where errors come from and who you call when something fails. This guide covers the régimen, the documents, the NIT rules and the flow, from the point of view of someone who has connected SAP B1 to it.
The FEL régimen in short
FEL stands for Factura Electrónica en Línea. The SAT created it with Acuerdo de Directorio 13-2018, published on 2 May 2018, which replaced the older FACE regime. The SAT brought taxpayers in by groups, and according to EDICOM the transition was complete on 1 July 2023.
The main actors:
| Actor | Role |
|---|---|
| Emisor | Your company. Generates the DTE (documento tributario electrónico) as XML |
| Certificador | Authorized by the SAT. Validates, signs and assigns the authorization number |
| SAT | Receives the certified DTE, runs its own checks and makes it available for consultation |
| Receptor | Your customer. Receives the DTE and can verify it with the SAT |
What the certificador does
The SAT defines the certificador as the person or company it authorizes to certify the DTEs generated by issuers. In practice the certificador:
- Receives your XML.
- Checks it against the SAT’s Reglas y Validaciones.
- Applies its advanced electronic signature.
- Assigns the authorization number.
- Sends the certified DTE to you and to the SAT.
You choose and contract the certificador yourself. Well-known names include Infile (the provider Odoo’s Guatemala localization connects to), Digifact, which publishes its own SDKs, and Megaprint, which we have integrated with SAP Business One. The SAT publishes the current list of authorized certificadores on its portal. Check it before you sign anything, because each certificador has its own API, credentials and pricing.
DTE types
Each document has a short code in the XML. These are the ones you will meet most:
| Code | Document | Typical SAP B1 source |
|---|---|---|
| FACT | Factura | A/R invoice |
| FCAM | Factura cambiaria | A/R invoice on credit terms (needs payment terms) |
| FPEQ | Factura pequeño contribuyente | A/R invoice for issuers in the small-taxpayer regime |
| FCAP | Factura cambiaria pequeño contribuyente | Credit sale by a small taxpayer |
| FESP | Factura especial | Issued by the buyer when purchasing from someone who does not issue invoices |
| NCRE | Nota de crédito | A/R credit memo, referencing the original DTE |
| NDEB | Nota de débito | Debit memo, referencing the original DTE |
| NABN | Nota de abono | Credit to the customer’s account |
| RECI | Recibo | Receipt |
| RDON | Recibo por donación | Donation receipt |
Exports use a FACT with an export complement. Credit and debit notes carry a complement that references the original document, so your integration must keep the UUID of every certified invoice.
Most companies only need FACT, FCAM, NCRE and perhaps NDEB. Implement what you actually issue.
NIT, CUI and CF rules
Buyer identification causes more FEL rejections than anything else.
- NIT. The traditional NIT ends with a check digit calculated with módulo 11. A result of 10 is written as K, so
1234567-Kstyle NITs are valid. Validate it before you create the business partner, for example with our Guatemala NIT validator. - CUI. If the buyer has no NIT, the document uses the 13-digit CUI from the DPI. Published guidance also reports that NITs issued to individuals since 2023 are derived from the CUI. Do not hard-code an 8-digit length rule in SAP B1.
- CF. Consumidor final can replace the NIT only on sales or services under Q2,500, or under Q500 for water, electricity and telephone. This comes from Acuerdo Gubernativo 245-2022, which amended article 30 of the IVA regulation.
In SAP B1 the cleanest approach is to keep the NIT in the business partner’s tax ID field without hyphens, keep a generic CF customer for counter sales, and block posting when a CF invoice reaches Q2,500.
The certification flow, step by step
- User posts the document in SAP B1. The A/R invoice or credit memo is saved normally.
- The integration builds the XML. Header, emisor, receptor, items, taxes, frases and any complements (cambiaria, export, reference to the original).
- XML goes to the certificador’s API. Using your user and token for that certificador.
- The certificador validates and signs. If a rule fails, you get an error back and nothing is certified.
- A UUID is assigned. The authorization number looks like
dbb51ae2-3a62-4437-b8e9-42ecfb761156. - Serie and número are derived from the UUID. The serie is the first 8 hex characters (
dbb51ae2). The número is the decimal value of characters 9 to 16 without hyphens (3a624437→979518519). - The DTE goes to the SAT. The SAT checks it and records acceptance or rejection.
- The integration writes back. UUID, serie, número, certification date and the signed XML or PDF are stored on the SAP B1 document.
Because the serie and número are not correlative, your SAP B1 DocNum and the FEL número will never match. Users need to see both.
Contingency
The SAT’s 2018 public presentation of FEL states that the certificador sends the DTE to the SAT immediately, or within 24 hours in contingency, and lists a separate procedure for issuing documents in contingency. The details of that procedure are in the SAT technical documentation and in your certificador’s manual.
For SAP B1 the practical rule is simple. If the certificador does not answer, mark the document as pending, keep it in a queue, and retry with the same document. Never let a user re-post the invoice to “try again”, or you will certify the same sale twice.
Cancelling a DTE (anulación)
A certified DTE cannot be deleted. According to a SAT notice reported by Prensa Libre, since 1 September 2023 a DTE can be cancelled at the latest by the due date of the monthly IVA return. After that, the seller issues an NCRE that references the original invoice. Your integration should send the anulación to the certificador and update the SAP B1 document status, not just cancel the document in SAP.
How SAP Business One integrates with FEL
SAP B1 has no built-in FEL connection. The common setups are:
| Option | When it fits |
|---|---|
| Certificador’s own add-on | Standard documents, one company, little customization |
| Middleware or partner localization | Several countries on the same SAP B1 installation |
| Custom integration (Service Layer or DI API) | Special document flows, several databases, own monitoring |
Whatever you choose, check that it covers user-defined fields for UUID, serie, número and status, a monitor screen for pending and rejected documents, the invoice layout in Crystal Reports with the certification data, and NCRE and anulación, not only FACT. Our FEL Guatemala page lists the full scope we deliver.
Common errors and their real causes
| Error | Usual cause | Fix |
|---|---|---|
| NIT inválido | Typo, hyphen kept in the field, or a wrong check digit | Validate NITs with the NIT validator when creating the business partner |
| NIT not found | A valid-looking NIT that is not registered with the SAT | Query the NIT through the certificador before posting |
| CF over the limit | Counter sale of Q2,500 or more with CF | Block posting in SAP B1 and ask for NIT or CUI |
| Credit note rejected | Missing or wrong reference to the original UUID | Store the UUID on every invoice and copy it to the credit memo |
| Frase or escenario error | Tax regime frases not configured for the emisor | Align the frases with your SAT affiliation and your certificador |
| Duplicate certification | Manual re-post after a timeout | Retry the same document from a queue, never re-post |
None of these are exotic. They come from master data and retry logic, which is why we spend as much time on validations inside SAP B1 as on the API call itself. If you are choosing an approach, see our e-invoicing integration service.
Kodenova has delivered MegaPrint FEL integrations for SAP Business One in Guatemala and El Salvador. If you are planning a rollout or fixing rejections, contact us with your SAP B1 version, your certificador and the document types you issue.
Sources
- SAT Guatemala: Documentación técnica del régimen FEL
- SAT Guatemala: Factura Electrónica en Línea, presentación pública 2018 (hosted by USAC)
- Deloitte Guatemala: Tax Newsletter on FEL (Acuerdo de Directorio 13-2018)
- EY: Guatemala, nuevas reformas a los requisitos de los documentos tributarios (Acuerdo Gubernativo 245-2022)
- EDICOM: Cómo funciona FEL, factura electrónica en línea en Guatemala
- Prensa Libre: Anulación de documentos tributarios electrónicos
- Odoo documentation: Guatemala fiscal localization
Related services
Frequently asked questions
What is a certificador in FEL Guatemala?
A person or company authorized by the SAT to certify the DTEs that issuers generate. The certificador checks the document against SAT rules, adds its advanced electronic signature, assigns the authorization number and sends the DTE to the SAT.
When can I use CF (consumidor final) on a FEL invoice?
Acuerdo Gubernativo 245-2022 allows CF only on sales or services under Q2,500, or under Q500 for water, electricity and telephone. Above those amounts you must record the buyer's NIT, or the CUI if the buyer has no NIT.
How are the serie and número of a FEL invoice assigned?
They come from the UUID the certificador assigns. The serie is the first 8 hexadecimal characters, and the número is the decimal value of characters 9 to 16, ignoring hyphens.
Can I cancel a FEL invoice?
Yes, through an anulación. A SAT notice reported by Prensa Libre says that since 1 September 2023 a DTE can be cancelled at the latest by the due date of the monthly IVA return. After that, you issue a nota de crédito (NCRE).
Does SAP Business One support FEL by itself?
Not directly. You need an integration or add-on that converts SAP B1 documents into the SAT XML format, calls your certificador's API and writes the UUID, serie and número back to the document.
Ready to get started?
Tell us what you need. You get a clear technical answer, a fixed scope and a price, usually within 24 hours.
