E-Invoice Error Reference
1374+ documented errors for Peppol, UBL, CII, and EN16931 validation errors.
1374 errors found · Page 7 of 28
BR-CO-03EN 16931AUTO-FIXVAT point date and VAT point date code are mutually exclusive
Value added tax point date (BT-7) and Value added tax point date code (BT-8) are mutually exclusive. You cannot specify both - use one or the other to indicate when VAT becomes due.
BR-K-01en16931BLOCKEDIntra-community supply VAT treatment
VAT category K (intra-community) requires zero VAT and both party VAT numbers.
BR-CO-06EN 16931AUTO-FIXSurcharge reason text does not match the reason code
The surcharge (extra charge) reason code and the reason text on your invoice describe different types of charges. For example, code FC means "Freight" but the text says something else. These must match.
BR-G-01EN 16931BLOCKEDExport VAT category requirements
VAT category G (export) requires exemption reason and must have zero VAT.
BR-CO-08EN 16931AUTO-FIXLine charge reason and code must match
Invoice line charge reason code (BT-145) and Invoice line charge reason (BT-144) shall indicate the same type of charge reason. The reason text must semantically match the UNTDID 7161 code.
BR-CO-09EN 16931AUTO-FIXVAT number is missing the country code
A VAT identification number in this invoice does not start with a valid two-letter country code. European VAT numbers must be prefixed with the country code (e.g. DE for Germany, NL for the Netherlands, SE for Sweden). Greece may use EL instead of GR.
BR-CO-19EN 16931AUTO-FIXInvoice period must have at least one date
If Invoicing period (BG-14) is used, the Invoicing period start date (BT-73) or the Invoicing period end date (BT-74) shall be filled, or both.
PEPPOL-EN16931-CL001Peppol BIS 3.0AUTO-FIXMime code must be according to subset of IANA code list.
Mime code must be according to subset of IANA code list.. This validation rule ensures Invoice compliance with Peppol BIS 3.0.
BR-CO-20EN 16931AUTO-FIXInvoice line period dates required
If Invoice line period (BG-26) is used, the Invoice line period start date (BT-134) or the Invoice line period end date (BT-135) shall be filled, or both.
cvc-complex-type.2.4.axsdBLOCKEDInvoice XML structure does not match the required schema
Your invoice file has a structural problem — required data elements are missing, in the wrong position, or unexpected elements are present. This is an XML Schema validation error, which means the basic structure of the file does not conform to the e-invoicing standard (UBL 2.1 or CII D16B). This is different from a business rule error: business rules check whether the data makes sense, while this error means the file format itself is wrong.
BR-AE-07EN 16931AUTO-FIXDocument level charge with reverse charge must have 0% VAT rate
When a document level charge uses the reverse charge VAT category, the VAT rate must be 0%. Charges in reverse charge scenarios follow the same zero-rate rule.
BR-CO-21EN 16931AUTO-FIXDocument allowance reason required
Each Document level allowance (BG-20) shall contain a Document level allowance reason (BT-97) or a Document level allowance reason code (BT-98), or both.
BR-AE-09EN 16931AUTO-FIXReverse charge VAT breakdown tax amount must be zero
The VAT category tax amount for reverse charge must be 0. Since reverse charge means buyer accounts for VAT, the seller's VAT amount is always zero.
BR-CO-23EN 16931AUTO-FIXInvoice Line Allowance Reason Required
Each Invoice line allowance (BG-27) shall contain an Invoice line allowance reason (BT-139) or an Invoice line allowance reason code (BT-140), or both.
BR-DEC-21en16931BLOCKEDTax total: max 2 decimals
TaxTotal/TaxAmount allows maximum 2 decimal places.
BR-S-01EN 16931BLOCKEDStandard rate must be in VAT breakdown
If any line uses VAT category S, VAT breakdown must include S category.
BR-B-02EN 16931INPUTWhen using this VAT category, the seller must have a VAT identifier, tax...
When using this VAT category, the seller must have a VAT identifier, tax registration, or tax representative (applies to `cac:InvoiceLine`, rule BR-B-02).
BR-CO-24EN 16931AUTO-FIXInvoice Line Charge Reason Required
Each Invoice line charge (BG-28) shall contain an Invoice line charge reason (BT-144) or an Invoice line charge reason code (BT-145), or both.
BR-O-01EN 16931BLOCKEDOut of scope VAT category requirements
VAT category O (out of scope) must not have a VAT percentage.
BR-O-12EN 16931BLOCKEDInconsistent line VAT with "Not subject to VAT". All invoice lines must use...
Inconsistent line VAT with "Not subject to VAT". All invoice lines must use VAT category O when the invoice VAT breakdown uses "Not subject to VAT".
IT-R-003ITACIUS-IT (Italy)INPUTNatura code required for zero VAT
Italian invoices with zero VAT must specify Natura code.
BR-E-06EN 16931AUTO-FIXExempt VAT must be zero
VAT amount for category E must be zero.
BR-DEC-01EN 16931AUTO-FIXDocument allowance: max 2 decimals
Document level allowance amount allows maximum 2 decimal places.
BR-O-14EN 16931BLOCKEDInconsistent charge VAT with "Not subject to VAT". Document charges must use...
Inconsistent charge VAT with "Not subject to VAT". Document charges must use VAT category O when the invoice uses "Not subject to VAT".
DE-R-016DEUEN 16931AUTO-FIXVAT identifier is missing. German invoices using VAT codes S, Z, E, AE, K,...
VAT identifier is missing. German invoices using VAT codes S, Z, E, AE, K, G, L, or M must include either Seller VAT ID (BT-31), Tax registration ID (BT-32), or Tax Representative.
SDI-00311ITAFatturaPABLOCKEDRitenuta d'acconto calculation error
Withholding tax (ritenuta d'acconto) amount must exactly match the base amount × declared rate calculation. Any discrepancy causes rejection.
SDI-00400ITAFatturaPABLOCKEDXML schema validation failure
FatturaPA XML must conform exactly to the official XSD schema published by Agenzia delle Entrate. Any structural deviation causes rejection.
BR-E-07EN 16931AUTO-FIXExempt requires exemption reason
VAT category E must have exemption reason.
BR-DEC-02EN 16931AUTO-FIXDocument allowance base: max 2 decimals
Document level allowance base amount allows max 2 decimals.
BR-DEC-05EN 16931AUTO-FIXDocument level charge: max 2 decimals
Document level charge amount (BT-99) allows max 2 decimal places.
BR-DEC-06EN 16931AUTO-FIXDocument level charge base: max 2 decimals
Document level charge base amount (BT-100) allows max 2 decimal places.
BR-DEC-09EN 16931AUTO-FIXSum of line amounts: max 2 decimals
Sum of Invoice line net amount (BT-106) allows max 2 decimal places. This is the LineExtensionAmount in LegalMonetaryTotal.
BR-DEC-10EN 16931AUTO-FIXThe allowed maximum number of decimals for the Sum of allowanced on document...
The sum of document level allowances has too many decimal places. This total must have a maximum of 2 decimal places.
PEPPOL-EN16931-R007Peppol BIS 3.0AUTO-FIXBusiness process identifier has wrong format
The ProfileID in your invoice does not follow the required Peppol format. It must be "urn:fdc:peppol.eu:2017:poacc:billing:01:1.0" for standard billing.
BR-DEC-12EN 16931AUTO-FIXInvoice total amount without VAT: max 2 decimals
The Invoice total amount without VAT (TaxExclusiveAmount, BT-109) allows a maximum of 2 decimal places.
BR-DEC-15EN 16931AUTO-FIXAccounting currency VAT amount: max 2 decimals
When a tax/accounting currency is specified (BT-6), the Invoice total VAT amount in accounting currency (BT-111) must have a maximum of 2 decimal places.
BR-DEC-17EN 16931AUTO-FIXRounding amount: max 2 decimals
The rounding adjustment amount has too many decimal places. Rounding amounts must have a maximum of 2 decimal places.
BR-DEC-18EN 16931AUTO-FIXPayable amount: max 2 decimals
PayableAmount allows maximum 2 decimal places.
BR-CL-08EN 16931AUTO-FIXInvoice note has an invalid subject code
One of the notes on your invoice uses a subject code that is not in the official UN/CEFACT code list (UNCL 4451). The subject code indicates the type of note — for example, general information, regulatory, or surcharge.
BR-DEC-19EN 16931AUTO-FIXVAT taxable amount: max 2 decimals
The allowed maximum number of decimals for the VAT category taxable amount (BT-116) is 2. This applies to the `cbc:TaxableAmount` element in the invoice XML.
BR-DEC-20EN 16931AUTO-FIXVAT tax amount: max 2 decimals
TaxSubtotal/TaxAmount allows maximum 2 decimal places.
BR-DEC-23EN 16931AUTO-FIXLine net amount: max 2 decimals
InvoiceLine/LineExtensionAmount (BT-131) allows maximum 2 decimal places.
BR-38EN 16931AUTO-FIXDocument level charge reason required
A document level charge is missing both a reason text (BT-104) and reason code (BT-105). At least one must be provided to explain what this charge is for.
UBL-CR-412EN16931AUTO-FIXA UBL invoice should not include the PaymentMeans PaymentDueDate
Your invoice contains a PaymentMeans PaymentDueDate element which is not allowed in EN16931 invoices. Use PaymentTerms instead.
DE-R-003DEUEN 16931INPUTThe element "Seller city" (BT-37) shall be provided.
Seller city is missing. German invoices must include the seller's city in the address (BT-37).
BR-AF-10EN 16931AUTO-FIXIGIC VAT breakdown must not have exemption reason
An IGIC VAT breakdown must NOT have a VAT exemption reason code or text. IGIC is a positive tax (like standard VAT), so exemption reasons are not applicable.
KSEF-005POLKSeFBLOCKEDVAT rate invalid for item type
Polish VAT rates (23%, 8%, 5%, 0%, ZW-exempt, NP-not subject) must match item classification rules per Polish VAT law and PKWiU classification.
DE-R-005DEUEN 16931INPUTSeller contact name required (XRechnung)
German XRechnung invoices must include a contact person name (BT-41) in the Seller Contact group (BG-6).
DE-R-006DEUEN 16931INPUTSeller contact telephone required (XRechnung)
German XRechnung invoices must include a telephone number (BT-42) for the seller contact person in the Seller Contact group (BG-6).
DE-R-007DEUEN 16931INPUTSeller contact email required (XRechnung)
German XRechnung invoices must include an email address (BT-43) for the seller contact person in the Seller Contact group (BG-6).
Handle These Errors Automatically in Your Pipeline
The compliance engine auto-remediates validation errors with controlled safety policies and evidence pack generation.
Get API Access→