La norme ACP 005 expliquée : ce qui se cache derrière chaque fichier TEF canadien

La norme ACP 005 de Paiements Canada définit la structure de chaque fichier TEF 1464. Voici ce qu'elle précise et comment les banques la vérifient.

Chaque paiement fournisseur, dépôt de paie et débit préautorisé qu'une entreprise canadienne envoie à sa banque dans un fichier par lots suit le même livre de règles : la norme 005 de Paiements Canada, encore largement appelée ACP 005. Cet article explique ce que la norme couvre, ce qu'elle laisse aux banques et ce qu'elle implique pour la personne responsable des comptes fournisseurs.

Qui rédige la norme, et pourquoi « ACP »

Paiements Canada exploite les systèmes nationaux de compensation et de règlement. Jusqu'en 2016, l'organisme s'appelait l'Association canadienne des paiements, d'où le « ACP » qui est resté dans l'usage. La norme 005 est sa spécification pour l'échange d'opérations de « transfert automatisé de fonds » (TAF) entre institutions financières : les crédits et les débits par lots qui passent par le Système automatisé de compensation et de règlement.

Seuls les adhérents directs (les grandes institutions financières) échangent des fichiers entre eux selon la norme. Votre entreprise n'est pas membre de Paiements Canada. Vous êtes un émetteur : vous remettez un fichier à votre banque, et votre banque est responsable de ce qu'elle transmet ensuite. C'est pourquoi chaque banque publie sa propre « spécification de fichier TEF » pour ses clients. Ces documents diffèrent par leur formulation et par quelques champs optionnels, mais la structure d'enregistrement qu'ils décrivent est celle de la norme 005, avec une longueur de 1464 caractères.

Ce que la norme 005 définit réellement

La norme est une spécification de format de données. Elle couvre :

  • Les types d'enregistrements logiques et leur ordre : A (en-tête), C (détail des crédits), D (détail des débits) et Z (fin de fichier), plus des enregistrements de retours et de renversements que la plupart des émetteurs ne produisent jamais.
  • Les positions, longueurs et types de données de chaque champ. Chaque enregistrement compte exactement 1464 caractères; les enregistrements de détail comprennent 24 caractères de contrôle suivis de six segments de 240 caractères au maximum.
  • Les conventions de données : montants en cents sans virgule décimale, dates en 0AAJJJ, champs numériques complétés de zéros à gauche, champs alphanumériques complétés d'espaces à droite, texte en majuscules.
  • Les codes de type d'opération : un code à 3 chiffres dans chaque segment qui précise la nature du paiement (paie, paiement à un fournisseur, etc.).
  • L'identification des parties : l'émetteur par un ID d'émetteur de 10 caractères, le bénéficiaire par ses numéros d'institution, de transit et de compte.
  • Les totaux de contrôle de l'enregistrement Z, qui permettent au système récepteur de prouver que rien n'a été perdu ni dupliqué.

Elle ne définit pas la façon de livrer le fichier (téléversement sur le portail, transfert sécurisé), les heures limites, les frais ni la taille maximale du fichier. Ces éléments sont fixés par votre banque dans son entente avec vous.

L'enregistrement A, champ par champ

L'en-tête est l'enregistrement le plus simple et celui que le soutien technique examine en premier quand un fichier est rejeté. Son contenu utile occupe les 58 premières positions; le reste est du remplissage.

Positions Longueur Champ Notes
1 1 Type d'enregistrement Toujours A
2–10 9 Compteur d'enregistrements 000000001 pour l'en-tête
11–20 10 ID d'émetteur Attribué par votre banque; Zefty l'appelle ID d'émetteur bancaire
21–24 4 Numéro de création de fichier Unique pour chaque fichier, par exemple 0001, 0002, ...
25–30 6 Date de création du fichier Format julien 0AAJJJ
31–35 5 Centre de données de destination Fourni par votre banque
36–55 20 Réservé Zone de communication de la banque, normalement vide
56–58 3 Code de devise CAD
59–1464 1406 Remplissage Espaces

À l'intérieur d'un enregistrement C

Un enregistrement C commence par les mêmes 24 caractères de contrôle que l'en-tête (type C, compteur, ID d'émetteur, numéro de création de fichier), suivis d'un maximum de six segments. Un segment correspond à un paiement. Ses champs, dans l'ordre, sont :

Champ Longueur Contenu
Type d'opération 3 Code d'opération ACP du paiement
Montant 10 En cents, sans virgule décimale
Date d'échéance 6 0AAJJJ
Identification institutionnelle 9 0 + institution (3 chiffres) + transit (5 chiffres)
Numéro de compte du bénéficiaire 12 Aligné à gauche, complété d'espaces
Numéro de trace 22 Zéros; attribué par la banque
Type d'opération mémorisé 3 Normalement des zéros
Nom abrégé de l'émetteur 15 Votre nom d'entreprise, abrégé
Nom du bénéficiaire 30 Le nom du fournisseur
Nom complet de l'émetteur 30 Votre nom d'entreprise tel qu'enregistré à la banque
ID d'utilisateur de l'adhérent direct émetteur 10 Votre ID d'émetteur, de nouveau
Numéro de référence de l'émetteur 19 Texte libre : un numéro de facture
Identification institutionnelle pour les retours 9 Où acheminer les retours
Numéro de compte pour les retours 12 Votre compte, pour les retours
Renseignements divers de l'émetteur 15 Optionnel
Remplissage 22 Espaces
Code de règlement 2 Espaces
Identification de l'élément invalide 11 Zéros; rempli par la banque lors d'un retour

Ces longueurs totalisent 240. Six segments font 1440 caractères; avec le préfixe de 24 caractères, l'enregistrement atteint 1464.

L'enregistrement Z : la somme de contrôle de la banque

La fin de fichier reprend le préfixe de contrôle, puis indique la valeur totale et le nombre d'opérations de débit (14 et 8 chiffres), ainsi que la valeur totale et le nombre d'opérations de crédit (14 et 8 chiffres). Pour un fichier de paiement aux fournisseurs, les totaux de débit sont à zéro. La banque additionne les segments reçus et compare. Un écart est un rejet ferme, car il signifie que le fichier a été modifié ou tronqué en cours de route.

Comment les banques valident un fichier ACP 005

La validation se fait généralement en trois couches, et les messages d'erreur que vous recevez indiquent laquelle a échoué.

  1. Vérifications structurelles. Chaque enregistrement compte-t-il 1464 caractères? Le fichier commence-t-il par A et se termine-t-il par Z? Le compteur d'enregistrements est-il séquentiel?
  2. Vérifications de contenu. L'ID d'émetteur est-il connu et actif? Le numéro de création de fichier est-il nouveau? Les dates se situent-elles dans la fenêtre permise par la banque? Les numéros d'institution et de transit existent-ils dans le fichier des institutions financières? Les montants sont-ils numériques?
  3. Vérifications d'affaires. L'enregistrement Z correspond-il au détail? Le total respecte-t-il votre limite autorisée? Le compte à débiter est-il celui de votre entente?

Un fichier qui franchit les trois couches est accepté pour traitement, normalement pour règlement à la date d'échéance indiquée dans chaque segment.

Ce que la conformité signifie pour les comptes fournisseurs

Pour un contrôleur, la « conformité ACP 005 » n'est pas un certificat que l'on obtient. C'est une propriété de chaque fichier envoyé. Trois habitudes vous gardent conformes :

  • Ne modifiez jamais un fichier généré à la main.
  • Gardez le contrôle du numéro de création de fichier. Un seul compteur par ID d'émetteur, incrémenté à chaque fichier, y compris les fichiers de test.
  • Conservez une piste de vérification. Pour chaque fichier, gardez le fichier lui-même, la liste des factures payées, la date du téléversement et l'identité de la personne qui l'a approuvé. Zefty conserve chaque exportation avec son numéro de fichier et produit un rapport PDF qui énumère chaque champ de chaque enregistrement A, C et Z : la piste de vérification est constituée au moment même où le fichier est généré.

L'ACP 005 et Zefty

Zefty génère des fichiers TEF 1464 à partir des factures de Zoho Books, avec la structure décrite ci-dessus. L'ID d'émetteur, l'institution, le transit et le compte saisis lors de la configuration bancaire alimentent les enregistrements A et C; les numéros d'institution, de transit et de compte de chaque fournisseur, synchronisés depuis Zoho Books, alimentent les champs du bénéficiaire; le numéro de création de fichier est suivi automatiquement comme « dernier numéro de fichier » dans vos paramètres du fichier TEF 1464. Le mode test produit un fichier marqué comme test pour que vous puissiez valider le format avec votre banque avant de payer qui que ce soit.

À retenir

  • L'ACP 005 est la norme 005 de Paiements Canada, la spécification des fichiers TEF par lots échangés par le Système automatisé de compensation et de règlement.
  • Les banques publient leurs propres spécifications TEF, mais toutes appliquent la même structure d'enregistrement de 1464 caractères : en-tête A, détail C ou D, fin de fichier Z.
  • Un enregistrement C contient jusqu'à six segments de paiement de 240 caractères, chacun identifiant le bénéficiaire par ses numéros d'institution, de transit et de compte.
  • Les totaux de l'enregistrement Z servent de somme de contrôle; le numéro de création de fichier de l'enregistrement A doit être unique.
  • La conformité est une propriété de chaque fichier. Automatiser la génération et conserver une piste de vérification par fichier est la façon pratique de rester conforme.

Vous préférez la même information sous forme de référence? Consultez notre page sur la conformité pour le tableau des enregistrements et les règles de validation, ou lisez Comment ça fonctionne pour voir comment Zefty construit un fichier conforme à partir de vos factures Zoho Books.

Prêt à payer vos fournisseurs depuis Zoho Books ?

Zefty transforme vos factures impayées de Zoho Books en un fichier TEF 1464 conforme à la norme ACP 005 accepté par votre banque, puis enregistre le paiement dans Zoho Books.