E-Invoice Error Reference
1350+ documented errors for Peppol, UBL, CII, and EN16931 validation errors.
1350 errors found · Page 9 of 27
DE-R-020DEUEN 16931AUTO-FIXDebited account identifier (BT-91) should contain a valid IBAN if code 59...
Invalid debit IBAN format. When payment means code 59 (SEPA direct debit) is used, the debited account (BT-91) must contain a valid IBAN.
DE-R-023-1DEUEN 16931AUTO-FIXCredit transfer details missing. When payment code 30 or 58 (credit...
Credit transfer details missing. When payment code 30 or 58 (credit transfer) is used, the Credit Transfer group (BG-17) with bank account details must be provided.
DE-R-024-1DEUEN 16931AUTO-FIXPayment card details missing. When payment code 48, 54, or 55 (payment card)...
Payment card details missing. When payment code 48, 54, or 55 (payment card) is used, the Payment Card Information group (BG-18) must be provided.
PEPPOL-EN16931-R001Peppol BIS 3.0AUTO-FIXBusiness process identifier required
Business process MUST be provided. Check the `cbc:ProfileID` element in your invoice XML.
PEPPOL-EN16931-R003EN 16931INPUTBuyer reference or order reference required
A buyer reference (BT-10) or purchase order reference (BT-13) MUST be provided in Peppol invoices.
PEPPOL-EN16931-R004EN 16931AUTO-FIXThe specification identifier must be exactly...
The specification identifier must be exactly "urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0". This identifies the invoice as PEPPOL BIS Billing 3.0 compliant.
PEPPOL-EN16931-R044EN 16931AUTO-FIXCharge on price level is NOT allowed. Only value 'false' allowed.
Price level allowances/charges must be allowances only (ChargeIndicator = false). Surcharges at the item price level are not allowed in PEPPOL - they must be at line or document level.
PEPPOL-EN16931-R080EN 16931BLOCKEDToo many project references
The invoice has more than one project reference at the document level. Peppol allows only a single project reference per invoice. If your invoice relates to multiple projects, use only the primary one at the document level.
PEPPOL-EN16931-R100EN 16931AUTO-FIXOnly one invoiced object is allowed pr line
Only one invoiced object identifier is allowed per invoice line. Each line can reference at most one object (contract, order, etc.).
PEPPOL-EN16931-R110EN 16931AUTO-FIXStart date of line period MUST be within invoice period.
The start date of a line period must fall within the invoice period. Line periods cannot extend before the overall invoice period begins.
PEPPOL-EN16931-R111EN 16931AUTO-FIXInvoice line billing period extends beyond invoice dates
One of your invoice lines has a billing period end date that falls outside the overall invoice period. For example, the invoice covers January but a line item says it ends in February.
PEPPOL-EN16931-CL008EN 16931AUTO-FIXElectronic address identifier scheme must be from the codelist "Electronic...
The electronic address identifier scheme must be from the PEPPOL Electronic Address Identifier Scheme codelist. This identifies what type of endpoint ID is being used (GLN, PEPPOL ID, etc.).
UBL-SR-44EN 16931AUTO-FIXAn Invoice may only have one unique PaymentID, but the PaymentID may be used...
Your invoice has multiple different PaymentID values across PaymentMeans elements. EN16931 allows only one unique payment reference value, though it can be repeated across multiple payment means.
UBL-SR-48EN 16931AUTO-FIXInvoice line has wrong number of tax categories
Each invoice line must have exactly one tax category classification. One of your lines has either no tax category or multiple tax categories, which is not allowed.
DE-R-031DEUEN 16931AUTO-FIXIf the group "DIRECT DEBIT" (BG-19) is delivered, the element "Debited...
Debited account missing. When direct debit (BG-19) is used, the debited account identifier (BT-91) containing the buyer's IBAN is required.
PEPPOL-EN16931-P0112EN 16931AUTO-FIXInvoice type code 326 or 384 are only allowed when both buyer and seller are...
Invoice type codes 326 (partial invoice) and 384 (corrective invoice) are only allowed between German organizations.
BR-26EN 16931BLOCKEDEach Invoice line (BG-25) shall contain the Item net price (BT-146).
Each Invoice line (BG-25) shall contain the Item net price (BT-146).. This applies to the `cbc:PriceAmount` element in the invoice XML.
PEPPOL-EN16931-CL002PEPPOL_BISAUTO-FIXReason code MUST be according to subset of UNCL 5189 D.16B.
The allowance reason code must be from the UNCL 5189 D.16B subset. This code explains why a discount or allowance is being applied.
PEPPOL-EN16931-CL003PEPPOL_BISAUTO-FIXReason code MUST be according to UNCL 7161 D.16B.
The charge reason code must be from the UNCL 7161 D.16B list. This code explains why a surcharge or additional charge is being applied.
BR-28EN 16931INPUTThe Item gross price (BT-148) shall NOT be negative.
The Item gross price (BT-148) shall NOT be negative.. Review the `cbc:BaseQuantity` element.
BR-31EN 16931BLOCKEDEach Document level allowance (BG-20) shall have a Document level allowance...
Each Document level allowance (BG-20) shall have a Document level allowance amount (BT-92).. Check the `cac:AllowanceCharge` element in your invoice XML.
BR-36EN 16931BLOCKEDTax total amount required
Each Document level charge (BG-21) shall have a Document level charge amount (BT-99).. Check the `cac:AllowanceCharge` element in your invoice XML.
BR-41EN 16931BLOCKEDEach Invoice line allowance (BG-27) shall have an Invoice line allowance...
Seller should provide contact details for invoice queries.
BR-43EN 16931BLOCKEDAllowance/charge reason required
Each Invoice line charge (BG-28) shall have an Invoice line charge amount (BT-141).. Check the `cac:AllowanceCharge` element in your invoice XML.
BR-50EN 16931BLOCKEDA Payment account identifier (BT-84) shall be present if Credit transfer...
A Payment account identifier (BT-84) shall be present if Credit transfer (BG-17) information is provided.. This applies to the `cbc:ID` element in the invoice XML.
BR-56EN 16931BLOCKEDEach Seller tax representative party (BG-11) shall have a Seller tax...
Invoice line allowance must have either reason code or text explanation.
BR-61EN 16931BLOCKEDIf the Payment means type code (BT-81) means SEPA credit transfer, the...
If the Payment means type code (BT-81) means SEPA credit transfer, the Payment account identifier (BT-84) shall be an IBAN.. This applies to the `cbc:PaymentMeansCode` element in the invoice XML.
BR-CO-11EN 16931BLOCKEDLine amount calculation error
Line net amount must equal quantity × price, adjusted for any line allowances/charges.
BR-CO-12EN 16931BLOCKEDSum of charges on document level (BT-108) = Σ Document level charge amount...
Sum of charges on document level (BT-108) = Σ Document level charge amount (BT-99).. Verify the value in `cbc:Amount` matches the expected calculation.
BR-CO-14EN 16931BLOCKEDTax subtotal taxable amount mismatch
The taxable amount in each tax subtotal must equal the sum of line amounts with that tax category.
BR-CO-16EN 16931AUTO-FIXPayable amount calculation error
Amount due for payment (BT-115) = Invoice total amount with VAT (BT-112) - Paid amount (BT-113) + Rounding amount (BT-114).. This applies to the `cbc:PayableAmount` element in the invoice XML.
BR-CO-17EN 16931BLOCKEDA VAT Category Tax Amount (BT-117) doesn't equal the Taxable Amount (BT-116)...
A VAT Category Tax Amount (BT-117) doesn't equal the Taxable Amount (BT-116) multiplied by the Rate (BT-119). The tax calculation is mathematically wrong.
BR-AE-08EN 16931AUTO-FIXReverse charge taxable amount doesn't add up
The taxable amount in the reverse charge VAT breakdown does not match the sum of reverse charge line items, charges, and allowances. The taxable base must equal: sum of line amounts with category AE, plus charges with category AE, minus allowances with category AE.
PEPPOL-EN16931-R040EN 16931AUTO-FIXDiscount or surcharge amount doesn't match the calculation
A discount or surcharge amount does not match its base amount multiplied by the percentage. When all three values are provided (amount, base amount, and percentage), they must be consistent: amount = base amount × percentage ÷ 100.
UBL-DT-01EN16931AUTO-FIXAmounts shall be decimal up to two fraction digits
Your invoice contains amount values with more than 2 decimal places. EN16931 requires all monetary amounts to have maximum 2 decimal digits (e.g., 100.00 not 100.001).
PEPPOL-EN16931-R041EN 16931AUTO-FIXDiscount or surcharge is missing the base amount
When you specify a percentage for a discount or surcharge, you must also provide the base amount that the percentage applies to. For example, if you give a 10% discount, the invoice must state what the 10% is calculated on.
UBL-DT-06EN 16931AUTO-FIXBinary object elements shall contain the mime code attribute
Your invoice contains an embedded attachment (EmbeddedDocumentBinaryObject) but the mimeCode attribute is missing. The MIME type (e.g., application/pdf, image/png) must be specified.
PEPPOL-EN16931-R042EN 16931AUTO-FIXDiscount or surcharge is missing the percentage
When you provide a base amount for a discount or surcharge, you must also provide the percentage. The percentage shows what portion of the base amount the discount or surcharge represents.
PEPPOL-EN16931-R046EN 16931BLOCKEDItem net price MUST equal (Gross price - Allowance amount) when gross price...
When gross price is provided, the net price must equal gross price minus the allowance amount. This validates the price calculation is mathematically correct.
PEPPOL-EN16931-R120EN 16931BLOCKEDLine amount does not match calculation
The net amount on one of your invoice lines does not match when we recalculate it from the quantity, price, and any line-level discounts or surcharges. This usually means a rounding error or data entry mistake in your accounting system.
BR-AF-07EN 16931BLOCKEDWhen a document level charge uses the IGIC VAT category, the VAT rate must...
When a document level charge uses the IGIC VAT category, the VAT rate must be 0% or greater.
BR-AF-08EN 16931BLOCKEDFor each IGIC VAT rate, the taxable amount must equal the sum of line net...
For each IGIC VAT rate, the taxable amount must equal the sum of line net amounts plus charges minus allowances where all use IGIC with that same rate. This is a calculation consistency check.
BR-AF-09EN 16931BLOCKEDThe VAT category tax amount for IGIC must equal the taxable amount...
The VAT category tax amount for IGIC must equal the taxable amount multiplied by the IGIC rate. This verifies the tax calculation is mathematically correct.
PEPPOL-EN16931-R002Peppol BIS 3.0AUTO-FIXNo more than one note is allowed on document level, unless both parties are...
Your invoice has multiple document-level notes, but Peppol only allows one. The exception is when both the seller and buyer are German organisations — in that case, multiple notes are permitted.
PEPPOL-EN16931-R005Peppol BIS 3.0AUTO-FIXVAT accounting currency code MUST be different from invoice currency code...
When a VAT accounting currency is provided, it must be different from the invoice currency. If they are the same, the VAT accounting currency field should not be used at all.
IN-MULTIPLE-VAT-CATEGORIESpeppol-bis-3CONFIRMMultiple VAT categories on invoice
Having multiple VAT categories (S, E, AE, etc.) on the same invoice requires careful validation and handling.
IN-CUSTOMIZATION-FORMATPeppol BIS 3.0AUTO-FIXCustomizationID format recommendation
CustomizationID should follow Peppol BIS Billing 3.0 format
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.
DE-R-018DEUPEPPOL_BISCONFIRMInvalid Skonto format. Cash discount terms in German invoices must follow the format: #SKONTO#TAGE=N#PROZENT=N.NN# with
Invalid Skonto format. Cash discount terms in German invoices must follow the format: #SKONTO#TAGE=N#PROZENT=N.NN# with optional #BASISBETRAG=N#. Must be uppercase with no extra whitespace.
PEPPOL-EN16931-R051Peppol BIS 3.0AUTO-FIXCurrency codes are not consistent
All amounts in the invoice must use the same currency, matching the document currency code. For example, if the invoice is in EUR, every amount, tax total, line item, and allowance/charge must also use EUR as the currency code. The only exception is the accounting currency tax amount (BT-111).
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→