Error codes

BR-AE-03: VAT reverse charge: BR-AE-03

Severity: fatal · Syntax: CII, UBL

Official message

An Invoice that contains a Document level allowance (BG-20) where the Document level allowance VAT category code (BT-95) is "Reverse charge" 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) and the Buyer VAT identifier (BT-48) and/or the Buyer legal registration identifier (BT-47).

What this means

When a document allowance (BT-95) uses VAT reverse charge (AE), BR-AE-03 requires a seller tax identifier: VAT identifier (BT-31), tax registration (BT-32) and/or the tax representative VAT identifier (BT-63). The buyer VAT identifier (BT-48) and/or the buyer legal registration identifier (BT-47) must be present as well. Official text: An Invoice that contains a Document level allowance (BG-20) where the Document level allowance VAT category code (BT-95) is "Reverse charge" 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) and the Buyer VAT identifier (BT-48) and/or the Buyer legal registration identifier (BT-47).

Typical cause

The category is set, but none of the required identifier fields is filled in.

How to fix it

Align code AE, the rate and the breakdown with the message. The snippet shows the elements involved; amounts have to match your invoice. The check helps you find the spot. It is not a tax opinion.

UBL

<cac:PartyTaxScheme>
  <cbc:CompanyID>DE123456789</cbc:CompanyID>
  <cac:TaxScheme><cbc:ID>VAT</cbc:ID></cac:TaxScheme>
</cac:PartyTaxScheme>

CII

<ram:SpecifiedTaxRegistration>
  <ram:ID schemeID="VA">DE123456789</ram:ID>
</ram:SpecifiedTaxRegistration>

Business term

BG-20, BT-95, BT-31, BT-32, BT-63, BT-48, BT-47

Related rules

Context and assertion

UBL /ubl:Invoice | /cn:CreditNote

CII //ram:SpecifiedTradeAllowanceCharge[ram:ChargeIndicator/udt:Indicator=false()]/ram:CategoryTradeTax[ram:CategoryCode = 'AE'][upper-case(ram:TypeCode) = 'VAT']

UBL

(exists(//cac:AllowanceCharge[cbc:ChargeIndicator=false()]/cac:TaxCategory[normalize-space(cbc:ID) = 'AE'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']) and (exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID) or exists(//cac:TaxRepresentativeParty/cac:PartyTaxScheme[cac:TaxScheme/(normalize-space(upper-case(cbc:ID)) = 'VAT')]/cbc:CompanyID)) and (exists(//cac:AccountingCustomerParty/cac:Party/cac:PartyTaxScheme[cac:TaxScheme/(normalize-space(upper-case(cbc:ID)) = 'VAT')]/cbc:CompanyID) or exists(//cac:AccountingCustomerParty/cac:Party/cac:PartyLegalEntity/cbc:CompanyID))) or not(exists(//cac:AllowanceCharge[cbc:ChargeIndicator=false()]/cac:TaxCategory[normalize-space(cbc:ID) = 'AE'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']))

CII

(//ram:SellerTradeParty/ram:SpecifiedTaxRegistration/ram:ID[@schemeID = ('VA', 'FC')] or //ram:SellerTaxRepresentativeTradeParty/ram:SpecifiedTaxRegistration/ram:ID[@schemeID = 'VA']) and (//ram:BuyerTradeParty/ram:SpecifiedTaxRegistration/ram:ID[@schemeID = 'VA'] or //ram:BuyerTradeParty/ram:SpecifiedLegalOrganization/ram:ID)

Check a file now, free of charge

curl -F "file=@rechnung.xml" https://checkxrechnung.com/v1/validate

Questions

What does BR-AE-03 actually check?

When a document allowance (BT-95) uses VAT reverse charge (AE), BR-AE-03 requires a seller tax identifier: VAT identifier (BT-31), tax registration (BT-32) and/or the tax representative VAT identifier (BT-63). The buyer VAT identifier (BT-48) and/or the buyer legal registration identifier (BT-47) must be present as well. Official text: An Invoice that contains a Document level allowance (BG-20) where the Document level allowance VAT category code (BT-95) is "Reverse charge" 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) and the Buyer VAT identifier (BT-48) and/or the Buyer legal registration identifier (BT-47).

How do I fix BR-AE-03?

Align code AE, the rate and the breakdown with the message. The snippet shows the elements involved; amounts have to match your invoice. The check helps you find the spot. It is not a tax opinion.

If BR-AE-03 passes, is the invoice legally compliant?

No. This page helps you read this one Schematron assertion. A pass is not a statement about tax law, portal acceptance, or bank overlays.