Peppol EN16931 rules extend the core CEN EN 16931 e-invoicing standard with additional interoperability and network-specific requirements mandated for Peppol participants. These rules ensure consistent business semantics, code lists, and trading compliance for cross-border document exchange within the Peppol network.
| Identifier | Message |
|---|---|
| DE-R-001 | An invoice shall contain information on "PAYMENT INSTRUCTIONS" (BG-16). |
| DE-R-014 | The element "VAT category rate" (BT-119) shall be provided. |
| DE-R-016 | If one of the VAT codes S, Z, E, AE, K, G, L, or M is used, an invoice shall contain at least one of the following elements: "Seller VAT identifier" (BT-31) or "Seller tax registration identifier" (BT-32) or "SELLER TAX REPRESENTATIVE PARTY" (BG-11). |
| DE-R-017 | The element "Invoice type code" (BT-3) should only contain the following values from code list UNTDID 1001: 326 (Partial invoice), 380 (Commercial invoice), 384 (Corrected invoice), 389 (Self-billed invoice), 381 (Credit note), 875 (Partial construction invoice), 876 (Partial final construction invoice), 877 (Final construction invoice). |
| DE-R-019 | The element "Payment account identifier" (BT-84) should contain a valid IBAN if code 58 SEPA is provided in "Payment means type code" (BT-81). |
| DE-R-020 | The element "Debited account identifier" (BT-91) should contain a valid IBAN if code 59 SEPA is provided in "Payment means type code" (BT-81). |
| DE-R-023-1 | If "Payment means type code" (BT-81) contains a code for credit transfer (30, 58), "CREDIT TRANSFER" (BG-17) shall be provided. |
| DE-R-023-2 | If "Payment means type code" (BT-81) contains a code for credit transfer (30, 58), BG-18 and BG-19 shall not be provided. |
| DE-R-024-1 | If "Payment means type code" (BT-81) contains a code for payment card (48, 54, 55), "PAYMENT CARD INFORMATION" (BG-18) shall be provided. |
| DE-R-024-2 | If "Payment means type code" (BT-81) contains a code for payment card (48, 54, 55), BG-17 and BG-19 shall not be provided. |
| DE-R-025-1 | If "Payment means type code" (BT-81) contains a code for direct debit (59), "DIRECT DEBIT" (BG-19) shall be provided. |
| DE-R-025-2 | If "Payment means type code" (BT-81) contains a code for direct debit (59), BG-17 and BG-18 shall not be provided. |
| DE-R-026 | If "Invoice type code" (BT-3) contains the code 384 (Corrected invoice), "PRECEDING INVOICE REFERENCE" (BG-3) should be provided at least once. |
| DE-R-031 | If the group "DIRECT DEBIT" (BG-19) is delivered, the element "Debited account identifier" (BT-91) shall be provided. |
| DK-R-003 | If ItemClassification is provided from Danish suppliers, UNSPSC version 19.05.01 or 26.08.01 should be used. |
| DK-R-004 | When specifying non-VAT Taxes for Danish customers, Danish suppliers MUST use the AllowanceChargeReasonCode="ZZZ" and MUST be specified in AllowanceChargeReason; Either as the 4-digit Tax category or must include a #, but the # is not allowed as first and last character |
| DK-R-005 | For Danish suppliers the following Payment means codes are allowed: 1, 10, 31, 42, 48, 49, 50, 58, 59, 93 and 97 |
| DK-R-006 | For Danish suppliers bank account and registration account is mandatory if payment means is 31 or 42 |
| DK-R-007 | For Danish suppliers PaymentMandate/ID and PayerFinancialAccount/ID are mandatory when payment means is 49 |
| DK-R-008 | For Danish Suppliers PaymentID is mandatory and MUST start with 01#, 04# or 15# (kortartkode), and PayeeFinancialAccount/ID (Giro kontonummer) is mandatory and must be 7 or 8 numerical characters long, when payment means equals 50 (Giro) |
| DK-R-009 | For Danish Suppliers if the PaymentID is prefixed with 04# or 15# the 16 digits instruction Id must be added to the PaymentID eg. "04#1234567890123456" when Payment means equals 50 (Giro) |
| DK-R-010 | For Danish Suppliers the PaymentID is mandatory and MUST start with 71#, 73# or 75# (kortartkode) and CreditAccount/AccountID (Kreditornummer) is mandatory and MUST be exactly 8 characters long, when Payment means equals 93 (FIK) |
| DK-R-011 | For Danish Suppliers if the PaymentID is prefixed with 71# or 75# the 15-16 digits instruction Id must be added to the PaymentID eg. "71#1234567890123456" when payment Method equals 93 (FIK) |
| DK-R-016 | For Danish Suppliers, a Credit note cannot have a negative total (PayableAmount) |
| GR-R-001-1 | When the Supplier is Greek, the Invoice Id should consist of 6 segments |
| GR-R-001-2 | When the Supplier is Greek, the Invoice Id first segment must be a valid TIN Number and match either the Supplier's or the Tax Representative's Tin Number |
| GR-R-001-3 | When the Supplier is Greek, the Invoice Id second segment must be a valid Date that matches the invoice Issue Date |
| GR-R-001-4 | When Supplier is Greek, the Invoice Id third segment must be a positive integer |
| GR-R-001-5 | When Supplier is Greek, the Invoice Id in the fourth segment must be a valid greek document type |
| GR-R-001-6 | When Supplier is Greek, the Invoice Id fifth segment must not be empty |
| GR-R-001-7 | When Supplier is Greek, the Invoice Id sixth segment must not be empty |
| GR-R-002 | Greek Suppliers must provide their full name as they are registered in the Greek Business Registry (G.E.MH.) as a legal entity or in the Tax Registry as a natural person |
| GR-R-003 | For the Greek Suppliers, the VAT must start with 'EL' and must be a valid TIN number |
| GR-R-005 | Greek Suppliers must provide the full name of the buyer |
| GR-R-006 | Greek Suppliers must provide the VAT number of the buyer, if the buyer is Greek |
| GR-R-009 | Greek suppliers that send an invoice through the PEPPOL network must use a correct TIN number as an electronic address according to PEPPOL Electronic Address Identifier scheme (schemeID 9933). |
| GR-S-011 | Greek suppliers must provide their Seller Tax Registration Number, prefixed by the country code |
| IS-R-001 | [IS-R-001]-If seller is icelandic then invoice type should be 380 or 381 — Ef seljandi er íslenskur þá ætti gerð reiknings (BT-3) að vera sölureikningur (380) eða kreditreikningur (381). |
| IS-R-006 | [IS-R-006]-If seller is icelandic and payment means code is 9 then a 12 digit account id must exist — Ef seljandi er íslenskur og greiðslumáti (BT-81) er krafa (kóti 9) þá skal koma fram 12 stafa númer (bankanúmer, höfuðbók 66 og reikningsnúmer) (BT-84) |
| IS-R-007 | [IS-R-007]-If seller is icelandic and payment means code is 42 then a 12 digit account id must exist — Ef seljandi er íslenskur og greiðslumáti (BT-81) er millifærsla (kóti 42) þá skal koma fram 12 stafa reikningnúmer (BT-84) |
| NL-R-001 | [NL-R-001] For suppliers in the Netherlands, if the document is a creditnote, the document MUST contain an invoice reference (cac:BillingReference/cac:InvoiceDocumentReference/cbc:ID) |
| NL-R-007 | [NL-R-007] For suppliers in the Netherlands, the supplier MUST provide a means of payment (cac:PaymentMeans) if the payment is from customer to supplier |
| NL-R-008 | [NL-R-008] For suppliers in the Netherlands, if the customer is in the Netherlands, the payment means code (cac:PaymentMeans/cbc:PaymentMeansCode) MUST be one of 30, 48, 49, 57, 58 or 59 |
| NO-R-001 | For Norwegian suppliers, a VAT number MUST be the country code prefix NO followed by a valid Norwegian organization number (nine numbers) followed by the letters MVA. |
| PEPPOL-COMMON-R040 | GLN must have a valid format according to GS1 rules. |
| PEPPOL-COMMON-R041 | Norwegian organization number MUST be stated in the correct format. |
| PEPPOL-COMMON-R042 | Danish organization number (CVR) MUST be stated in the correct format. |
| PEPPOL-COMMON-R043 | Belgian enterprise number MUST be stated in the correct format. |
| PEPPOL-COMMON-R044 | IPA Code (Codice Univoco Unità Organizzativa) must be stated in the correct format |
| PEPPOL-COMMON-R045 | Tax Code (Codice Fiscale) must be stated in the correct format |
| PEPPOL-COMMON-R046 | Tax Code (Codice Fiscale) must be stated in the correct format |
| PEPPOL-COMMON-R047 | Italian VAT Code (Partita Iva) must be stated in the correct format |
| PEPPOL-COMMON-R049 | Swedish organization number MUST be stated in the correct format. |
| PEPPOL-COMMON-R050 | Australian Business Number (ABN) MUST be stated in the correct format. |
| PEPPOL-COMMON-R052 | Danish chamber of commerce number (P) MUST be stated in the correct format. |
| PEPPOL-COMMON-R053 | Danish ERSTORG number (SE) MUST be stated in the correct format. |
| PEPPOL-EN16931-CL002 | Reason code MUST be according to subset of UNCL 5189 D.16B. |
| PEPPOL-EN16931-CL003 | Reason code MUST be according to UNCL 7161 D.16B. |
| PEPPOL-EN16931-CL006 | Invoice period description code must be according to UNCL 2005 D.16B. |
| PEPPOL-EN16931-CL007 | Currency code must be according to ISO 4217:2005 |
| PEPPOL-EN16931-CL008 | Electronic address identifier scheme must be from the codelist "Electronic Address Identifier Scheme" |
| PEPPOL-EN16931-F001 | A date MUST be formatted YYYY-MM-DD. |
| PEPPOL-EN16931-P0100 | Invoice/Credit note type code MUST be set according to the profile. |
| PEPPOL-EN16931-P0104 | Tax Category G MUST be used when exemption reason code is VATEX-EU-G |
| PEPPOL-EN16931-P0105 | Tax Category O MUST be used when exemption reason code is VATEX-EU-O |
| PEPPOL-EN16931-P0106 | Tax Category K MUST be used when exemption reason code is VATEX-EU-IC |
| PEPPOL-EN16931-P0107 | Tax Category AE MUST be used when exemption reason code is VATEX-EU-AE |
| PEPPOL-EN16931-P0108 | Tax Category E MUST be used when exemption reason code is VATEX-EU-D |
| PEPPOL-EN16931-P0109 | Tax Category E MUST be used when exemption reason code is VATEX-EU-F |
| PEPPOL-EN16931-P0110 | Tax Category E MUST be used when exemption reason code is VATEX-EU-I |
| PEPPOL-EN16931-P0111 | Tax Category E MUST be used when exemption reason code is VATEX-EU-J |
| PEPPOL-EN16931-P0112 | Invoice type code 326 or 384 are only allowed when both buyer and seller are German organizations |
| PEPPOL-EN16931-R001 | Business process MUST be provided. |
| PEPPOL-EN16931-R002 | No more than one note is allowed on document level, unless both the buyer and seller are German organizations. |
| PEPPOL-EN16931-R004 | Specification identifier MUST have the value 'urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0' or 'urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:selfbilling:3.0'. |
| PEPPOL-EN16931-R005 | VAT accounting currency code MUST be different from invoice currency code when provided. |
| PEPPOL-EN16931-R007 | Business process MUST be in the format 'urn:fdc:peppol.eu:2017:poacc:billing:NN:1.0' or 'urn:fdc:peppol.eu:2017:poacc:selfbilling:NN:1.0' where NN indicates the process number. |
| PEPPOL-EN16931-R008 | Document MUST not contain empty elements. |
| PEPPOL-EN16931-R040 | Allowance/charge amount must equal base amount * percentage/100 if base amount and percentage exists |
| PEPPOL-EN16931-R041 | Allowance/charge base amount MUST be provided when allowance/charge percentage is provided. |
| PEPPOL-EN16931-R042 | Allowance/charge percentage MUST be provided when allowance/charge base amount is provided. |
| PEPPOL-EN16931-R043 | Allowance/charge ChargeIndicator value MUST equal 'true' or 'false' |
| PEPPOL-EN16931-R051 | All currencyID attributes must have the same value as the invoice currency code (BT-5), except for the invoice total VAT amount in accounting currency (BT-111). |
| PEPPOL-EN16931-R053 | Only one tax total with tax subtotals MUST be provided. |
| PEPPOL-EN16931-R054 | Only one tax total without tax subtotals MUST be provided when tax currency code is provided. |
| PEPPOL-EN16931-R055 | Invoice total VAT amount and Invoice total VAT amount in accounting currency MUST have the same operational sign |
| PEPPOL-EN16931-R061 | Mandate reference MUST be provided for direct debit. |
| PEPPOL-EN16931-R110 | Start date of line period MUST be within invoice period. |
| PEPPOL-EN16931-R111 | End date of line period MUST be within invoice period. |
| PEPPOL-EN16931-R120 | Invoice line net amount MUST equal (Invoiced quantity * (Item net price/item price base quantity) + Sum of invoice line charge amount - sum of invoice line allowance amount |
| PEPPOL-EN16931-R121 | Base quantity MUST be a positive number above zero. |
| SE-R-001 | For Swedish suppliers, Swedish VAT-numbers must consist of 14 characters. |
| SE-R-002 | For Swedish suppliers, the Swedish VAT-numbers must have the trailing 12 characters in numeric form |
| SE-R-006 | For Swedish suppliers, only standard VAT rate of 6, 12 or 25 are used |
| SE-R-007 | For Swedish suppliers using Plusgiro, the Account ID must be numeric |
| SE-R-008 | For Swedish suppliers using Bankgiro, the Account ID must be numeric |
| SE-R-009 | For Swedish suppliers using Bankgiro, the Account ID must have 7-8 characters |
| SE-R-010 | For Swedish suppliers using Plusgiro, the Account ID must have 2-8 characters |
| SE-R-011 | For Swedish suppliers using Swedish Bankgiro or Plusgiro, the proper way to indicate this is to use Code 30 for PaymentMeans and FinancialInstitutionBranch ID with code SE:BANKGIRO or SE:PLUSGIRO |
| SE-R-012 | For domestic transactions between Swedish trading partners, credit transfer should be indicated by PaymentMeansCode="30" |