Table des matières

Acronymes et abréviations

Formats des données :

a

alphabétique

as

alphabétique avec caractères spéciaux

n

numérique

an

alphanumérique

ans

alphanumérique avec caractères spéciaux

ns

numérique avec caractères spéciaux

bool

expression booléenne (true ou false)

3

longueur fixe avec 3 chiffres/caractères

..3

longueur variable avec maximum 3 chiffres/caractères

enum

énumération de valeurs admissibles

dttm

Date et heure ISO (AAAA-MM-JJThh:mm:ss)


Abréviations :

CND

condition

M

obligatoire (mandatory en anglais)

O

optionnel

C

conditionnel


Remarque : Veuillez noter que les noms des paramètres peuvent être en majuscules ou en minuscules.


Fichiers Batch

Le paiement via Batch consiste à transférer les données des transactions collectées des clients vers le serveur Axepta BNP Paribas sous forme de fichiers formatés. Le transfert peut se faire :

  • Manuellement via le back-office de BNP Paribas. (Se référer à la documentation Backoffice)
  • Automatiquement via un protocole de transfert sécurisé (sFTP).

Lors de ce processus, vous associez les données des transactions (comme l’identifiant, le montant et la devise) dans un fichier batch que vous transmettez ultérieurement à la solution de paiement. La solution de paiement procède ensuite aux paiements et enregistre le statut de transaction dans le fichier batch de retour. Après traitement, le commerçant peut télécharger le fichier batch avec les détails sur le statut de la transaction.

L’accès sFTP pour le transfert du fichier batch doit être demandé à l’Assistance BNP Paribas.

Les fichiers batch doivent être correctement structurés pour que la solution de paiement puisse les traiter.



Nom des fichiers Batch

Le nom d’un nouveau fichier batch commence par une lettre indiquant la phase. Par exemple T pour indiquer que le fichier vient d’être transféré. Il est suivi de la date de soumission au format AAAAMMJJ. Par exemple : 20160112. Celle-ci est suivie d’un décompte à trois chiffres qui commence à 001 et de l’identifiant du commerçant émis par BNP Paribas. Si vous soumettez plusieurs fichiers le même jour, vous devez définir le décompte sur 002, 003, 004, etc. L’extension du fichier doit être .DAT.

Le nom d’un fichier batch comprend donc quatre composants :

<Phase><Date><MerchantID><Counter>.dat

Le nom d’un fichier batch via FTP :

<Phase><Date><Counter><MerchantID>.dat


Composant

Description

Phase

T=Transféré, P= Traité (Processed en anglais)

Date

Date au format AAAAMMJJ (année, mois, jour)

Counter

Trois chiffres, décompte journalier de 001 à 999.

MerchantIDIdentifiant du commerçant (MID)

 

Le traitement du fichier batch passe par plusieurs phases indiquées dans le nom du fichier : le fichier d’origine du commerçant débute par le caractère T pour « transféré ». Après traitement, le fichier batch comporte le suffixe P (pour processed)

Si un commerçant (ayant le MerchandID : MerchantID) soumet deux fichiers batch le même jour, ces deux fichiers sont nommés comme suit :

T20160112001MerchantID.dat
T20160112002MerchantID.dat

Remarque : après que vous ayez transmis le fichier batch, le traitement des transactions débute. Après transmission et durant le traitement, le préfixe W (Waiting, en attente) est ajouté au fichier. Si le fichier batch est soumis via FTP/sFTP pour traitement, la phase doit être renommée W après l’upload par le système du commerçant. Le traitement commence uniquement après cette étape.

W20160112001MerchantID.dat
W20160112002MerchantID.dat

Lorsque toutes les transactions de paiement ont été effectuées, la solution de paiement marque les fichiers traités, qui contiennent désormais les détails du statut de transaction, avec la lettre P pour « Processed » (traité) et auxquels vous pouvez accéder dans la vue par batch du back office BNP Paribas via un téléchargement :

P20160112001MerchantID.dat
P20160112002MerchantID.dat


Transfert FTP de fichiers Batch

La solution de paiement vous permet de transférer des fichiers batch automatiquement via FTP (File Transfer Protocol). Pour transférer un fichier batch via FTP/sFTP, procédez comme suit :

  1. Enregistrer les données de transaction dans un fichier batch formaté
  2. Chiffrer le fichier batch
  3. Transférer le fichier batch
  4. Changer de phase après chargement (T ® W)
  5. Récupérer le fichier batch après traitement
  6. Vérifier le statut des transactions


Chiffrement du fichier Batch

Pour des raisons de sécurité, les fichiers batch doivent être chiffrés avant la transmission FTP/sFTP. Pour garantir un niveau de sécurité maximum, la solution de paiement utilise un chiffrement asymétrique avec PGP (Pretty Good Privacy). Le chiffrement avec GPG (GNU Privacy Guard) est également possible. Le fichier enregistré doit toutefois avoir l’extension .PGP, sans quoi aucun traitement n’est possible.

Le haut niveau de sécurité du chiffrement PGP repose sur un processus avec deux clés : une clé privée et une clé publique. BNP Paribas vous fournit une clé publique pour le chiffrement de votre fichier batch. Le fichier batch chiffré peut ensuite être déchiffré uniquement avec la clé secrète privée de BNP Paribas.

Vous pouvez également générer une clé publique et une clé privée pour votre entreprise. La solution de paiement chiffre le fichier batch avec votre clé publique. Le fichier peut ensuite être lu uniquement avec votre clé privée secrète.


Format des fichiers Batch

Un fichier batch comprend un en-tête (Header), plusieurs enregistrements et un pied de page (footer). Chaque entrée du fichier correspond à une ligne complétée avec CRLF (touche  Entrée). Les valeurs dans une ligne sont séparées par des virgules. Il s’agit du format CSV (Comma Separated Values, valeurs séparées par une virgule).

Les sections suivantes décrivent le format du fichier batch que vous transmettez à la solution de paiement et le fichier de réponse, dans lequel la solution de paiement enregistre les résultats des paiements.


Format des fichiers Batch soumis

Remarque : le fichier batch ne doit pas inclure de lignes vides au début et à la fin du fichier. Les lignes vides dans les listes sont uniquement prévues pour faciliter la lecture.

Remarque : les paramètres comme « Reason » ou « OrderDesc » peuvent ne pas contenir de virgules.

Remarque : dans les versions batch 2.x, il existe un autre champ pour <MID>. Il est donc possible pour un paramètre MasterMID de soumettre les transactions d’un SubMID


En-tête

Type,MerchantID,Date,Version


Enregistrement

Type,Action,<Amount>,<Currency>,<TransID>,<Data depends on Action>


Pied de page

Type,CountRecords,SumAmount


L’exemple suivant représente un fichier batch pour la capture de trois transactions par carte avec une valeur de 1,00 et 2,00 euros. Pour le premier paiement, le système du commerçant fournit le numéro de référence 123456, mais aucun numéro de référence n’est fourni pour le deuxième et le troisième :

HEAD,MerchantID,20160112,1.2


CC,Sale,100,EUR,1567890,123456,MasterCard,5490011234567890,200506,Your order from Jan. 4.

CC,Sale,100,EUR,1567891,,MasterCard,5490011234567890,200506,Your order from Jan. 4.

CC,Sale,200,EUR,10202280,,VISA,4907621234567890,200504,Your order from Jan. 4.


FOOT,3,400

 

La description de chaque champ et valeurs du jeu de données (Enregistrements/RECORDS) dans le fichier batch est disponible dans le chapitre correspondant du manuel sur la méthode de paiement.

 

Les paramètres généraux pour le transfert dans l’en-tête et le pied de page sont expliqués dans le tableau suivant :

Paramètre

Format

CND

Description

Type

a..11

M

« HEAD » pour en-tête (Header), « FOOT » pour pied de page (Footer) et, par exemple, « CC » pour carte. Le champ n’a pas à contenir 11 chiffres.

MerchantID

ans..30

M

Identifiant du commerçant (MID) fourni par BNP Paribas

Date

dttm8

M

Date de production du fichier au format AAAAMMJJ

Version

an6

M

La version batch utilisée détermine les paramètres facultatifs utilisés en addition. Les versions batch possibles dans chaque cas diffèrent selon la méthode de paiement et l’action effectuée.

Vous trouverez les versions possibles dans le chapitre sur les fichiers batch de la méthode de paiement correspondante.

CountRecords

n..5

M

Nombre d’enregistrements soumis sans en-tête (header) ni pied de page (footer)

SumAmount

n..12

M

Total des montants dans l’unité de devise la plus faible, p. ex. centimes dans le cas des euros, selon le tableau des devises.

Contactez l’Assistance si vous voulez capturer des montants inférieurs à 100 (unité de devise la plus faible).


Format des fichiers de reponse Batch

Lors du traitement des transactions, le gestionnaire des fichiers batch enregistre le statut de la transaction dans le fichier batch. Dans cette optique, les champs de statut et de code sont ajoutés dans les entrées de transaction dans la zone d’enregistrement (Record):

Enregistrement (Record)

CC,Capture,<Amount>,<Currency>,<TransID>,<RefNr>,<PayID>,<Status>,<Code>


Remarque : en règle générale, le retour des paramètres facultatifs dans le fichier de réponse se produit uniquement si ceux-ci étaient inclus dans le fichier soumis. En règle générale, aucune information d’envoi n’est fournie dans le fichier de réponse. Si vous avez à nouveau besoin de ces données, lisez-les à partir du paramètre de notification correspondant.

Les paramètres de réponse particuliers que le gestionnaire des fichiers batch enregistre dans la section d’enregistrement pour chaque transaction sont disponibles dans le chapitre relatif aux fichiers batch pour la méthode de paiement concernée.


Codes retours Batch

La solution de paiement prend en charge les codes d’erreur détaillés depuis la version 3.0. Il s’agit de codes hexadécimaux à huit chiffres. La structure et la signification des codes d’erreur sont décrites sur la base de l’exemple suivant :

2 105 0014


Le premier chiffre décrit le niveau de gravité de l’erreur. Toutes les valeurs supérieures à 0 indiquent un avertissement ou une erreur.

Remarque : un code d’erreur ne signifie pas nécessairement que la solution de paiement ou le système du commerçant a subi une erreur technique. La solution de paiement génère également un code d’erreur si une transaction a échoué car la banque refuse un paiement.

Les 2e, 3e et 4e chiffres du code d’erreur décrivent la catégorie de l’erreur. Les catégories d’erreur se rapportent aux erreurs de chiffrement (001) et de format (010), et aux détails des méthodes de paiement, initiés dans le cas des cartes (100) à débit immédiats (110) ou Cash&Go (140).

Les chiffres 5 à 8 du code d’erreur fournissent une indication sur les détails de l’erreur : instructions sur les problèmes de configuration comme des identifiants de terminaux manquants (0047) et dysfonctionnements au niveau du centre informatique de la banque du porteur de carte (121), mais également des refus standard de paiements par carte en cas de cartes expirées (110) ou de messages refusés (0100).

Remarque : les transactions sans erreur, pour des raisons de compatibilité avec la version 2.1, ne sont pas spécifiées par un 8, mais un zéro (0).

Vous trouverez la liste complète des codes d’erreur de la solution de paiement dans le fichier Excel.


Appels et réponses de Batch

Cette section décrit les paramètres qui doivent être transférés dans les enregistrements (Records) pour l’exécution d’un paiement par carte, et quelles informations peuvent être trouvées dans le fichier de réponse sur le statut du paiement.

La structure pour un paiement par carte dans un fichier batch à soumettre est la suivante :

HEAD,<MerchantID>,<Date>,<Version>

CC,Authorize,<Amount>,<Currency>,<TransID>,(<RefNr>),<CCBrand>,<CCNr|PCNr>, [<CCCVC>,]<CCExpiry>,<OrderDesc>[,<textfeld1>,<textfeld2>,<RTF>,<approvalcode>,<cardholder>,<Zone>]

CC,Capture,<Amount>,<Currency>,<TransID>,(<RefNr>),<PayID>,[<FinishAuth,<textfeld1>,<textfeld2>,<RTF>,<approvalcode>,<cardholder>]

CC,Sale,<Amount>,<Currency>,<TransID>,(<RefNr>),<CCBrand>,<CCNr|PCNr>, [<CCCVC>,]<CCExpiry>,<OrderDesc>[,<textfeld1>,<textfeld2>,<RTF>,<approvalcode>,<cardholder>,<Zone>]

CC,Credit,<Amount>,<Currency>,<TransID>,(<RefNr>),<PayID>[,<FinishAuth>,<textfeld1>,<textfeld2>,<RTF>,<approvalcode>,<cardholder>]

CC,CreditEx,<Amount>,<Currency>,<TransID>,(<RefNr>),<CCBrand>,<CCNr|PCNr>, [<CCCVC>,]<CCExpiry>,<OrderDesc>[,<textfeld1>,<textfeld2>,<RTF>,<approvalcode>,<cardholder>]

CC,Reverse,<Amount>,<Currency>,<TransID>,(<RefNr>),<PayID>

FOOT,<CountRecords>,<SumAmount>

 

Exemple de versions batch :

Version 1.2:

CC,Sale,<Amount>,<Currency>,<TransID>,(<RefNr>),<CCBrand>,<CCNr|PCNr>,<CCExpiry>,<OrderDesc>

CC,Sale,<Amount>,<Currency>,<TransID>,(<RefNr>),<CCBrand>,<CCNr|PCNr>,<CCExpiry>,<OrderDesc>,<textfeld1>,<textfeld2>,<RTF>,<cardholder>

Version 1.2.1:

CC,Sale,<Amount>,<Currency>,<TransID>,(<RefNr>),<CCBrand>,<CCNr|PCNr>,<CCExpiry>,<OrderDesc>,<textfeld1>,<textfeld2>,<RTF>,<approvalcode>,<cardholder>

Version 1.3:

CC,Sale,<Amount>,<Currency>,<TransID>,(<RefNr>),<CCBrand>,<CCNr|PCNr>,<CCCVC>,<CCExpiry>,<OrderDesc>,<textfeld1>,<textfeld2>,<RTF>

Version 1.5:

CC,Sale,<Amount>,<Currency>,<TransID>,(<RefNr>),<CCBrand>,<CCNr|PCNr>,<CCExpiry>,<OrderDesc>,<Zone>


Le tableau suivant décrit les champs et valeurs utilisés dans le jeu de données (Record (enregistrement)) dans le fichier batch :

Paramètre

Format

CND

Description

Type

a..11

M

« HEAD » pour en-tête (header), « FOOT » pour pied de page (footer), « CC » pour carte

Action

a..20

M

Le paramètre Action définit le type de la transaction :

Authorize (autorisation)

Capture

Sale

Refund

CreditEx (remboursement sans capture ; convenez de cela au préalable avec le Support BNP Paribas)

Reverse (annulation)

AuthSplit (capture partielle)

Renewal (renouvellement d’autorisation)

Amount

n..10

M

Montant dans l’unité de devise la plus petite (p. ex. centime d’euro).

Contactez l’Assistance si vous voulez capturer des montants inférieurs à 100 (unité de devise la plus faible).

Currency

a3

M

Code de devise, trois chiffres DIN / ISO 4217

TransID

ans..64

M

Identifiant de la transaction devant être unique pour chaque paiement.

Notez pour certaines connexions, les différents formats fournis au sein des paramètres spécifiques.

RefNr

an12

M

Numéro de référence unique

PayID

an32

M

Identifiant de cette transaction fournie par la solution de paiement

OrderDesc

ans..127

O

Description des produits achetés, prix à l’unité, etc.

CCBrand

a..22

C

Marque de la carte.

Notez bien l’orthographe ! Selon le tableau des marques de carte !

CCNr

n..16

C

Numéro de carte d’au moins 12 chiffres, numériques sans espace. Vous pouvez également transmettre un TOKEN (numéro de carte temporaire)

PCNr

n..16

O

Vous pouvez également transmettre un TOKEN (PCN) au lieu du numéro de carte réelle.

CCCVC

n..4

O

Vérification de carte : dans le cas de Visa et MasterCard, les 3 derniers chiffres sur la bande de signature de la carte. 4 chiffres dans le cas d’American Express.

CCExpiry

n6

O

Date d’expiration de la carte au format AAAAMM, p. ex. 201707.

FinishAuth

ans1

O

Version=1.4 : si vous utilisez le renouvellement d’autorisation, annulez la répétition avec la valeur Y dans le champ FinishAuth dans le cas d’une capture ou d’un remboursement. Exemple : vous capturez une livraison partielle. Le reste de la commande ne peut pas être fourni. Vous saisissez par conséquent Y dans le champ FinishAuth pour une capture partielle, afin que la solution de paiement n’autorise pas le montant restant.

RTFa1O

Abonnement à durée et montant fixes

  • Paiement initial : RTF=I
  • Echéances suivantes : RTF=R


Abonnement à durée et montants variables

  • Paiement initial : RTF=E
  • Echéances suivantes : RTF=M


La zone d’enregistrement dans le fichier de réponse pour les transactions par batch se présente comme suit :

HEAD,<MerchantID>,<Date>,<Version>

CC,Authorize,<Amount>,<Currency>,<TransID>,(<RefNr>),<PayID>,<CCBrand>,<CCNr|PCNr>,[<CCCVC>,]<CCExpiry>,<OrderDesc>[,<textfeld1>,<textfeld2>,<RTF>,<approvalcode>,<cardholder>,<Zone>],<Status>,<Code>

CC,Capture,<Amount>,<Currency>,<TransID>,(<RefNr>),<PayID>[<textfeld1>,<textfeld2>,<RTF>,<approvalcode>,<cardholder>],<Status>,<Code>

CC,AuthSplit,<Amount>,<Currency>,<TransID>,(<RefNr>),<PayID>,FAILED,<Code>,<Description>,[<PCNr>]

CC,Renewal,<Amount>,<Currency>,<TransID>,(<RefNr>),<PayID>,FAILED,<Code>,<Description>,[<PCNr>]

CC,Sale,<Amount>,<Currency>,<TransID>,(<RefNr>),<PayID>,<CCBrand>,<CCNr|PCNr>,[<CCCVC>,]<CCExpiry>,<OrderDesc>[,<textfeld1>,<textfeld2>,<RTF>,<approvalcode>,<cardholder>,<Zone>],<Status>,<Code>

CC,Credit,<Amount>,<Currency>,<TransID>,(<RefNr>),<PayID>[,<FinishAuth>,<textfeld1>,<textfeld2>,<RTF>,<approvalcode>,<cardholder>],<Status>,<Code>

CC,CreditEx,<Amount>,<Currency>,<TransID>,(<RefNr>),<CCBrand>,<CCNr|PCNr>,[<CCCVC>,]<CCExpiry>,<OrderDesc>[,<textfeld1>,<textfeld2>,<RTF>,<approvalcode>,<cardholder>],<Status>,<Code>

CC,Reverse,<Amount>,<Currency>,<TransID>,(<RefNr>),<PayID>,<Status>,<Code>

FOOT,<CountRecords>,<SumAmount>

 

Le tableau suivant décrit les paramètres de réponse que le gestionnaire des fichiers batch enregistre dans la zone d’enregistrement (record) pour chaque transaction (paramètres standard non expliqués ici, comme <TransID> ou <RefNR>, et les paramètres de requête sont retournés non modifiés et correspondent à l’appel tel que spécifié auparavant) :

Paramètre

Format

CND

Description

Action

a..20

M

Le paramètre Action définit le type de la transaction : capture ou remboursement (voir ci-dessous).

PayID

an32

M

Identifiant de cette transaction fournie par la solution de paiement

Status

a..50

M

OK ou FAILED (échec)

Code

n8

M

Code d’erreur selon les codes de réponses de la solution de paiement

PCNr

n..16

C

Le TOKEN est uniquement retourné dans le cas des types de transaction Authorize ou Sale et RefundEx. Il commence par 0 et les 3 derniers chiffres correspondent à ceux du véritable numéro de carte.

 

  • No labels