# BR-FR-CO-07_BT-9

Source: https://xmlvalid.com/rules/BR-FR-CO-07_BT-9

> La date d’échéance (BT-9), si présente, doit être postérieure ou égale à la date de facture (BT-2), sauf si la facture est de type acompte (386, 500, 503) ou si le cadre de facturation (BT-23) est B2, S2 ou M2. Valeurs actuelles : Date facture = " … ", Date échéance = " … ", Type = " … ", Cadre = " … ".

- Level: error
- Rule sets: French e-invoicing rules (UBL) 1.4.0.04
- Context: `ubl:Invoice | cn:CreditNote`
- Test: `not($dueDate and not($typeCode = '386' or $typeCode = '500' or $typeCode = '503' or $billingContext = 'B2' or $billingContext = 'S2' or $billingContext = 'M2') and $dueDate < $issueDate)`

> BR-FR-CO-07/BT-9 : La date d’échéance (BT-9), si présente, doit être postérieure ou égale à la date de facture (BT-2), sauf si la facture est de type acompte (386, 500, 503) ou si le cadre de facturation (BT-23) est B2, S2 ou M2. Valeurs actuelles : Date facture = " … ", Date échéance = " … ", Type = " … ", Cadre = " … ".

- Level: error
- Rule sets: French e-invoicing rules (CII) 1.4.0.04
- Context: `rsm:CrossIndustryInvoice`
- Test: `not($dueDate[normalize-space(.)]) or ($typeCode = ('386', '500', '503') or $frameworkCode = ('B2', 'S2', 'M2') or (every $dt in $dueDate satisfies $dt ge $issueDate))`

Validate a document against these rules: https://xmlvalid.com/validate
