Les idées reçues des développeurs sur les factures

Dix-neuf idées reçues sur les factures, démenties par le fisc du Mexique, de l’Espagne, du Chili, du Brésil et de la France pendant la construction de Cord.

Cord mène une vente du devis au paiement puis à la facture dans 12 pays. Au départ, nous pensions que le plus dur serait les paiements. Ce furent les factures. Chaque point de cette liste est une hypothèse de notre code, jusqu’à ce que les règles d’un pays prouvent le contraire.

Le document

  1. Une facture est un PDF. Au Mexique, la facture est un fichier XML signé par le vendeur et tamponné par un certificateur agréé par l’administration fiscale (le SAT). Le PDF n’en est qu’une représentation imprimée, sans valeur juridique propre.
  2. Une facture existe dès qu’on l’enregistre. Au Mexique, en Argentine, au Chili, au Pérou, en Colombie et au Brésil, elle existe quand l’administration fiscale, ou un organisme qu’elle a agréé, l’accepte. Avant, c’est un brouillon.
  3. Un pays n’a qu’un type de facture. Le Brésil a un système pour les marchandises (la NF-e, autorisée par chaque État) et un autre pour les services (la NFS-e), et c’est la commune qui fixe le taux de l’impôt sur un service. L’Argentine a des factures de classe A, B et C, choisies selon la situation du vendeur et de l’acheteur au regard de la TVA.
  4. La date de facture est la seule qui compte. En Allemagne, la date de la prestation est obligatoire. Si elle est identique à la date de facture, la facture doit le dire.
  5. On sait toujours qui est le client. L’Espagne et l’Argentine autorisent la facture à un consommateur non identifié. L’Argentine, seulement en dessous d’un certain montant.

Les numéros

  1. On choisit ses numéros de facture. Au Chili, on télécharge auprès de l’administration fiscale un fichier signé avec la plage de numéros autorisés. La plage expire, et un numéro utilisé ne revient jamais, même si la facture a été rejetée.
  2. Un numéro de facture est unique par compte. Il est unique par identifiant fiscal et par série. Deux comptes avec le même identifiant fiscal ne peuvent pas partager une série, sinon l’administration voit une seule facture là où vous en avez deux.
  3. max(numero) + 1 suffit. Pas quand deux requêtes émettent en même temps. Nous utilisons un bail par séquence et un index unique, parce que notre driver Postgres passe par HTTP et ne peut pas tenir un advisory lock d’une instruction à l’autre.

L’argent

  1. La taxe est la somme des taxes de chaque ligne. Le Chili calcule la TVA sur le montant net total de la facture. Tant que nous arrondissions ligne par ligne, nos factures en pesos ne tombaient souvent pas juste : dans un test avec des montants aléatoires, 26 % des factures à deux lignes et 47 % de celles à cinq.
  2. Toute devise a des centimes. Les montants d’un document fiscal chilien sont en pesos entiers. Le yen n’a pas de subdivision et le dinar koweïtien a trois décimales. Math.round(montant * 100) facture à un client au Japon 100 fois le prix.
  3. Un pays n’a qu’une taxe sur les ventes. Le Québec applique sa TVQ de 9,975 % en plus de la TPS fédérale de 5 %. L’Espagne applique l’IVA, sauf aux Canaries (IGIC) et à Ceuta et Melilla (IPSI). Les États-Unis n’ont pas de taux national : à Los Angeles, le taux de l’État est de 7,25 %, et le taux réel, avec comté, ville et districts spéciaux, avoisine 9,5 %.
  4. Le taux de change, c’est celui de la BCE. La Banque centrale européenne ne publie ni le peso colombien, ni le chilien, ni l’argentin, ni le sol péruvien. Quand aucune source n’a le taux, nous nous arrêtons et nous le disons, parce qu’un taux inventé finit sur un document légal.

Changer d’avis

  1. On peut modifier une facture après l’avoir émise. Avec Verifactu, en Espagne, chaque enregistrement de facture contient l’empreinte SHA-256 du précédent. Une correction est un nouvel enregistrement qui pointe vers l’ancien. Nous l’imposons dans Postgres avec un trigger qui bloque UPDATE et DELETE sur les enregistrements signés : même notre propre code ne peut pas réécrire la chaîne.
  2. On peut annuler une facture. En Argentine, une facture validée par l’administration ne s’annule pas : on émet un avoir. Au Mexique, l’annulation a un délai légal et exige souvent l’accord du client.
  3. Payée veut dire terminée. Au Mexique, si vous avez facturé avant d’être payé, chaque paiement exige son propre justificatif électronique, au plus tard le 5 du mois suivant. Avec la réforme française, pour les services dont la TVA est exigible à l’encaissement, l’encaissement lui-même est déclaré.

Parler à l’administration fiscale

  1. Si la requête n’a pas répondu, on la renvoie. Un renvoi peut créer une deuxième facture légale. Quand nous n’avons pas de réponse, nous ne renvoyons jamais : nous demandons à l’administration ce qu’elle a reçu (en Argentine, le dernier numéro autorisé, puis cette facture) et nous décidons à partir de là.
  2. L’administration fiscale répond tout de suite. L’AEAT, en Espagne, indique combien de temps attendre avant l’envoi suivant. Nous chaînons l’enregistrement à l’émission de la facture et l’envoyons ensuite depuis une file d’attente : une panne de l’AEAT n’empêche personne de facturer.
  3. Si un lot est rejeté, toutes ses factures sont fausses. Il peut s’agir d’un seul enregistrement. Nous coupons le lot en deux jusqu’à l’isoler.
  4. La facture électronique obligatoire, c’est l’Amérique latine. Depuis le 1er septembre 2026, toute entreprise établie en France doit pouvoir recevoir des factures électroniques par une plateforme agréée, et les PME et microentreprises commencent à en émettre en septembre 2027. Verifactu devait entrer en vigueur en 2027 ; en octobre 2026, le gouvernement espagnol a annoncé octobre 2028, son quatrième report.

Pourquoi c’est important

Rien de tout cela n’est exotique. C’est à cela que ressemble la facturation, vue de l’intérieur, dans tout pays qui veut voir vos factures, et la liste ne cesse de s’allonger.

Cord s’en charge pour qu’une entreprise n’ait pas à le faire : un devis que le client approuve et paie depuis un seul lien, puis la facture en un clic. Le CFDI mexicain est actif, Verifactu en Espagne est en bêta, et les autres intégrations d’Amérique latine sont construites mais pas encore actives.

FIN DE L’ARTICLE

De la proposition au paiement. Tout dans un seul lien.

Envoyez un devis que votre client approuve et paie depuis un seul lien, sans créer de compte, puis facturez-le en un clic. Dans 12 pays, avec une offre gratuite et sans carte bancaire.