HomeError code lexicon › BR-FX-EN-4
BR-FX-EN-4 Field BT-72 EN 16931 core rules (BR)

Fix BR-FX-EN-4: Delivery information group must not be empty

[BR-FX-EN-4] The delivery information group must not be empty; provide at least the actual delivery date (BT-72) or the ship-to country (BT-80).

BR-FX-EN-4 in your own invoice? Upload the file and find every error in seconds.

What does BR-FX-EN-4 mean?

If the invoice contains the delivery information group (ram:ApplicableHeaderTradeDelivery), that group must hold something - Factur-X forbids empty elements. Either the actual delivery date (BT-72) or the deliver to country code (BT-80) is enough. In ZUGFeRD 2.5, PEPPOL-EN16931-R008 replaces this check and raises a warning instead of an error.

Common causes of BR-FX-EN-4

How to fix BR-FX-EN-4

  1. Find the faulty spot in the XML. Open the XML of the invoice and go to field BT-72 along this XPath://ram:ApplicableHeaderTradeDelivery
  2. Apply the fix. In the delivery information, state at least the actual delivery date (BT-72) or the deliver to country code (BT-80). Alternatively, drop the group 'ram:ApplicableHeaderTradeDelivery' entirely instead of sending it empty. In ZUGFeRD 2.5, PEPPOL-EN16931-R008 takes over this check as a warning.
  3. Validate again. Save the file and validate it again to check that BR-FX-EN-4 is no longer reported.
Concrete fix

In the delivery information, state at least the actual delivery date (BT-72) or the deliver to country code (BT-80). Alternatively, drop the group 'ram:ApplicableHeaderTradeDelivery' entirely instead of sending it empty. In ZUGFeRD 2.5, PEPPOL-EN16931-R008 takes over this check as a warning.

XPath//ram:ApplicableHeaderTradeDelivery

Before / after: the XML example

This is the spot in question before and after the fix (Cross Industry Invoice, ZUGFeRD/Factur-X).

Wrong
<ram:ApplicableHeaderTradeDelivery>
  <ram:ShipToTradeParty/>
</ram:ApplicableHeaderTradeDelivery>
Correct
<ram:ApplicableHeaderTradeDelivery>
  <ram:ActualDeliverySupplyChainEvent>
    <ram:OccurrenceDateTime>
      <udt:DateTimeString format="102">20260401</udt:DateTimeString>
    </ram:OccurrenceDateTime>
  </ram:ActualDeliverySupplyChainEvent>
</ram:ApplicableHeaderTradeDelivery>

Frequent questions about BR-FX-EN-4

Is a single field enough?
Yes. Either the actual delivery date (BT-72) or the deliver to country code (BT-80) is enough. You do not need both.
What if there is no delivery at all?
Then drop the whole "ApplicableHeaderTradeDelivery" group instead of sending it empty. The empty element is what triggers the error.
Does the rule still apply in ZUGFeRD 2.5?
There, PEPPOL-EN16931-R008 takes over the check and rates it as a warning. The core stays the same: no empty elements in the delivery information.

Related error codes

Check BR-FX-EN-4 automatically

Instead of digging through the XML by hand you can validate your ZUGFeRD or XRechnung file online – upload the PDF or the XML and you get every error with rule ID, affected field, fix and XPath, as a readable report or as JSON through the API.

Find every error automatically instead of searching by hand

Upload your ZUGFeRD, Factur-X or XRechnung file – you get every violation back with rule ID, field, fix and XPath.

Validate online for free
Check invoice