Peppol BIS Billing 3.0.17 · UBL

IS-R-006: If seller is icelandic and payment means code is 9 then a 12 digit account id must exist…

Peppol BIS Billing 3.0.17 · UBL

fatalcountry

Original rule text

[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)

Stored validation assertion
exists(cac:PaymentMeans[cbc:PaymentMeansCode = '9']/cac:PayeeFinancialAccount/cbc:ID)         and string-length(normalize-space(cac:PaymentMeans[cbc:PaymentMeansCode = '9']/cac:PayeeFinancialAccount/cbc:ID)) = 12        or not(exists(cac:PaymentMeans[cbc:PaymentMeansCode = '9']))

IS-R-006 is a fatal rule in the country layer of Peppol BIS Billing 3.0.17 · UBL. An invoice that breaks it is rejected. It refers to BT-81, BT-84.

What this rule requires

The rule applies to UBL CreditNote or Invoice where the supplier country is IS (Iceland). If no cac:PaymentMeans with cbc:PaymentMeansCode = 9 exists, the rule is satisfied. If such a payment means exists, then its cac:PayeeFinancialAccount/cbc:ID must exist and, after removing surrounding whitespace, be exactly 12 characters long. The message describes this as a 12-digit account id (BT-84), but the test only checks the length, not that it is numeric.

How to fix

Ensure that for each cac:PaymentMeans[cbc:PaymentMeansCode = '9'] in the invoice or credit note, cac:PayeeFinancialAccount/cbc:ID is present and has exactly 12 characters after trimming whitespace (preferably 12 digits per the message). If payment means code 9 is not actually used, remove or change that cac:PaymentMeans element so no code 9 remains.

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

Where to go next

IS-R-006 changed in 1 published Peppol BIS Billing UBL release comparison:

Validate an invoice against these rules · All release changes