Peppol BIS Billing 3.0.21 · UBL

GR-R-001-2: When the Supplier is Greek, the Invoice Id first segment must be a valid TIN Number and…

Peppol BIS Billing 3.0.21 · UBL

fatalcountry

Original rule text

[GR-R-001-2]-When the Supplier is Greek, the Invoice Id first segment must be a valid TIN Number and match either the Supplier's or the Tax Representative's Tin Number

Stored validation assertion
string-length(normalize-space($IdSegments[1])) = 9
and u:TinVerification($IdSegments[1])
and ($IdSegments[1] = /*/cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme[cac:TaxScheme/cbc:ID = 'VAT']/substring(cbc:CompanyID, 3, 9)
or $IdSegments[1] = /*/cac:TaxRepresentativeParty/cac:PartyTaxScheme[cac:TaxScheme/cbc:ID = 'VAT']/substring(cbc:CompanyID, 3, 9) )

GR-R-001-2 is a fatal rule in the country layer of Peppol BIS Billing 3.0.21 · UBL. An invoice that breaks it is rejected.

What this rule requires

For a Greek supplier (country code GR or EL), the rule applies to the Invoice ID / CreditNote ID (cbc:ID). The ID is split into segments by |; the first segment must be exactly 9 characters long, pass u:TinVerification (a Greek TIN check), and must equal either the 9-character substring starting at position 3 of the supplier's VAT cbc:CompanyID or the same substring of the tax representative's VAT cbc:CompanyID. At least one of those two matches is required.

How to fix

Make sure the first segment of cbc:ID (before any |) is exactly 9 characters and is a valid Greek TIN. It must be identical to the 9 characters starting at position 3 of either cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme[cac:TaxScheme/cbc:ID = 'VAT']/cbc:CompanyID or cac:TaxRepresentativeParty/cac:PartyTaxScheme[cac:TaxScheme/cbc:ID = 'VAT']/cbc:CompanyID. If neither matches, correct the ID to use a matching TIN, or ensure the correct tax representative TIN is present where used.

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

Where to go next

GR-R-001-2 changed in 1 published Peppol BIS Billing UBL release comparison:

Validate an invoice against these rules · All release changes