Peppol BIS Billing 3.0.21 · UBL

DE-R-023-1: If both supplier and customer are German, if "Payment means type code" (BT-81) contains…

Peppol BIS Billing 3.0.21 · UBL

fatalcountry

Original rule text

[DE-R-023-1]-If both supplier and customer are German, if "Payment means type code" (BT-81) contains a code for credit transfer (30, 58), "CREDIT TRANSFER" (BG-17) shall be provided.

Stored validation assertion
cac:PayeeFinancialAccount

DE-R-023-1 is a fatal rule in the country layer of Peppol BIS Billing 3.0.21 · UBL. An invoice that breaks it is rejected. It refers to BT-81, BG-17.

What this rule requires

For a UBL invoice or credit note where both the supplier's and the customer's country code is DE (after normalization), and a cac:PaymentMeans has cbc:PaymentMeansCode 30 or 58, the rule requires that cac:PaymentMeans to contain a cac:PayeeFinancialAccount element. This element represents the CREDIT TRANSFER (BG-17) block. If a matched cac:PaymentMeans has no cac:PayeeFinancialAccount child, the document fails validation with severity fatal.

How to fix

Add a cac:PayeeFinancialAccount element inside each cac:PaymentMeans whose cbc:PaymentMeansCode is 30 or 58, but only when both the supplier and customer country codes are DE. The rule only checks for the element's presence; populate it with the payee's bank account information needed for the credit transfer.

Guidance on this rule. The original text above is authoritative.

Where to go next

DE-R-023-1 changed in 1 published Peppol BIS Billing UBL release comparison:

Validate an invoice against these rules · All release changes