Back to the error catalogue
BR-FR-03BT-2
input

France

A date carries a year outside 2000–2099 or an unexpected format

Every date on the invoice — issue (BT-2), tax point (BT-7), due (BT-9), referenced invoice (BT-26), delivery (BT-72), invoicing period (BT-73, BT-74) and their line-level equivalents — must carry a year between 2000 and 2099; the issue date in YYYYMMDD format.

Only the issuer holds this value: Factlint reports it and never fabricates it. Test your invoice to find out whether it is affected.

The message your validator prints

Copied verbatim from the sealed artefact: this is the exact sentence the check prints when this rule fails.

cii

BR-FR-03/BT-2 : La date d’émission (udt:DateTimeString) doit contenir une année comprise entre 2000 et 2099, au format AAAAMMJJ. Valeur actuelle : " ". Veuillez vérifier que l’année est correcte et que le format est conforme.

cii

BR-FR-03/BT-7 : La date de fait générateur de la taxe (udt:DateString) doit contenir une année entre 2000 et 2099. Valeur actuelle : " ". Veuillez vérifier la validité de la date.

cii

BR-FR-03/BT-9 : La date d’échéance (udt:DateTimeString) doit contenir une année entre 2000 et 2099. Valeur actuelle : " ". Veuillez vérifier la validité de la date.

cii

BR-FR-03/BT-26 : La date d’émission de la facture référencée (qdt:DateTimeString) doit contenir une année entre 2000 et 2099. Valeur actuelle : " ". Veuillez vérifier la validité de la date.

cii

BR-FR-03/BT-72 : La date de livraison effective (udt:DateTimeString) doit contenir une année entre 2000 et 2099. Valeur actuelle : " ". Veuillez vérifier la validité de la date.

cii

BR-FR-03/BT-73 : La date de début de période de facturation (udt:DateTimeString) doit contenir une année entre 2000 et 2099. Valeur actuelle : " ". Veuillez vérifier la validité de la date.

cii

BR-FR-03/BT-74 : La date de fin de période de facturation (udt:DateTimeString) doit contenir une année entre 2000 et 2099. Valeur actuelle : " ". Veuillez vérifier la validité de la date.

cii

BR-FR-03/EXT-FR-FE-138 : La date d’émission de la facture référencée en ligne (qdt:DateTimeString) doit contenir une année entre 2000 et 2099. Valeur actuelle : " ". Veuillez vérifier la validité de la date.

cii

BR-FR-03/EXT-FR-FE-158 : La date de livraison effective en ligne (udt:DateTimeString) doit contenir une année entre 2000 et 2099. Valeur actuelle : " ". Veuillez vérifier la validité de la date.

cii

BR-FR-03/BT-134 : La date de début de période de facturation en ligne (udt:DateTimeString) doit contenir une année entre 2000 et 2099. Valeur actuelle : " ". Veuillez vérifier la validité de la date.

cii

BR-FR-03/BT-135 : La date de fin de période de facturation en ligne (udt:DateTimeString) doit contenir une année entre 2000 et 2099. Valeur actuelle : " ". Veuillez vérifier la validité de la date.

ubl

[BR-FR-03/BT-2] : La date d’émission doit contenir une année comprise entre 2000 et 2099, au format AAAAMMJJ. Valeur actuelle : " ". Veuillez vérifier que l’année est correcte et que le format est conforme.

ubl

[BR-FR-03/BT-7] : La date de fait générateur de la taxe doit contenir une année entre 2000 et 2099. Valeur actuelle : " ". Veuillez vérifier la validité de la date.

ubl

[BR-FR-03/BT-9] : La date d’échéance doit contenir une année entre 2000 et 2099. Valeur actuelle : " ". Veuillez vérifier la validité de la date.

ubl

[BR-FR-03/BT-26] : La date d’émission de la facture référencée doit contenir une année entre 2000 et 2099. Valeur actuelle : " ". Veuillez vérifier la validité de la date.

ubl

[BR-FR-03/BT-72] : La date de livraison effective doit contenir une année entre 2000 et 2099. Valeur actuelle : " ". Veuillez vérifier la validité de la date.

ubl

[BR-FR-03/BT-73] : La date de début de période de facturation doit contenir une année entre 2000 et 2099. Valeur actuelle : " ". Veuillez vérifier la validité de la date.

ubl

[BR-FR-03/BT-74] : La date de fin de période de facturation doit contenir une année entre 2000 et 2099. Valeur actuelle : " ". Veuillez vérifier la validité de la date.

ubl

[BR-FR-03/EXT-FR-FE-138] : La date d’émission de la facture référencée en ligne doit contenir une année entre 2000 et 2099. Valeur actuelle : " ". Veuillez vérifier la validité de la date.

ubl

[BR-FR-03/EXT-FR-FE-158] : La date de livraison effective en ligne doit contenir une année entre 2000 et 2099. Valeur actuelle : " ". Veuillez vérifier la validité de la date.

ubl

[BR-FR-03/BT-134] : La date de début de période de facturation en ligne doit contenir une année entre 2000 et 2099. Valeur actuelle : " ". Veuillez vérifier la validité de la date.

ubl

[BR-FR-03/BT-135] : La date de fin de période de facturation en ligne doit contenir une année entre 2000 et 2099. Valeur actuelle : " ". Veuillez vérifier la validité de la date.

Quoted from schematron-fnfe 1.4.0.03, licensed under Apache-2.0.

Common searches around this code

These phrases mirror what an integrator searches for: code, syntax, rule, business field and correction.

BR-FR-03 A date carries a year outside 2000–2099 or an unexpected formatBR-FR-03 French BR-FR-CTC rulesBR-FR-03 BT-2BR-FR-03/BT-2 : La date d’émission (udt:DateTimeString) doit contenir une année comprise entre 2000 et 2099, au format AAAAMMJJ. Valeur actuelle : " ". Veuillez vérifier que l’année est correcte et que le format est conforme.BR-FR-03 correction

Test your file with this error in mind

Upload the invoice involved: the report will say whether this code appears, where it appears in the document, and whether Factlint can only report it or also fix it.

To automate this check in an ERP flow, call the validation API and link every returned code to its public page.

Why this error happens

Out-of-range values almost always come from an empty field serialised as 0001-01-01 or 1900-01-01, a two-digit year, or an ISO date written where CII expects format 102. An impossible date is not a detail: it decides the applicable rule set and the payment term. The rule comes from the FNFE Schematron package, not from the European standard: an invoice perfectly compliant with EN 16931 triggers it as soon as it is judged against the French base.

How to fix it

Fix the date in your system, or remove the element if the date does not exist. Factlint does not guess a date: an invented due date would commit to a payment term nobody granted.

Severity returned by the rule set

Blocking since 1 September 2026: the current base, `fr-2026-09`, seals the FNFE 1.4.0.03 artefact in fatal mode, and it is the one the pinned engine applies by default. An invoice issued in August 2026 is judged against `fr-2026-08`, where the same rule comes out as a warning — which already rules out a “compliant” verdict. The API returns the severity of the rule set pinned for the judged invoice.

XML correction example

BEFORE (invalid)
<udt:DateTimeString format="102">01/09/2026</udt:DateTimeString>
AFTER (compliant)
<udt:DateTimeString format="102">20260901</udt:DateTimeString>