Peppol BIS Billing 3.0.18 · UBL

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

Peppol BIS Billing 3.0.18 · UBL

fatalcountry

Original rule text

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

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

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

What this rule requires

For an invoice or credit note where the supplier country is IS (Iceland), if any cac:PaymentMeans has cbc:PaymentMeansCode 42, then that payment means must have a cac:PayeeFinancialAccount/cbc:ID whose value is present and, after surrounding whitespace is removed, is exactly 12 characters long. If there is no cac:PaymentMeans with code 42, the rule passes. The message refers to this as a 12-digit account id (BT-84); the test does not check that the characters are digits.

How to fix

When the supplier is Icelandic and the payment means code is 42, set cac:PaymentMeans/cac:PayeeFinancialAccount/cbc:ID to a non-empty value that is exactly 12 characters after removing leading/trailing whitespace. If the invoice has no cac:PaymentMeans with cbc:PaymentMeansCode 42, no change is needed. If the value is missing or its length is not 12, add or correct it.

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

Where to go next

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

Validate an invoice against these rules · All release changes