Nordlet

← Documentation / Glossaire

Qu'est-ce qu'un code QR EPC ? Le paiement par scan sur facture

La norme de code QR du Conseil européen des paiements pour les virements SEPA, le contenu de la charge utile, la prévention des erreurs de paiement et ses cas d'utilisation.

Un code QR EPC est un code-barres carré figurant sur une facture qu'un client scanne avec son application bancaire pour pré-remplir les informations de paiement : votre IBAN, votre nom, le montant et la référence de paiement. Il lui suffit de confirmer pour que le virement soit émis.

Il est défini par le Conseil européen des paiements (European Payments Council) dans ses directives Quick Response Code Guidelines to Enable Data Capture for the Initiation of a SEPA Credit Transfer. Son champ d'application est délibérément restreint : il sert uniquement à initier un virement SEPA, sans autre fonction.

Le problème résolu

La saisie manuelle des paiements est une source récurrente d'erreurs financières. Lorsqu'un client recopie un IBAN de 20 caractères et un numéro de référence depuis un PDF dans son application bancaire, il lui arrive d'inverser un chiffre, d'omettre la référence ou de se tromper de montant.

Chacune de ces erreurs a un coût pour vous. Une référence erronée se traduit par un paiement non lettré sur votre compte, obligeant un opérateur à identifier la facture correspondante, ce qui résout précisément le problème auquel le rapprochement bancaire est destiné. Une erreur d'IBAN peut quant à elle acheminer les fonds vers un destinataire totalement différent.

Le scan d'un code QR supprime la saisie manuelle et élimine par conséquent cette catégorie d'erreurs. Il réduit également le délai entre la lecture de la facture et l'envoi du paiement à quelques secondes, ce qui accélère sensiblement les délais de recouvrement sur les factures B2C et B2B de petite structure.

Ce que contient la charge utile

La charge utile (payload) selon la norme EPC069-12 se compose de texte brut, avec un champ par ligne, dans un ordre fixe :

BCD                        ← identifiant de service
002                        ← version
1                          ← jeu de caractères (1 = UTF-8)
SCT                        ← identification (virement SEPA)
                           ← BIC (facultatif dans l'EEE)
UAB Pavyzdys               ← nom du bénéficiaire
LT121000011101001000       ← IBAN du bénéficiaire
EUR605.00                  ← montant préfixé par la devise
                           ← code motif (facultatif)
                           ← référence de communication structurée
Invoice S-1041             ← texte de communication non structurée
                           ← informations du bénéficiaire à l'attention du donneur d'ordre

Contraintes importantes à garder à l'esprit : la charge utile totale ne doit pas dépasser 331 octets, le montant doit être compris entre 0,01 et 999 999 999,99 EUR, seul l'euro est pris en charge, et vous devez utiliser soit la référence structurée, soit le texte non structuré, mais jamais les deux en même temps.

Le champ structuré est destiné à une référence créancier telle que ISO 11649 RF, dont l'utilisation est recommandée lorsque votre marché la prend en charge, car une référence vérifiable par machine se rapproche de manière plus fiable qu'un texte libre.

Il convient de noter que la charge utile ne contient aucune signature ni mécanisme de sécurité. Il s'agit d'une aide à la saisie et non d'une instruction authentifiée : l'orateur (payeur) valide toujours le paiement dans sa propre application bancaire, sous sa propre authentification. C'est pourquoi un code QR ne peut pas transférer de fonds de manière autonome, et c'est également la raison pour laquelle un code QR figurant sur une facture frauduleuse présente exactement le même risque qu'un IBAN frauduleux imprimé en texte brut.

Domaines d'utilisation

Largement adopté dans toute la zone euro et constituant de fait un standard dans plusieurs pays - Autriche, Allemagne, Belgique, Pays-Bas, Finlande - où les principales applications bancaires le reconnaissent nativement. Certains pays utilisent leurs propres variantes établies, à l'instar de la QR-facture suisse (une norme différente et plus prescriptive) et de divers schémas nationaux antérieurs à la norme EPC069-12.

La compatibilité dépend de l'application bancaire du payeur, et non de la vôtre. L'ajout du code ne engendre aucun coût pour vous et simplifie la démarche de tout client dont l'application le lit ; ceux dont l'application ne le prend pas en charge procèdent simplement de la manière habituelle.

Notions apparentées mais différentes

  • SEPA Request-to-Pay (RTP) - Une norme de messagerie dans laquelle le bénéficiaire envoie une demande de paiement structurée que le payeur peut accepter ou refuser dans son application. Il s'agit d'un échange interactif plutôt que d'un code imprimé, qui peut inclure une date d'échéance et des options de fractionnement.
  • Liens de paiement - Une URL vers une page de paiement hébergée, généralement gérée par un prestataire de services de paiement (PSP), prenant en charge les cartes bancaires et les portefeuilles numériques. Il s'agit d'un circuit distinct assorti de coûts différents : un paiement par carte engendre des frais d'acquisition, contrairement à un virement SEPA initié par code QR, ce qui représente une différence économique notable sur les factures de montant élevé. Ces flux de PSP génèrent des règlements qui nécessitent un rapprochement des paiements.

Statut dans Nordlet

Non implémenté. Les fichiers PDF de factures ne comportent actuellement pas de code QR EPC et la génération de liens de paiement n'est pas disponible. Ces deux fonctionnalités sont planifiées mais absentes à ce jour, et il est préférable de l'indiquer clairement plutôt que de présenter une intention comme une fonctionnalité existante.

Les données requises par le code sont déjà en place (l'IBAN de l'entreprise, les coordonnées du partenaire, le montant de la facture, la devise et le numéro de facture complet servant de référence de paiement), de même que la voie de génération : les PDF de facture étant produits par l'API, l'intégration du code QR relève du rendu visuel plutôt que d'un nouveau modèle de données.

L'implémentation future héritera de deux contraintes inhérentes à la norme elle-même : la limitation à l'euro, excluant les factures libellées dans d'autres devises, et la limite de 331 octets pour la charge utile, qui restreint la longueur cumulée du numéro de facture et du texte de communication.

En attendant, les mesures d'atténuation reposent sur le rapprochement : faire figurer le numéro de facture de manière bien visible et s'appuyer sur le rapprochement bancaire qui attribue un score aux descriptions de paiement contenant le numéro de document.

FAQ

Qu'est-ce qu'un code QR EPC ?

Il s'agit d'un code QR conforme à la norme du Conseil européen des paiements qui encode les détails d'un virement SEPA (nom du bénéficiaire, IBAN, montant et référence), permettant au payeur de le scanner avec son application bancaire au lieu de les saisir manuellement.

Un paiement par code QR est-il sécurisé ?

Le code lui-même ne contient ni dispositif de sécurité ni signature ; il se contente de pré-remplir un formulaire de virement. Le payeur autorise ensuite le virement dans sa propre application bancaire avec ses propres authentifiants. Il s'agit d'une simple commodité de saisie, ce qui signifie qu'un code présent sur une facture frauduleuse présente le même risque qu'un IBAN frauduleux en texte brut.

Quelles devises sont prises en charge ?

Uniquement l'euro. Cette norme est spécifique aux virements SEPA, de sorte que les factures établies dans d'autres devises ne peuvent pas comporter de code QR EPC conforme.

Toutes les applications bancaires européennes prennent-elles en charge les codes QR EPC ?

La plupart des grandes applications de la zone euro les reconnaissent, et la norme est de fait devenue un standard dans plusieurs pays, bien que la prise en charge dépende de la banque du payeur. L'ajout du code facilite le paiement pour ceux qui peuvent l'utiliser et n'a aucun impact négatif pour les autres.

Quelle est la différence entre un code QR EPC et un lien de paiement ?

Un code QR déclenche un virement bancaire effectué directement par le payeur, sans frais de traitement. Un lien de paiement ouvre une page de paiement hébergée (généralement par carte ou portefeuille via un PSP), qui entraîne des frais et génère un règlement à rapprocher ultérieurement.