PEPPOL-EN16931-CL007: Currency code must be according to ISO 4217:2005
Peppol BIS Billing 3.0.21 · UBL
Original rule text
[PEPPOL-EN16931-CL007]-Currency code must be according to ISO 4217:2005
some $code in $ISO4217 satisfies @currencyID = $codePEPPOL-EN16931-CL007 is a fatal rule in the format layer of Peppol BIS Billing 3.0.21 · UBL. An invoice that breaks it is rejected.
What this rule requires
The rule requires that the currencyID attribute on any of the listed monetary amount elements (cbc:Amount, cbc:BaseAmount, cbc:PriceAmount, cbc:TaxAmount, cbc:TaxableAmount, cbc:LineExtensionAmount, cbc:TaxExclusiveAmount, cbc:TaxInclusiveAmount, cbc:AllowanceTotalAmount, cbc:ChargeTotalAmount, cbc:PrepaidAmount, cbc:PayableRoundingAmount, cbc:PayableAmount) contains a value that appears in the ISO 4217 currency code list defined by the rule. The test checks that the attribute equals one of the codes in $ISO4217; if it is not in that list, the document is rejected as fatal.
How to fix
Set the currencyID attribute on the affected amount element(s) to a valid ISO 4217 currency code from the rule's list, such as EUR or USD. If the invoice is generated from a system, ensure the currency code field is mapped to a code from that list and not left empty or set to an unsupported value.
Guidance on this rule. The original text above is authoritative.
Where to go next
PEPPOL-EN16931-CL007 changed in 5 published Peppol BIS Billing UBL release comparisons:
- PEPPOL-EN16931-CL007 in 3.0.20 → 3.0.21: Behaviour changed without the rule changing
- PEPPOL-EN16931-CL007 in 3.0.19 → 3.0.20: Behaviour changed without the rule changing
- PEPPOL-EN16931-CL007 in 3.0.18 → 3.0.19: Behaviour changed without the rule changing
- PEPPOL-EN16931-CL007 in 3.0.17 → 3.0.18: Behaviour changed without the rule changing
- PEPPOL-EN16931-CL007 in 3.0.2 → 3.0.10: Behaviour changed without the rule changing
Validate an invoice against these rules · All release changes