Skip to content

Default fields of a model

A model is not born empty: it receives the fields its nature imposes, plus the ones everybody used to add by hand. This page lists them, in the order they become the columns of the generated file.

Two obligations to tell apart:

  • Structural — the module cannot read a file without this field. It cannot be removed and stays required.
  • Seeded — the field is bound in advance for convenience, but stays optional: you may unbind it or make it required.

Scopes read Facture (Invoice) for what describes the whole document and Ligne (Line) for what describes one of its lines.

Sales invoices

Twenty-five fields, fifteen of them structural.

Invoice scope

Label Code Type Obligation
Etablissement (Establishment) establishment Text Structural
Point de vente (Point of sale) pointOfSale Text Structural
Vendeur (Seller) seller Text Seeded
Référence interne (Internal reference) reference Text Structural
Date d'émission interne (Internal issue date) issueDate Date Structural
Type de facturation (Invoicing type) invoiceTemplate Enumerated Structural
Devise (Currency) currency Text Structural
Taux de change (Currency rate) currencyRate Decimal Seeded
Mode de paiement (Payment method) paymentMethod Enumerated Structural
Référence client (Customer reference) customerReference Text Seeded
Client (Customer) customerName Text Structural
NCC du client (Customer TIN) customerFiscalIdentifier Text Seeded
Téléphone client (Customer phone) customerPhone Text Seeded
Email client (Customer email) customerEmail Text Seeded
Objet (Object) object Text Seeded
Condition de paiement (Payment condition) paymentCondition Text Seeded

Line scope

Label Code Type Obligation
Référence facture (Invoice reference) invoiceReference Text Structural
N° ligne (Line no) lineNo Integer Structural
Référence produit (Product reference) productReference Text Seeded
Désignation (Description) productName Text Structural
Quantité (Quantity) quantity Decimal Structural
Unité de mesure (Measure unit) measureUnit Text Seeded
Prix unitaire HT (Unit price excl. tax) unitPrice Money Structural
Remise (%) (Discount) discountPercent Percent Structural
TVA (VAT) vat Enumerated Structural

Invoice reference, the grouping key

The rows sharing the same Référence facture form a single invoice. That field is what gathers the rows of the file into documents.

Purchase slips

Twenty-four fields: the same as a sale, minus TVA — the purchase endpoint of the DGI accepts no tax on lines.

Five seeded fields change label, without changing code, since the party named is a supplier:

Label on a purchase slip Code Label on an invoice
Référence fournisseur (Supplier reference) customerReference Référence client
Nom du fournisseur (Supplier name) customerName Client
NCC du fournisseur (Supplier TIN) customerFiscalIdentifier NCC du client
Téléphone du fournisseur (Supplier phone) customerPhone Téléphone client
Email du fournisseur (Supplier email) customerEmail Email client

Everything else — obligations, types, order — matches the sales table.

Credit notes

Seven fields, all structural: the credit note catalogue belongs to the module and cannot be tuned. A credit note does not describe a sale; it names the invoice it corrects and the quantities it cancels.

Label Code Type Scope
Référence avoir (Credit note reference) reference Text Invoice
Réf. facture initiale (Initial invoice reference) initialInvoiceReference Text Invoice
Date d'émission (Issue date) issueDate Date Invoice
Description description Text Invoice
Référence avoir (Credit note reference) creditNoteReference Text Line
N° ligne initiale (Initial line no) targetLineNo Integer Line
Quantité à annuler (Quantity to cancel) quantityToCancel Decimal Line

None of the seeded fields of a sale is added here: the list above is exhaustive.

Values of the enumerated fields

The Légende (Legend) sheet of the generated workbook recaps these values under Valeurs permises (Allowed values), but it gives only the codes for the invoicing type and the VAT. Here is what they mean.

Invoicing type

Value Meaning
B2B The customer is a company or a professional holding an NCC
B2G The customer is a government institution
B2C The customer is a private individual
B2F The customer is abroad

The interface only shows the code: it is passed to the FNE as it stands.

Not the invoicing type of an import

This field is labelled Type de facturation (Invoicing type), but it carries the FNE transaction type. It has nothing to do with the invoicing types — classic, BTP/TELECOM, distribution… — which describe the presentation of a document. The two notions unfortunately share the same name on screen.

Payment method

Value Label
cash Espèce (Cash)
card Carte bancaire (Bank card)
check Chèque (Cheque)
mobile-money Mobile money
transfer Virement bancaire (Bank transfer)
deferred A terme (Deferred)

VAT

Value Meaning
TVA Standard VAT of 18%
TVAB Reduced VAT of 9%
TVAC Conventional VAT exemption, 0%
TVAD Legal VAT exemption, 0%, for TEE, RME and legally exempt operations
TVAE Export VAT exemption, 0%

Here too, only the code goes into the file.

Currency

The Devise (Currency) field is not enumerated in the model: nothing stops you from typing any text into it. The FNE, however, accepts only these eleven currencies:

Value Currency Value Currency
XOF CFA franc AUD Australian dollar
USD US dollar CNH Chinese yuan
EUR Euro CHF Swiss franc
JPY Japanese yen HKD Hong Kong dollar
CAD Canadian dollar NZD New Zealand dollar
GBP Pound sterling

Rules checked at import

No catalogue field arrives with a model validation rule or calculation formula: both are empty everywhere, and are set afterwards field by field, as Customize the fields of a model describes.

The module does apply its own checks when it reads the file. Every breach becomes a line of the Erreurs et avertissements (Errors and warnings) section of the import, with its sheet and its row number.

Required fields

A required field left empty blocks the import — unless it carries a calculation formula in the model: the module then computes it and expects nothing from the file.

Expected formats

Type What is accepted
Date yyyy-mm-dd in CSV, XML and JSON; dd/mm/yyyy in Excel
Integer A number without decimals
Decimal, Money, Percent A number, comma or dot as the separator
Boolean oui, non, yes, no, true, false
Text, Enumerated No format check

The two date conventions look nothing alike, and deliberately so: a workbook is filled by hand, the three other formats are written by another system.

In Excel, reformat nothing

If the cell is genuinely of type date, the module converts it itself, whatever its display — 2026-12-25, 25 December 2026, the American order. The dd/mm/yyyy shape only concerns text cells.

A collect file still written in dd/mm/yyyy is refused, with a message naming the cause rather than a plain type error.

A date is also checked for real, not merely for shape: 2026-13-45 looks right and does not exist, so the import refuses it.

Rules between fields

Rule Scope
If the Type de facturation is B2B, the NCC du client becomes required Invoice
If the Type de facturation is B2B, the Téléphone client and Email client become required Invoice
The NCC, once filled, must carry 7 digits followed by one capital letter — whatever the invoicing type Invoice
If Lié au RNE is yes, the RNE lié à field becomes required Invoice
Once an Autre taxe carries a name, its percentage becomes required Line
The Remise (%) cannot be negative Line

The rule on other taxes only bites if you bound those fields, which no nature seeds; a purchase slip does not even offer them. The discount, on the other hand, is seeded and structural in both natures.

Changelog

  • 1.0 (August 4, 2026): document created.