Peppol EN16931

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"