What it means
A line period can have a start date (BT-134) and an end date (BT-135). This rule checks whether the end date's udt:DateTimeString, inside ram:BillingSpecifiedPeriod/ram:EndDateTime, has a format attribute. It checks the attribute's presence, not its value or the date text.
Why it matters
The format attribute describes how the date text is written, so software can interpret the line period end date consistently.
How to fix it
Add format to udt:DateTimeString inside the line's ram:BillingSpecifiedPeriod/ram:EndDateTime. For a full date written as YYYYMMDD, set format to 102. If your invoicing software produces the XML, ask its supplier to correct the missing attribute. Export the corrected invoice and check it again.
Once the file is corrected, check it again for free: Validate a ZUGFeRD invoice
Or fix the invoice in a form and download the corrected file, for 1 credit: Fix a rejected e-invoice Beta
The rule as published
Attribute '@format' is required in this context. Where this rule applies
| Rule set | Version |
|---|---|
| Factur-X 1.09 BASIC | 1.0.9-2 |
| Factur-X 1.09 EN 16931 | 1.0.9-2 |
| Factur-X 1.09 EXTENDED | 1.0.9-2 |
| ZUGFeRD 2.5 BASIC | 2.5.2 |
| ZUGFeRD 2.5 EN 16931 | 2.5.2 |
| ZUGFeRD 2.5 EXTENDED | 2.5.2 |
Check your file
Drop your e-invoice to see whether FX-SCH-A-000539 still fails, and which other rules do.
Related rules
- FX-SCH-A-000540 Use a permitted line period end date format code
- FX-SCH-A-000541 Add the line period start date's format attribute
- FX-SCH-A-000542 Use a permitted line period start date format code
- FX-SCH-A-000543 Keep one indicator in each line discount
- FX-SCH-A-000544 Give each line discount one amount
- FX-SCH-A-000545 Use a permitted line discount reason code