EN16931 - model rules

These are rules for the UBL model, on which PEPPOL BIS 3.0 is based.

Note that the included rules are those considered relevant when sending from Business NXT. For a complete list of model rules used by PEPPOL BIS 3.0, go here.
[BR-06]-An Invoice shall contain the Seller name (BT-27)
This error will never be seen when sending from Business NXT. However, if the company name is missing, the invoice will be stopped with the status "Error" in Business NXT, so that the company name may be added before running the Send to AutoInvoice processing to resend the invoice. The error will be logged in the EDI error message table with the message "ERROR: COULD NOT SAVE INVOICE DUE TO COMPANY NAME CAN'T BE BLANK ".
[BR-07]-An Invoice shall contain the Buyer name (BT-44)
This error will never be seen when sending from Business NXT. However, if the customer name is missing, the invoice will be stopped with the status "Error" in Business NXT, so that the customer name may be added to the Associate table (as it's mapped from invoice customer) before running the Send to AutoInvoice processing to resend the invoice. The error will be logged in the EDI error message table with the message "ERROR: COULD NOT SAVE INVOICE DUE TO CUSTOMER NAME CAN'T BE BLANK ".
[BR-08]-An Invoice shall contain the Seller postal address
At least post code and postal area must be set in the Company information table.
[BR-10]-An Invoice shall contain the Buyer postal address (BG-8)
At least post code and postal area must be set on the invoice customer in the Associate table.
[BR-16]-An Invoice shall have at least one Invoice line (BG-25)
This error may occur if the product (or order line) processing methods have been set to exclude on invoice.
[BR-25]-Each Invoice line (BG-25) shall contain the Item name (BT-153)
This means that the invoice cannot contain "empty" rows. For this reason, Business NXT excludes all order lines without a product name from the XML output.
[BR-27]-The Item net price (BT-146) shall NOT be negative
The PEPPOL BIS 3.0 format only allows negative values in line level allowances or charges, which basically means that discounts or special duty may be negative. The use of negative prices will cause an invoice to fail.
[BR-29]-If both Invoicing period start date (BT-73) and Invoicing period end date (BT-74) are given then the Invoicing period end date (BT-74) shall be later or equal to the Invoicing period start date (BT-73)
[BR-30]-If both Invoice line period start date (BT-134) and Invoice line period end date (BT-135) are given then the Invoice line period end date (BT-135) shall be later or equal to the Invoice line period start date (BT-134)
[BR-54]-Each Item attribute (BG-32) shall contain an Item attribute name (BT-160) and an Item attribute value (BT-161)
If AdditionalItemProperty is in use, both fields in the section must be mapped to Business NXT fields that have values.
[BR-CL-03]-currencyID MUST be coded using ISO code list 4217 alpha-3
[BR-CL-04]-Invoice currency code MUST be coded using ISO code list 4217 alpha-3
The currency code used on the order is not according to the ISO code list used for currencies. Check the ISO value in the Currency table.
[BR-CL-05]-Tax currency code MUST be coded using ISO code list 4217 alpha-3
The currency code set in the Company information table is not according to the ISO code list used for currencies. Check the ISO value in the Currency table.
[BR-CL-10]-Any identifier identification scheme identifier MUST be coded using one of the ISO 6523 ICD list
This error may occur if the AutoInvoice endpoint scheme field has content that is not valid according to the ISO 6523 ICD list.
[BR-CL-11]-Any registration identifier identification scheme identifier MUST be coded using one of the ISO 6523 ICD list
This error may occur if the AutoInvoice endpoint scheme field has content that is not valid according to the ISO 6523 ICD list.
[BR-CL-14]-Country codes in an invoice MUST be coded using ISO code list 3166-1
The country code used in Company information or in the Associate table is not according to the ISO code list used for country codes. Check the ISO value in the Country table.
[BR-CL-15]-Country codes in an invoice MUST be coded using ISO code list 3166-1
The country code used in the Product table for Source country is not according to the ISO code list used for country codes. Check the ISO value in the Country table.
[BR-CL-23]-Unit code MUST be coded according to the UN/ECE Recommendation 20 with Rec 21 extension
The unit code set in EDI unit in the Unit table is not according to the code lists used for PEPPOL BIS 3.0. Note that if nothing is set in the EDI unit field, Business NXT sets a generic code that makes the field content valid (ZZZ).

UN/ECE Recommandation 20

UN/ECE Recommandation 21

[BR-CO-10]-Sum of Invoice line net amount (BT-106) = Σ Invoice line net amount (BT-131)
This is a check of line level LineExtensionAmount against the LineExtentionAmount in the LegalMonetaryTotal section. This error will occur if for some reason an amount on an order line has been made exempt from printing invoices, or the whole line has been exempted. All relevant prices, additions and discount must be visible on the printed invoice, in addition to the line amount, as these are used for the XML output.
[BR-CO-13]-Invoice total amount without VAT (BT-109) = Σ Invoice line net amount (BT-131) - Sum of allowances on document level (BT-107) + Sum of charges on document level (BT-108)
This is a check of line level LineExtensionAmount against the LineExtentionAmount in the LegalMonetaryTotal section. This error will occur if for some reason an amount on an order line has been made exempt from printing invoices, or the whole line has been exempted. All relevant prices, additions and discount must be visible on the printed invoice, in addition to the line amount, as these are used for the XML output.
[BR-CO-14]-Invoice total VAT amount (BT-110) = Σ VAT category tax amount (BT-117)
This error will occur if there is a difference between total VAT amount and VAT amount per VAT code. This may happen in certain circumstances with gross order invoices (as all line prices must be recalculated as net before adding up and calculating VAT), or it may also happen if the Order processing setting "Rounding of VAT amount on order lines" is on. This must never be in use when sending electronic invoices.
[BR-E-01]-An Invoice that contains an Invoice line (BG-25), a Document level allowance (BG-20) or a Document level charge (BG-21) where the VAT category code (BT-151, BT-95 or BT-102) is “Exempt from VAT” shall contain exactly one VATBReakdown (BG-23) with the VAT category code (BT-118) equal to "Exempt from VAT"
This error says that there is either more than one TaxSubTotal with TaxCategory E, or no TaxCategory E. This indicates a bug in Business NXT.
[BR-E-02]-An Invoice that contains an Invoice line (BG-25) where the Invoiced item VAT category code (BT-151) is “Exempt from VAT” shall contain the Seller VAT Identifier (BT-31), the Seller tax registration identifier (BT-32) and/or the Seller tax representative VAT identifier (BT-63)
When an invoice is exempt from VAT, a VAT no is still expected in the Company information table. Add value in CompanyInformation.EuVatRegistrationNo.
[BR-E-05]-In an Invoice line (BG-25) where the Invoiced item VAT category code (BT-151) is "Exempt from VAT", the Invoiced item VAT rate (BT-152) shall be 0 (zero)
When the line is exempt from VAT, the Percent field must show 0. This may indicate a bug in Business NXT, but may also be because VAT rate type is incorrectly set for a VAT code with a VAT rate. Check setting in VatCode.VatRateType.
[BR-S-01]-An Invoice that contains an Invoice line (BG-25), a Document level allowance (BG-20) or a Document level charge (BG-21) where the VAT category code (BT-151, BT-95 or BT-102) is “Standard rated” shall contain in the VATBReakdown (BG-23) at least one VAT category code (BT-118) equal with "Standard rated"
This error says that there is no TaxCategory S in the TaxTotal section, even though there are invoice lines, additions or discounts that indicates that it is in use. This indicates a bug in Business NXT.
[BR-S-02]-An Invoice that contains an Invoice line (BG-25) where the Invoiced item VAT category code (BT-151) is “Standard rated” shall contain the Seller VAT Identifier (BT-31), the Seller tax registration identifier (BT-32) and/or the Seller tax representative VAT identifier (BT-63)
When an invoice has TaxCategory S used on an invoice line, the supplier's VAT no must be present in the invoice. Add VAT no in CompanyInformation.EuVatRegistrationNo.
[BR-S-03]-An Invoice that contains a Document level allowance (BG-20) where the Document level allowance VAT category code (BT-95) is “Standard rated” shall contain the Seller VAT Identifier (BT-31), the Seller tax registration identifier (BT-32) and/or the Seller tax representative VAT identifier (BT-63)
When an invoice has TaxCategory S used on a discount, the supplier's VAT no must be present in the invoice. Add VAT no in CompanyInformation.EuVatRegistrationNo.
[BR-S-04]-An Invoice that contains a Document level charge (BG-21) where the Document level charge VAT category code (BT-102) is “Standard rated” shall contain the Seller VAT Identifier (BT-31), the Seller tax registration identifier (BT-32) and/or the Seller tax representative VAT identifier (BT-63)
When an invoice has TaxCategory S used on an addition (freight, invoice fee), the supplier's VAT no must be present in the invoice. Add VAT no in CompanyInformation.EuVatRegistrationNo.
[BR-S-05]-In an Invoice line (BG-25) where the Invoiced item VAT category code (BT-151) is "Standard rated" the Invoiced item VAT rate (BT-152) shall be greater than zero
This error says that while there is a TaxCategory S on an invoice line, it is displayed with a VAT rate of 0. This indicates a possible bug in Business NXT, but may also be because VAT rate type is incorrectly set for a VAT code with 0 rate in the VAT code table. Check setting in VatCode.VatRateType.
[BR-S-06]-In a Document level allowance (BG-20) where the Document level allowance VAT category code (BT-95) is "Standard rated" the Document level allowance VAT rate (BT-96) shall be greater than zero
This error says that while there is a TaxCategory S in the invoice, it is displayed with a VAT rate of 0. This indicates a possible bug in Business NXT, but may also be because VAT rate type is incorrectly set for a VAT code with 0 rate in the VAT code table. Check setting in VatCode.VatRateType.
[BR-S-07]-In a Document level charge (BG-21) where the Document level charge VAT category code (BT-102) is "Standard rated" the Document level charge VAT rate (BT-103) shall be greater than zero
This error says that while there is a TaxCategory S in the invoice, it is displayed with a VAT rate of 0. This indicates a possible bug in Business NXT, but may also be because VAT rate type is incorrectly set for a VAT code with 0 rate in the VAT code table. Check setting in VatCode.VatRateType.
[BR-S-08]-For each different value of VAT category rate (BT-119) where the VAT category code (BT-118) is "Standard rated", the VAT category taxable amount (BT-116) in a VATBReakdown (BG-23) shall equal the sum of Invoice line net amounts (BT-131) plus the sum of document level charge amounts (BT-99) minus the sum of document level allowance amounts (BT-92) where the VAT category code (BT-151, BT-102, BT-95) is “Standard rated” and the VAT rate (BT-152, BT-103, BT-96) equals the VAT category rate (BT-119)
This is a check of VAT amounts in the TaxTotal section, summed per VAT rate, compared with the VAT amounts per rate on line level. This may indicate one of two things:
  • That there is a line level exemption of printout set in Business NXT (product or order line suppressed from print using processing method) so that either a product or an amount is exempted from printout. All amounts relevant for the invoice totals must be included on line level.
  • That a special tax is in use on an order line, with different VAT rate than the invoice line product. Currently there the format is not able to handle this scenario, meaning for example an order line with a VAT rate that has a special tax with rate 0.
[BR-S-09]-The VAT category tax amount (BT-117) in a VATBReakdown (BG-23) where VAT category code (BT-118) is "Standard rated" shall equal the VAT category taxable amount (BT-116) multiplied by the VAT category rate (BT-119)
This is a calculation of the tax amount per VAT rate. If this error occurs, it indicates a rounding issue with the VAT rate. This indicates that the Order processing setting "Rounding of VAT amount on order lines" is on. This must never be in use when sending electronic invoices. If this setting is not in use, the error message indicates a bug in Business NXT.
[BR-Z-02]-An Invoice that contains an Invoice line where the Invoiced item VAT category code (BT-151) is “Zero rated” shall contain the Seller VAT Identifier (BT-31), the Seller tax registration identifier (BT-32) and/or the Seller tax representative VAT identifier (BT-63)
When an invoice has TaxCategory Z used on an invoice line, the supplier's VAT no must be present in the invoice. Add VAT no in CompanyInformation.EuVatRegistrationNo.
[BR-Z-03]-An Invoice that contains a Document level allowance (BG-20) where the Document level allowance VAT category code (BT-95) is “Zero rated” shall contain the Seller VAT Identifier (BT-31), the Seller tax registration identifier (BT-32) and/or the Seller tax representative VAT identifier (BT-63)
When an invoice has TaxCategory Z used on a discount, the supplier's VAT no must be present in the invoice. Add VAT no in CompanyInformation.EuVatRegistrationNo.
[BR-Z-04]-An Invoice that contains a Document level charge where the Document level charge VAT category code (BT-102) is “Zero rated” shall contain the Seller VAT Identifier (BT-31), the Seller tax registration identifier (BT-32) and/or the Seller tax representative VAT identifier (BT-63)
When an invoice has TaxCategory S used on an addition (freight, invoice fee), the supplier's VAT no must be present in the invoice. Add VAT no in CompanyInformation.EuVatRegistrationNo.
[BR-Z-05]-In an Invoice line (BG-25) where the Invoiced item VAT category code (BT-151) is "Zero rated" the Invoiced item VAT rate (BT-152) shall be 0 (zero)
This error says that while there is a TaxCategory Z in the invoice, it is displayed with a VAT rate different from 0. This indicates a possible bug in Business NXT, but may also be because VAT rate type is incorrectly set for a VAT code with a VAT rate. Check setting in VatCode.VatRateType.
[BR-Z-06]-In a Document level allowance (BG-20) where the Document level allowance VAT category code (BT-95) is "Zero rated" the Document level allowance VAT rate (BT-96) shall be 0 (zero)
This error says that while there is a TaxCategory Z in the invoice, it is displayed with a VAT rate different from 0. This indicates a possible bug in Business NXT, but may also be because VAT rate type is incorrectly set for a VAT code with a VAT rate. Check setting in VatCode.VatRateType.
[BR-Z-07]-In a Document level charge (BG-21) where the Document level charge VAT category code (BT-102) is "Zero rated" the Document level charge VAT rate (BT-103) shall be 0 (zero)
This error says that while there is a TaxCategory Z in the invoice, it is displayed with a VAT rate different from 0. This indicates a possible bug in Business NXT, but may also be because VAT rate type is incorrectly set for a VAT code with a VAT rate. Check setting in VatCode.VatRateType.
[BR-Z-08]-In a VATBReakdown (BG-23) where VAT category code (BT-118) is "Zero rated" the VAT category taxable amount (BT-116) shall equal the sum of Invoice line net amount (BT-131) minus the sum of Document level allowance amounts (BT-92) plus the sum of Document level charge amounts (BT-99) where the VAT category codes (BT-151, BT-95, BT-102) are “Zero rated"
This error indicates that there is a line level exemption of printout set in Business NXT (product or order line suppressed from print using processing method) so that either a product or an amount is exempted from printout. All amounts relevant for the invoice totals must be included on line level.
[UBL-DT-01]-Amounts shall be decimal up to two fraction digits
This is an error message that should never occur when sending from Business NXT. All amount fields are rounded to two decimals from Business NXT, with the exception of line level VAT amount and line level PriceAmount. These exceptions are according to the format rules and must be present to be able to present the correct totals on the invoice. If the error message occurs, it indicates a bug in Business NXT.