Retour au vérificateur ZATCAStructure du code

Que contient le QR code d’une facture électronique ?

Le code carré en bas d’une facture fiscale simplifiée n’est ni une image aléatoire ni un lien. C’est un texte compressé contenant cinq champs ordonnés, écrits dans un format appelé TLV puis converti en Base64 pour que le code puisse les transporter.

Vérificateur ZATCA

Explication simple de la structure TLV des QR codes de facturation saoudienne : les cinq balises, le sens de chaque champ, et la lecture des valeurs après décodage.

Vérifier ma facture

Qu’est-ce que le format TLV ?

TLV signifie Tag, Length, Value : le numéro de balise, puis la longueur de la valeur, puis la valeur elle-même encodée en UTF-8. Cette structure permet au lecteur de savoir exactement où finit chaque champ et où commence le suivant, même si les longueurs de texte diffèrent.

Les cinq balises

BaliseContenu
1Nom du vendeur
2Numéro de TVA (15 chiffres)
3Date et heure de la facture, ISO 8601
4Total de la facture TVA comprise
5Montant de la TVA

Une fois ces champs disposés selon cet encodage, l’ensemble est converti en Base64, et c’est cette chaîne qui est dessinée dans le code. C’est pourquoi décoder le code donne une chaîne Base64, et décoder cette chaîne donne les champs.

Pourquoi un code échoue-t-il parfois alors qu’il est présent ?

  • Champ manquant : le code est dessiné mais une balise est absente, la vérification ne peut pas aboutir.
  • Format erroné : le numéro de TVA a moins ou plus de 15 chiffres.
  • Horodatage avec millisecondes : le format attendu n’en comporte pas.
  • Calcul de TVA incohérent : le montant de TVA ne correspond pas à 15 % du total hors taxe.

L’outil ne se contente pas de dire « code invalide ». Il vous montre le champ en cause, explique pourquoi, et suggère ce que vous pouvez faire.

Voyez le contenu de votre propre code

Le vérificateur ZATCA vous affiche le contenu décodé champ par champ. Rien n’est caché : vous voyez exactement ce qu’un lecteur voit.

Questions fréquentes

Le code contient-il les données de l’acheteur ?

Non. Sur une facture fiscale simplifiée, le contenu se limite aux données du vendeur, à la date et aux montants — aucun nom ni information sur l’acheteur.

Le code peut-il être falsifié ?

Techniquement, un code peut être généré avec n’importe quel contenu. C’est pourquoi l’outil ne considère jamais la présence d’un code comme une preuve allant au-delà de sa complétude structurelle, et ne vérifie jamais l’identité du vendeur.

Guide de facturation électronique