TTN eFatoora — TEIF 1.8.8
Tunisian e-invoice format (Tunisie TradeNet Invoice Format) version 1.8.8
Drag and drop your XML invoice here
or click to browse files
XML format · Max 5 MB
No invoice? Try with a sample ↗
Dictionnaire de validation pour la facture électronique tunisienne TEIF (Tunisie TradeNet Invoice Format) version 1.8.8
Version 1.8.8 · 34 champs · 20 règles · 11 tables
Structure du document
teif-invoice/TEIFteif.versionVersion TEIFteif.controlingAgencyAgence de contrôleheader.senderIdentifierIdentifiant émetteurheader.senderIdentifierTypeType identifiant émetteurheader.receiverIdentifierIdentifiant destinataireheader.receiverIdentifierTypeType identifiant destinatairebgm.documentIdentifierNuméro de documentbgm.documentTypeCodeCode type de documentbgm.documentTypeLabelLibellé type documentdtm.issueDateDate d'émission (I-31)dtm.dueDateDate d'échéance (I-32)dtm.periodDatePériode de service (I-36)seller.identifierIdentifiant fournisseurseller.identifierTypeType identifiant fourn.seller.nameNom du fournisseurbuyer.identifierIdentifiant acheteurbuyer.identifierTypeType identifiant acheteurbuyer.nameNom de l'acheteurinvoice.currencyDevise factureinvoice.totalInclTaxTotal TTC (I-180)invoice.totalExclTaxTotal HT (I-182)invoice.totalTaxTotal taxes (I-181)/TEIF/InvoiceBody/LinSection/Linlin.itemIdentifierIdentifiant lignelin.itemCodeCode articlelin.descriptionDescription articlelin.quantityQuantitélin.measurementUnitUnité de mesurelin.unitPricePrix unitaire (I-183)lin.lineAmountMontant HT ligne (I-171)lin.taxTypeCodeCode type taxe lignelin.taxRateTaux de taxe ligne (%)/TEIF/InvoiceBody/InvoiceTax/InvoiceTaxDetailstaxDetail.taxTypeCodeCode type taxetaxDetail.taxBaseBase imposable (I-177)taxDetail.taxAmountMontant taxe (I-178)Champs
34 définis| Identifiant | Label | Type | Requis |
|---|---|---|---|
teif.version | Version TEIF | CODE | — |
teif.controlingAgency | Agence de contrôle | TEXT | — |
header.senderIdentifier | Identifiant émetteur | ID | — |
header.senderIdentifierType | Type identifiant émetteur | CODE | — |
header.receiverIdentifier | Identifiant destinataire | ID | — |
header.receiverIdentifierType | Type identifiant destinataire | CODE | — |
bgm.documentIdentifier | Numéro de document | ID | — |
bgm.documentTypeCode | Code type de document | CODE | — |
bgm.documentTypeLabel | Libellé type document | TEXT | — |
dtm.issueDate | Date d'émission (I-31) | DATE_DDMMYY | — |
dtm.dueDate | Date d'échéance (I-32) | DATE_DDMMYY | — |
dtm.periodDate | Période de service (I-36) | DATE_DDMMYY | — |
seller.identifier | Identifiant fournisseur | ID | — |
seller.identifierType | Type identifiant fourn. | CODE | — |
seller.name | Nom du fournisseur | TEXT | — |
buyer.identifier | Identifiant acheteur | ID | — |
buyer.identifierType | Type identifiant acheteur | CODE | — |
buyer.name | Nom de l'acheteur | TEXT | — |
invoice.currency | Devise facture | CODE | — |
invoice.totalInclTax | Total TTC (I-180) | AMOUNT | — |
invoice.totalExclTax | Total HT (I-182) | AMOUNT | — |
invoice.totalTax | Total taxes (I-181) | AMOUNT | — |
lin.itemIdentifier | Identifiant ligne | ID | — |
lin.itemCode | Code article | CODE | — |
lin.description | Description article | TEXT | — |
lin.quantity | Quantité | TEXT | — |
lin.measurementUnit | Unité de mesure | CODE | — |
lin.unitPrice | Prix unitaire (I-183) | AMOUNT | — |
lin.lineAmount | Montant HT ligne (I-171) | AMOUNT | — |
lin.taxTypeCode | Code type taxe ligne | CODE | — |
lin.taxRate | Taux de taxe ligne (%) | PERCENTAGE | — |
taxDetail.taxTypeCode | Code type taxe | CODE | — |
taxDetail.taxBase | Base imposable (I-177) | AMOUNT | — |
taxDetail.taxAmount | Montant taxe (I-178) | AMOUNT | — |
Règles de validation
20 règlesTEIF-R001ERRORLa version TEIF doit être une valeur reconnue (1.8.1 à 1.8.8).
Version TEIF ∈ Versions TEIF supportées : {1.8.1, 1.8.2, 1.8.3, 1.8.4, 1.8.5, 1.8.6 … (8 valeurs)}
TEIF-R002ERRORL'agence de contrôle doit être 'TTN' ou 'Tunisie TradeNet'.
Agence de contrôle ∈ Agences de contrôle autorisées : {TTN, Tunisie TradeNet}
TEIF-R003ERRORL'identifiant du document (numéro de facture) est obligatoire.
Numéro de document est obligatoire
TEIF-R004ERRORLe code type de document doit être une valeur reconnue : I-11 (Facture), I-12 (Avoir), I-13 (Honoraire), I-14 (Marché public), I-15 (Export), I-16 (Bon de commande).
Code type de document ∈ Codes types de document : {I-11, I-12, I-13, I-14, I-15, I-16}
TEIF-R005ERRORLa date d'émission (DateText functionCode='I-31') est obligatoire.
Date d'émission (I-31) est obligatoire
TEIF-R006ERRORL'identifiant du fournisseur (PartnerDetails functionCode='I-62') est obligatoire.
Identifiant fournisseur est obligatoire
TEIF-R007ERRORLe nom du fournisseur (PartnerName) est obligatoire.
Nom du fournisseur est obligatoire
TEIF-R008ERRORL'identifiant de l'acheteur (PartnerDetails functionCode='I-64') est obligatoire.
Identifiant acheteur est obligatoire
TEIF-R009ERRORLe nom de l'acheteur (PartnerName) est obligatoire.
Nom de l'acheteur est obligatoire
TEIF-R010ERRORLe montant total TTC (Moa amountTypeCode='I-180') est obligatoire.
Total TTC (I-180) est obligatoire
TEIF-R011ERRORL'émetteur (MessageSenderIdentifier) doit être identifié par un matricule fiscal tunisien (type I-01).
Type identifiant émetteur = "I-01"
TEIF-R012ERRORLa devise (currencyIdentifier) doit être TND, EUR ou USD (Guide §5.9.2.5 page 66).
Devise facture ∈ Devises autorisées (Guide §5.9.2.5 page 66) : {TND, EUR, USD}
TEIF-R013ERRORLe matricule fiscal (I-01) doit respecter le format : 7 chiffres + clef + code TVA + catégorie + 3 chiffres (Guide §5.2.1.1 pages 15–17).
Type identifiant émetteur = "I-01"
Identifiant émetteur correspond au motif : ^[0-9]{7}[A-Z][ABPFN][MCPNE][0-9]{3}$
TEIF-CO-01ERRORLe total HT (I-182) doit être égal à la somme des montants HT des lignes (I-171), avec une tolérance de 0.01.
Total HT (I-182) est présent
Total HT (I-182) = Σ lin.lineAmount sur lin.lineAmount (±0.01)
TEIF-CO-02ERRORLe total TTC (I-180) doit être égal au total HT (I-182) + total taxes (I-181), avec une tolérance de 0.01.
Total TTC (I-180) est présent et Total HT (I-182) est présent et Total taxes (I-181) est présent
Total TTC (I-180) = Total HT (I-182) + Total taxes (I-181) (±0.01)
TEIF-R014ERRORL'unité de mesure (Quantity/@measurementUnit) est obligatoire sur chaque ligne (XSD use='required').
Unité de mesure est obligatoire
TEIF-R015ERRORLe taux de TVA (TaxRate) doit être l'un des taux autorisés : 0, 7, 12, 13 ou 19 % (Guide §5.10).
Taux de taxe ligne (%) ∈ Taux de TVA autorisés (%) : {0, 7, 12, 13, 19}
TEIF-R016ERRORLe code type de taxe ligne (LinTax/TaxTypeName/@code) doit être une valeur reconnue (I-1602 TVA, I-1601 droit de timbre, I-162 FODEC…).
Code type taxe ligne ∈ Codes types de taxe : {I-160, I-161, I-162, I-163, I-164, I-165 … (14 valeurs)}
TEIF-R017ERRORLe code type de taxe récapitulatif (InvoiceTax/Tax/TaxTypeName/@code) doit être une valeur reconnue.
Code type taxe ∈ Codes types de taxe : {I-160, I-161, I-162, I-163, I-164, I-165 … (14 valeurs)}
TEIF-R018ERRORLe code type de document (DocumentType/@code) est obligatoire.
Code type de document est obligatoire
Tables de référence
11 listesVersions TEIF supportées
teif-versionsCodes types de document
document-type-codesTypes d'identifiant partenaire
identifier-typesCodes types de taxe
tax-type-codesDevises autorisées (Guide §5.9.2.5 page 66)
currenciesTaux de TVA autorisés (%)
vat-ratesCodes conditions de paiement
payment-terms-codesCodes modalités de paiement
payment-condition-codesCodes moyens de paiement
payment-means-codesCodes institutions financières
financial-institution-codesAgences de contrôle autorisées
controlling-agencies