Analyser le fichier de retour (ANS)

Il y a deux catégories d’erreur :

  • Les erreurs de format et/ou valorisation de champ.
  • Les erreurs liées à l’exécution des paiements.

Le traitement effectué par la plateforme s’effectue en deux phases :

  • La première phase vérifie l’intégrité du fichier et détecte les erreurs de format et/ou de valorisation. En cas d’erreur, le fichier est rejeté dans son intégralité.

    Cette première phase ne réalise des contrôles que sur la globalité du fichier. Les cas d’erreur sur les enregistrements détail sont traités dans la deuxième phase.

  • La deuxième phase procède à l’exécution des paiements, ligne par ligne. En cas d’erreur sur un des paramètres (exemple : identifiant non trouvé, devise incorrecte, etc.), le code de traitement sera valorisé à 30 dans l’enregistrement détail, et un champ complémentaire désignera la position de la donnée concernée. En cas de refus d’un paiement, l’origine du refus sera renseignée au niveau de l’enregistrement de détail.

Dans le premier cas d’erreur, le fichier de résultat ne comprendra qu’un unique enregistrement d’entête matérialisant l’incident et un enregistrement de fin. Le marchand devra resoumettre le fichier après correction, en modifiant le nom du fichier échangé.

Dans le deuxième cas, le fichier de résultat contiendra le même nombre d’enregistrements de détail que le fichier de demande. Seuls les paiements pour lesquels il y aura eu une erreur sur un des paramètres seront à resoumettre par le marchand.

Si un incident de fonctionnement survient et que la plateforme n’a pu traiter en temps et en heure le fichier, les traitements manquants seront effectués après rétablissement du service. Il ne faut donc pas représenter les paiements non traités dans un nouveau fichier.

Voici la réponse à notre fichier d’exemple 20161130.12345678.PAY.REQ.T.01

Le nom du fichier de réponse est 20161130.12345678.PAY.ANS.T.01.

Son contenu est le suivant :

00;PAY;02;0;;12345678;TEST;20161130;102008;20140922;141349
02;1;20161130;102008;000001;CD;3299;978;20140922;0;MON-IDENTIFIANT-TEST-1;
FR7630002005701234567890158;;;;;00;0;;FULL;20140922;141350;00;
FR7630002005701234567890158_CRLYFRPP;20170922
02;2;20161130;102008;000002;CD;790;978;20140922;0;MON-IDENTIFIANT-TEST-1;
FR7630002005701234567890158;;;;;00;0;;FULL;20140922;141351;00;
FR7630002005701234567890158_CRLYFRPP;20170922
01;2;2;0

Format de l'enregistrement d'entête :

Pos. Description Format Valeurs Equivalence dans le dictionnaire de données
01 Code enregistrement n2 00  
02 Type de fichier   PAY  
03 Version de fichier n2 02  
04 Code de retour de la première phase du traitement n1

0 : Traitement effectué

1 : Erreur de format

2 : Erreur de valorisation

 
05 Information sur l’erreur ans..255 Complément d’information sur l’erreur, vide en cas de succès.  
06 Identifiant de boutique n8 Idem demande si valide. vads_site_id
07 Environnement   Idem demande si valide. vads_ctx_mode
08 Date de création n8 Idem demande si valide.  
09 Heure de création n6 Idem demande si valide.  
10 Date de fin de traitement

Au format AAAAMMJJ

n8 20161130  
11 Heure de fin de traitement n6 130019  

Format des enregistrements de détail :

Pos. Description Format Valeurs Equivalence dans le dictionnaire de données
01 Code enregistrement n2 02  
02 Numéro de séquence n..6 idem requête  
03 Date de la transaction (idem requête) n8 idem requête vads_trans_date
04 Heure de la transaction (idem requête) n6 idem requête vads_trans_date
05 Identifiant de transaction (idem requête) n..6 idem requête vads_trans_id
06 Type de transaction (idem requête) a2 CD  
07 Montant (idem requête) n..12 idem requête vads_amount
08 Devise n3 idem requête vads_currency
09 Montant en contre-valeur euro n..12 idem requête vads_effective_amount
10 Devise de contre-valeur n3 idem requête  
11 Date de remise demandée n8 idem requête  
12 Mode de validation n1

0 si validation automatique

1 si validation manuelle

vads_validation_mode
13 Identifiant de carte ans..50 idem requête vads_identifier
14 Numéro du de contrat n7 Numéro du contrat utilisé pour traiter la demande  
15 Référence de commande ans..32 idem requête vads_order_id
16 Informations de transaction 1 ans..255 idem requête vads_order_info
17 Informations de transaction 2 ans..255 idem requête vads_order_info2
18 Informations de transaction 3 ans..255 idem requête vads_order_info3
19 Code retour du traitement  
Exemples :
  • 00 : Succès du traitement – Paiement accepté
  • 05 : Succès du traitement – Paiement refusé
  • 30 : Erreur de paramètre.

    Un complément d’information est disponible dans le champ 25

  • 96 : Erreur technique
vads_result
20 Code retour d’autorisation an..2

Valeur retournée par le serveur d’autorisation.

Voir la liste des codes dans le chapitre dictionnaire de données.

Vide si non applicable.

vads_auth_result
21 Numéro d’autorisation retourné par l'acquéreur n6 non applicable vads_auth_number
22 Mode d’autorisation   FULL vads_auth_mode
23 Date d’autorisation n8 Au format AAAAMMJJ  
24 Heure d’autorisation n6 Au format HHMMSS  
25 Code retour complémentaire ans..255 Contient le retour du module de contrôle des risques (si souscrit), ou la position du champ erroné en cas d’erreur 30.

Voir la liste des codes dans le chapitre dictionnaire de données.

Vide si non applicable.

vads_extra_result
26 Numéro du moyen de paiement (n° de carte ou n° IBAN et BIC an..36 Extrait du numéro du moyen de paiement. (ex: IBAN_BIC)

Le BIC est optionnel donc le numéro peut juste être l'IBAN.

vads_card_number
27 Date d'expiration n8 Au format AAAAMMJJ. Vide si non applicable  

Format de l'enregistrement de fin :

Pos. Description Format Valeurs
01 Code enregistrement n2 01
02 Nombre total d’enregistrements détail transmis n..6  
03 Nombre de paiements réussis n..6  
04 Nombre de paiements échoués n..6