Faktura

NL-R-008

fatalPeppol BIS Billing 3.0profileCIIUBL

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

Why it fails

The payment means code is outside the set the Netherlands accepts for domestic invoices.

How to fix it

Use 30 (credit transfer), 48 (card), 49 (direct debit), 57 (standing order), 58 (SEPA credit transfer) or 59 (SEPA direct debit).

What the validator checks

CII — context /rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:SpecifiedTradeSettlementPaymentMeans[$supplierCountryIsNL and $customerCountryIsNL]

normalize-space(ram:TypeCode) = '30' or normalize-space(ram:TypeCode) = '48' or normalize-space(ram:TypeCode) = '49' or normalize-space(ram:TypeCode) = '57' or normalize-space(ram:TypeCode) = '58' or normalize-space(ram:TypeCode) = '59'

UBL — context cac:PaymentMeans[$supplierCountryIsNL and $customerCountryIsNL]

normalize-space(cbc:PaymentMeansCode) = '30' or normalize-space(cbc:PaymentMeansCode) = '48' or normalize-space(cbc:PaymentMeansCode) = '49' or normalize-space(cbc:PaymentMeansCode) = '57' or normalize-space(cbc:PaymentMeansCode) = '58' or normalize-space(cbc:PaymentMeansCode) = '59'

Related rules

Part of NL-R — Netherlands.

Validate an invoice against this rule →

This is a Peppol BIS Billing 3.0 rule: an invoice can be perfectly valid EN 16931 and still be rejected by it.