Introduction
Mercanet est une solution de paiement de commerce électronique multicanale sécurisée conforme à la norme PCI DSS. Elle vous permet d’accepter et de gérer des transactions de paiement en prenant en compte les règles métier liées à votre activité (paiement à la livraison, paiement différé, paiement récurrent, paiement en plusieurs fois, …).
L’offre Mercanet e-Payment Solution inclut l’envoi des journaux contenant l'ensemble des transactions de paiement effectuées à partir de votre boutique Web, ainsi que les opérations de caisse réalisées sur ces transactions.
À qui s'adresse ce document
Ce document est destiné aux commerçants qui souhaitent comprendre la procédure d'envoi des journaux générés par l'offre Mercanet ainsi que la structure et les données contenues dans ces journaux.
Pour avoir une vue d’ensemble de la solution Mercanet, nous vous conseillons de consulter les documents suivants :
- Présentation fonctionnelle ;
- Guide de configuration des fonctionnalités.
Procédure d'envoi des journaux
Les journaux de transactions et d'opérations peuvent être envoyés à un rythme journalier ou hebdomadaire, avant 4h00 (heure française). Les journaux de rapprochement des transactions et de rapprochement des impayés sont disponibles quotidiennement, avant 12h00. Les journaux des cartes échues sont envoyés à un rythme mensuel, avant 10h00 (heure française).
Le type de format proposé est le « CSV » (avec le symbole « ; » comme séparateur). En général, ces documents sont envoyés en pièce jointe au courrier électronique, mais ils peuvent également être envoyés par FTP (par exemple dans le cas de fichiers volumineux). Lorsque vos fichiers dépassent régulièrement 10 Mo, nous préconisons de choisir le mode d'envoi par FTP.
Structure générique des journaux
Format des fichiers
Chaque fichier se compose de quatre parties successives :
- Type de journal : cette partie précise le type de journal et apporte d’autres renseignements d'ordre général comme le nom du journal, la date de génération ou la version TAB20 utilisée. C'est la première ligne du fichier, elle débute par le mot clé « TITLE ».
- Entête du journal : c'est la deuxième ligne du fichier, elle liste les intitulés des colonnes. L’entête est spécifique à chaque type de journal et commence par le mot clé « HEADER ».
- Corps du journal : ce sont les lignes qui suivent, elles commencent par un mot clé différent selon le type de journal (« TRANSACTION », « OPERATION », etc.). C’est cette partie qui contient les enregistrements (transactions, opérations de caisse) à proprement parler.
- Fin du journal : c'est la dernière partie, elle marque la fin du fichier et ne comprend qu’un champ renseigné avec le mot clé « END » (journaux des transactions ou des opérations et des cartes échues) ou « FOOTER » (journaux de rapprochement des transactions ou de rapprochement des impayés).
Versions TAB20
Il existe un nombre différent de versions TAB20 pour chaque journal. Dans tous les cas, chaque version fournit davantage d'informations que la version précédente.
Journal des transactions | Journal des opérations | Journal de rapprochement des transactions | Journal de rapprochement des impayés | Journal des cartes échues | |
---|---|---|---|---|---|
Structure | TITLE; […] HEADER; […] TRANSACTION; […] TRANSACTION; […] [...] END |
TITLE; […] HEADER; […] OPERATION; […] OPERATION; […] […] END |
TITLE; […] HEADER; […] RECONCILIATION; [...] RECONCILIATION; [...] […] FOOTER |
TITLE; […] HEADER; […] UNPAID; [...] UNPAID; [...] […] FOOTER |
TITLE; […] HEADER; […] PAYMENTMEAN; […] PAYMENTMEAN; […] […] […]; END |
Nombre de versions TAB20 | 23 | 10 | 13 | 10 | 1 |
Version |
Surcharge des formats de dates
Les journaux « surchargent » (modifient) le format de date de certains champs, c'est-à-dire qu'ils écrasent les formats initialement définis dans le dictionnaire des données Mercanet.
Voici un récapitulatif des champs concernés pour chaque journal, avec les formats surchargés :
Nom du journal | Nom du champ | Format |
---|---|---|
Journal des transactions | transactionDateTime | ANS19 YYYY-MM-DD hh:mm:ss |
Journal des opérations | operationDateTime | ANS19 YYYY-MM-DD hh:mm:ss |
Journal de rapprochement des transactions | transactionDateTime | ANS15 YYYYMMDD hhmmss |
remittanceDateTime | ANS19 YYYY-MM-DD hh:mm:ss |
|
Journal de rapprochement des impayés | transactionDatetime | ANS19 YYYY/MM/DD hh:mm:ss |
remittanceDateTime | ANS19 YYYY/MM/DD hh:mm:ss |
|
Journal des cartes échues | Pas de surcharge de format de date | Pas de surcharge de format de date |
Convention de ce guide
La convention suivante est utilisée dans ce guide :
- la colonne « Position » indique la position du champ (la colonne) dans le journal ;
- la colonne « Nom du champ » indique l’intitulé utilisé dans l’entête.
Journal des transactions
Fonction
Ce journal contient toutes les transactions de paiement (acceptées ou refusées) réalisées à partir de votre boutique Web depuis l’envoi du journal précédent, à l’exception des transactions en doublon (code 94) et de celles en attente (code 60).
Il peut servir à pallier les situations où votre système d’information n’est pas notifié de l’aboutissement d’une transaction : par exemple, si vous intégrez les pages de paiement de Mercanet, le client est susceptible de ne pas cliquer sur le bouton « Retour à la boutique » (absence de réponse manuelle) ; ou bien un problème réseau peut survenir (absence de réponse automatique).
En utilisant un outil de traitement automatique ou manuel, vous pouvez analyser ce journal, mettre à jour vos bases de données et assurer de cette manière la livraison de toutes les commandes dont le paiement a été accepté.
Les guides d’implémentation de chaque moyen de paiement peuvent contenir des précisions ou exceptions, nous vous invitons à les consulter pour davantage de précisions.
Structure
Type du journal
Position | Nom du champ | Valeur | Description |
---|---|---|---|
1 | recordCode | "TITLE" | Type de ligne |
2 | reportName | "TRANSACTION_REPORT" | Nom du journal |
3 | fileDateTime | ANS19 AAAA-MM-JJ hh:mm:ss |
Date de génération |
4 | fileFormatVersion | ANS20 "TAB20_VX" |
Version |
Entête du journal
Position | Nom du champ | Valeur | Description |
---|---|---|---|
1 | recordCode | "HEADER" | Type de ligne |
2 - (...) | La liste des intitulés des champs est fournie dans le tableau sur le corps du journal. |
Corps du journal
Chaque transaction est détaillée dans une ligne distincte contenant les champs suivants.
Position | Nom du champ | Depuis la version |
---|---|---|
1 | recordCode = "TRANSACTION" | TAB20_V1 |
2 | merchantId | TAB20_V1 |
3 | transactionReference | TAB20_V1 |
4 | transactionServiceType | TAB20_V1 |
5 | originAmount | TAB20_V1 |
6 | amount | TAB20_V1 |
7 | currencyCode | TAB20_V1 |
8 | transactionDateTime (cf. surcharge des formats de dates) | TAB20_V1 |
9 | captureDay | TAB20_V1 |
10 | captureMode | TAB20_V1 |
11 | orderChannel | TAB20_V1 |
12 | paymentPattern | TAB20_V1 |
13 | paymentMeanType | TAB20_V1 |
14 | paymentMeanBrand | TAB20_V1 |
15 | maskedPan | TAB20_V1 |
16 | orderId | TAB20_V1 |
17 | responseCode | TAB20_V1 |
18 | authorisationId | TAB20_V1 |
19 | transactionStatus | TAB20_V1 |
20 | complementaryCode | TAB20_V1 |
21 | complementaryInfo | TAB20_V1 |
22 | merchantWalletId | TAB20_V2 |
23 | paymentMeanSequence | TAB20_V2 |
24 | merchantToken | TAB20_V2 |
25 | panExpiryDate | TAB20_V2 |
26 | captureLimitDate | TAB20_V2 |
27 | acquirerResponseCode | TAB20_V2 |
28 | cardCSCResultCode | TAB20_V2 |
29 | returnContext | TAB20_V2 |
30 | customerId | TAB20_V2 |
31 | customerIpAddress | TAB20_V2 |
32 | scoreValue | TAB20_V2 |
33 | scoreColor | TAB20_V2 |
34 | scoreProfile | TAB20_V2 |
35 | scoreThreshold | TAB20_V2 |
36 | guaranteeIndicator | TAB20_V2 |
37 | holderAuthentStatus en TAB20_V2 threeDHolderAuthentStatus à partir de TAB20_V3 |
TAB20_V2 |
38 | merchantTokenOrigin | TAB20_V3 |
39 | terminalId | TAB20_V3 |
40 | bankCode | TAB20_V3 |
41 | sddMandateId | TAB20_V3 |
42 | panEntryMode | TAB20_V4 |
43 | walletType | TAB20_V4 |
44 | holderAuthentMethod | TAB20_V4 |
45 | holderAuthentStatus | TAB20_V4 |
46 | statementReference | TAB20_V4 |
47 | dccStatus | TAB20_V5 |
48 | dccAmount | TAB20_V6 |
49 | dccCurrencyCode | TAB20_V6 |
50 | dccExchangeRate | TAB20_V6 |
51 | dccRateValidity | TAB20_V6 |
52 | dccProvider | TAB20_V6 |
53 | remainingAmount | TAB20_V7 |
54 | fromTransactionRemainingAmount | TAB20_V7 |
55 | fromTransactionReference | TAB20_V7 |
56 | dueDate | TAB20_V7 |
57 | creditorId | TAB20_V7 |
58 | walletPaymentMeanAlias | TAB20_V7 |
59 | settlementMode | TAB20_V8 |
60 | holderAuthentProgram | TAB20_V8 |
61 | IssuerWalletInformation | TAB20_V9 |
62 | s10TransactionId | TAB20_V9 |
63 | s10TransactionIdDate | TAB20_V9 |
64 | s10FromTransactionId | TAB20_V9 |
65 | s10FromTransactionIdDate | TAB20_V9 |
66 | acquirerResponseMessage | TAB20_V9 |
67 | paymentMeanTradingName | TAB20_V9 |
68 | transactionLink | TAB20_V9 |
69 | preAuthenticationValue | TAB20_V10 |
70 | preAuthenticationColor | TAB20_V10 |
71 | preAuthenticationProfile | TAB20_V10 |
72 | preAuthenticationThreshold | TAB20_V10 |
73 | messageFunction | TAB20_V11 |
74 | acquirerNativeResponseCode | TAB20_V11 |
75 | holderAddressCountry | TAB20_V12 |
76 | automaticResponseStatus | TAB20_V13 |
77 | cardCSCPresence | TAB20_V13 |
78 | paymentMeanBrandSelectionMode | TAB20_V13 |
79 | paymentMeanBrandSelectionStatus | TAB20_V13 |
80 | preAuthorisationProfileValue | TAB20_V13 |
81 | preAuthenticationProfileValue | TAB20_V13 |
82 | avsAddressResponseCode | TAB20_V13 |
83 | avsPostcodeResponseCode | TAB20_V13 |
84 | preAuthorisationProfile | TAB20_V14 |
85 | acquirerContractNumber | TAB20_V15 |
86 | paymentAttemptNumber | TAB20_V16 |
87 | holderAuthentType | TAB20_V17 |
88 | challengeMode3DS | TAB20_V17 |
89 | secureReference | TAB20_V18 |
90 | authentExemptionReasonList | TAB20_V19 |
91 | paymentMeanDataProvider | TAB20_V20 |
92 | schemeTransactionIdentifier | TAB20_V21 |
93 | transactionInitiator | TAB20_V21 |
94 | authentAmount | TAB20_V22 |
95 | initalSchemeTransactionIdentifier | TAB20_V22 |
96 | cardIssuerName | TAB20_V23 |
97 | cardIssuerCountryCode | TAB20_V23 |
98 | cardIssuingCountryCode | TAB20_V23 |
99 | cardIssuerCode | TAB20_V23 |
100 | cardProductCode | TAB20_V23 |
101 | cardProductName | TAB20_V23 |
102 | cardProductProfile | TAB20_V23 |
103 | initialHolderAuthentProgram | TAB20_V23 |
104 | initialAuthentDateTime | TAB20_V23 |
105 | initialHolderAuthentType | TAB20_V23 |
106 | initialChallengeMode3DS | TAB20_V23 |
107 | abortedProcessingStep | TAB20_V23 |
108 | abortedProcessingLocation | TAB20_V23 |
109 | paymentAccountReference | TAB20_V23 |
111 | cardPanType | TAB20_V24 |
Fin du journal
La fin du journal est identifiée par une ligne spécifique contenant une valeur fixe :
Position | Nom du champ | Valeur | Description |
---|---|---|---|
1 | recordCode | "END" | Champ fixe |
Exemple
Journal des opérations
Fonction
Le journal des opérations vous informe de l’évolution du statut des transactions dans leur cycle de vie. Il contient les changements apportés aux transactions de paiement, c'est-à-dire les événements susceptibles de modifier l’état de la transaction (par exemple, l'opération "validate" change le statut "TO_VALIDATE" d'une transaction en "TO_CAPTURE"). Ainsi, vous pouvez également analyser ces fichiers et mettre à jour vos bases de données. Le journal reprend également les opérations envoyées en banque. Par conséquent, vous pouvez vous en servir pour vérifier les mouvements comptables.
Structure
Type du journal
Position | Nom du champ | Valeur | Description |
---|---|---|---|
1 | recordCode | "TITLE" | Type de ligne |
2 | reportName | "OPERATION_REPORT" | Nom du journal |
3 | fileDateTime | ANS19 AAAA-MM-JJ hh:mm:ss |
Date de génération |
4 | fileFormatVersion | ANS20 "TAB20_VX" |
Version |
Entête du journal
Position | Nom du champ | Valeur | Description |
---|---|---|---|
1 | recordCode | "HEADER" | Type de ligne |
2 - (...) | La liste des intitulés des champs est fournie dans le tableau sur le corps du journal. |
Corps du journal
Chaque opération est détaillée dans une ligne distincte contenant les champs suivants.
Position | Nom du champ | Depuis la version |
---|---|---|
1 | recordCode = "OPERATION" | TAB20_V1 |
2 | merchantId | TAB20_V1 |
3 | transactionReference | TAB20_V1 |
4 | operationSequence | TAB20_V1 |
5 | operationName | TAB20_V1 |
6 | amount en TAB20_V1 operationAmount à partir de
TAB20_V2 |
TAB20_V1 |
7 | currencyCode | TAB20_V1 |
8 | transactionDateTime | TAB20_V1 |
9 | operationDateTime (cf. surcharge des formats de dates) | TAB20_V1 |
10 | responseCode | TAB20_V1 |
11 | newStatus | TAB20_V1 |
12 | orderId | TAB20_V1 |
13 | paymentMeanType | TAB20_V1 |
14 | paymentMeanBrand | TAB20_V1 |
15 | newAmount | TAB20_V2 |
16 | operationOrigin | TAB20_V2 |
17 | acquirerResponseCode | TAB20_V2 |
18 | customerId | TAB20_V2 |
19 | orderChannel | TAB20_V2 |
20 | dccResponseCode | TAB20_V3 |
21 | dccAmount | TAB20_V3 |
22 | dccCurrencyCode | TAB20_V3 |
23 | dccExchangeRate | TAB20_V3 |
24 | dccRateValidity | TAB20_V3 |
25 | dccProvider | TAB20_V3 |
26 | remainingAmount | TAB20_V4 |
27 | s10TransactionId | TAB20_V5 |
28 | s10TransactionIdDate | TAB20_V5 |
29 | messageFunction | TAB20_V6 |
30 | acquirerNativeResponseCode | TAB20_V6 |
31 | returnContext | TAB20_V7 |
32 | authorisationId | TAB20_V7 |
33 | acquirerContractNumber | TAB20_V8 |
34 | guaranteeIndicator | TAB20_V9 |
35 | secureReference | TAB20_V9 |
36 | settlementArchivingReference | TAB20_V10 |
Fin du journal
La fin du journal est identifiée par une ligne spécifique contenant une valeur fixe :
Position | Nom du champ | Valeur | Description |
---|---|---|---|
1 | recordCode | "END" | Champ fixe |
Exemple
Journal de rapprochement des transactions
Fonction
Ce journal est le résultat du rapprochement (on parle aussi de réconciliation) entre les transactions et les flux de retour concernant les paiements traités par vos banques ou établissements financiers. Le journal de rapprochement des transactions contient les transactions effectuées à partir de votre boutique Web et qui ont été créditées sur (ou débitées de) votre compte.
Après avoir reçu les fichiers des paiements provenant de vos banques ou de vos établissements financiers, Mercanet effectue le rapprochement de ces transactions « payées » avec sa propre base d’informations, permettant ainsi d’ajouter le contexte fourni par Mercanet pour la transaction (numéro de la transaction, références du commerçant etc.) aux informations des banques. Cela signifie que vous êtes informé en détail des transactions rapprochées. De plus, vous êtes mis en garde dans le cas de non rapprochement.
La disponibilité ou l'exhaustivité du journal de rapprochement des transactions dépend de la disponibilité des flux de retour après paiements fournis par vos banques ou établissements financiers.
Structure
Type du journal
Position | Nom du champ | Valeur | Description |
---|---|---|---|
1 | recordCode | "TITLE" | Type de ligne |
2 | reportName | "RECONCILIATION_REPORT" | Nom du journal |
3 | fileFormatVersion | ANS20 "20_VX" |
Version |
4 | fileDateTime | ANS19 AAAA-MM-JJ hh:mm:ss |
Date de génération |
5 | merchantAlias | ANS | Alias du commerçant |
Entête du journal
Position | Nom du champ | Valeur | Description |
---|---|---|---|
1 | recordCode | "header" | Type de ligne |
2 - (...) | La liste des intitulés des champs est fournie dans le tableau sur le corps du journal. |
Corps du journal
Chaque transaction rapprochée est détaillée dans une ligne distincte contenant les champs suivants.
Position | Nom du champ | Depuis la version |
---|---|---|
1 | recordCode = « RECONCILIATION » | TAB20_V1 |
2 | merchantId | TAB20_V1 |
3 | transactionReference | TAB20_V1 |
4 | operationSequence | TAB20_V1 |
5 | transactionDateTime (cf. surcharge des formats de dates) | TAB20_V1 |
6 | orderId | TAB20_V1 |
7 | orderChannel | TAB20_V1 |
8 | paymentMeanBrand | TAB20_V1 |
9 | paymentMeanType | TAB20_V1 |
10 | operationType | TAB20_V1 |
11 | remittanceDateTime (cf. surcharge des formats de dates) | TAB20_V1 |
12 | remittanceNumber | TAB20_V1 |
13 | paymentStatus | TAB20_V1 |
14 | currencyCode | TAB20_V1 |
15 | originAmount | TAB20_V1* |
16 | grossAmount | TAB20_V1* |
17 | netAmount | TAB20_V1* |
18 | feeCurrency | TAB20_V1 |
19 | feeAmount | TAB20_V1* |
20 | s10TransactionId | TAB20_V2 |
21 | s10TransactionIdDate | TAB20_V2 |
22 | acquirerContractNumber | TAB20_V3 |
23 | authorisationId | TAB20_V3 |
24 | feeType | TAB20_V3 |
25 | fundTransferNumber | TAB20_V3 |
26 | settlementMode | TAB20_V3 |
27 | returnContext | TAB20_V4 |
28 | customerId | TAB20_V5 |
29 | interchangeFee | TAB20_V5 |
30 | cardInterchangeCategoryCode | TAB20_V5 |
31 | lastMerchantOperationDateTime | TAB20_V6 |
32 | lastMerchantOperationName | TAB20_V6 |
33 | mandateId | TAB20_V7 |
34 | acquisitionType | TAB20_V8 |
35 | feesDebitNumber | TAB20_V8 |
36 | settlementArchivingReference | TAB20_V9 |
37 | acquirerResponseMessage | TAB20_V11 |
38 | acquirerReconciliationDetail | TAB20_V11 |
39 | paymentMeanDataProvider | TAB20_V12 |
40 | initialHolderAuthentProgram | TAB20_V13 |
41 | initialAuthentDateTime | TAB20_V13 |
42 | initialHolderAuthentType | TAB20_V13 |
43 | initialChallengeMode3DS | TAB20_V13 |
44 | merchantToken | TAB20_V14 |
* À partir de la version TAB20_V10, la précision des montants se fait au centime (2 chiffres après la virgule) pour les champs originAmount et grossAmount, et au centième de centime (4 chiffres après la virgule) pour les champs netAmount et feeAmount.
Fin du journal
La fin du journal est identifiée par une ligne spécifique contenant une valeur fixe :
Position | Nom du champ | Valeur | Description |
---|---|---|---|
1 | recordCode | "FOOTER" | Champ fixe |
Exemple
Journal de rapprochement des impayés
Fonction
Ce journal est le résultat du rapprochement (on parle aussi de réconciliation) entre les transactions et les flux de retour concernant les impayés traités par vos banques ou établissements financiers. Le journal de rapprochement des impayés contient, parmi les transactions effectuées à partir de votre boutique Web et déjà créditées ou débitées, celles qui font l'objet d'un impayé (par exemple, à cause d'un litige avec le client). Par conséquent elles font ou vont faire l'objet d'une régularisation.
Après avoir reçu les fichiers des impayés de la part de vos banques ou établissements financiers, Mercanet effectue le rapprochement de ces transactions impayées avec sa propre base d’informations, permettant ainsi d’ajouter le contexte de la transaction fourni par Mercanet (numéro de la transaction, références du commerçant etc.) aux informations de vos banques ou établissements financiers. Cela signifie que vous êtes informé en détail des transactions rapprochées.
La disponibilité ou l'exhaustivité du journal de rapprochement des impayés dépend de la disponibilité des flux de retour des impayés fournis par vos banques ou établissements financiers.
Structure
Depuis la version TAB20_V8, le journal de rapprochement des impayés supprime le séparateur redondant à la fin de l'entête, du corps et de la fin afin d'être cohérent avec les autres journaux.
Type du journal
Position | Nom du champ | Valeur | Description |
---|---|---|---|
1 | recordCode | "TITLE" | Type de ligne |
2 | reportName | "UNPAID_REPORT" | Nom du journal |
3 | fileFormatVersion | ANS20 "20_VX" |
Version |
4 | fileDateTime | ANS19 AAAA-MM-JJ hh:mm:ss |
Date de génération |
5 | merchantAlias | ANS | Alias du commerçant |
Entête du journal
Position | Nom du champ | Valeur | Description |
---|---|---|---|
1 | recordCode | "HEADER" | Type de ligne |
2 - (...) | La liste des intitulés des champs est fournie dans le tableau sur le corps du journal. |
Corps du journal
Chaque transaction impayée est détaillée dans une ligne distincte. La version TAB20_V5 faisant l’objet d’une suppression de champ par rapport aux versions antérieures, nous présentons ici la liste des champs d’une ligne de détail en fonction de la version :
Version TAB20_V1 à TAB20_V4 incluse
Position | Nom du champ | Depuis la version |
---|---|---|
1 | recordCode = « UNPAID » | TAB20_V1 |
2 | merchantId | TAB20_V1 |
3 | acquirerContractNumber | TAB20_V1 |
4 | transactionDatetime (cf. surcharge des formats de dates) | TAB20_V1 |
5 | transactionReference | TAB20_V1 |
6 | operationType | TAB20_V1 |
7 | sourceAmount | TAB20_V1 |
8 | merchantLegalId | TAB20_V1 |
9 | chargebackAcquirerReference | TAB20_V1 |
10 | chargebackReasonCode | TAB20_V1 |
11 | currencyCode | TAB20_V1 |
12 | contractType | TAB20_V1 |
13 | posNb | TAB20_V1 |
14 | remittanceDatetime (cf. surcharge des formats de dates) | TAB20_V1 |
15 | exchangeAmount | TAB20_V1 |
16 | valueDate | TAB20_V1 |
17 | chargebackAmount | TAB20_V1 |
18 | exchangeUnpaidAmount | TAB20_V1 |
19 | exchangeCurrencyCode | TAB20_V1 |
20 | chargedBankCode | TAB20_V1 |
21 | chargedBankCounter | TAB20_V1 |
22 | chargedBankAccount | TAB20_V1 |
23 | chargedBankAdminCounter | TAB20_V1 |
24 | pbaRemittanceNumber | TAB20_V1 |
25 | customerId | TAB20_V1 |
26 | orderId | TAB20_V1 |
27 | transactionStatus | TAB20_V1 ; disparaît en version TAB20_V5. |
28 | currentAmount | TAB20_V1 |
29 | originAmount | TAB20_V1 |
30 | paymentMeanBrand | TAB20_V1 |
31 | paymentMeanType | TAB20_V1 |
32 | chargebackSettlementDate | TAB20_V1 |
33 | chargebackDocumentRequestReason | TAB20_V1 |
34 | chargebackDocumentRequestDate | TAB20_V1 |
35 | orderChannel | TAB20_V1 |
36 | s10TransactionId | TAB20_V2 |
37 | s10TransactionIdDate | TAB20_V2 |
38 | maskedPan | TAB20_V2 |
39 | settlementArchivingReference | TAB20_V2 |
40 | mandateId | TAB20_V3 |
41 | returnContext | TAB20_V4 |
À partir de la version TAB20_V5
Position | Nom du champ | Depuis la version |
---|---|---|
1 | recordCode = « UNPAID » | TAB20_V1 |
2 | merchantId | TAB20_V1 |
3 | acquirerContractNumber | TAB20_V1 |
4 | transactionDatetime (cf. surcharge des formats de dates) | TAB20_V1 |
5 | transactionReference | TAB20_V1 |
6 | operationType | TAB20_V1 |
7 | sourceAmount | TAB20_V1 |
8 | merchantLegalId | TAB20_V1 |
9 | chargebackAcquirerReference | TAB20_V1 |
10 | chargebackReasonCode | TAB20_V1 |
11 | currencyCode | TAB20_V1 |
12 | contractType | TAB20_V1 |
13 | posNb | TAB20_V1 |
14 | remittanceDatetime (cf. surcharge des formats de dates) | TAB20_V1 |
15 | exchangeAmount | TAB20_V1 |
16 | valueDate | TAB20_V1 |
17 | chargebackAmount | TAB20_V1 |
18 | exchangeUnpaidAmount | TAB20_V1 |
19 | exchangeCurrencyCode | TAB20_V1 |
20 | chargedBankCode | TAB20_V1 |
21 | chargedBankCounter | TAB20_V1 |
22 | chargedBankAccount | TAB20_V1 |
23 | chargedBankAdminCounter | TAB20_V1 |
24 | pbaRemittanceNumber | TAB20_V1 |
25 | customerId | TAB20_V1 |
26 | orderId | TAB20_V1 |
27 | currentAmount | TAB20_V1 |
28 | originAmount | TAB20_V1 |
29 | paymentMeanBrand | TAB20_V1 |
30 | paymentMeanType | TAB20_V1 |
31 | chargebackSettlementDate | TAB20_V1 |
32 | chargebackDocumentRequestReason | TAB20_V1 |
33 | chargebackDocumentRequestDate | TAB20_V1 |
34 | orderChannel | TAB20_V1 |
35 | s10TransactionId | TAB20_V2 |
36 | s10TransactionIdDate | TAB20_V2 |
37 | maskedPan | TAB20_V2 |
38 | settlementArchivingReference | TAB20_V2 |
39 | mandateId | TAB20_V3 |
40 | returnContext | TAB20_V4 |
41 | networkCode | TAB20_V6 |
42 | acquirerResponseMessage | TAB20_V7 |
43 | acquirerReconciliationDetail | TAB20_V7 |
44 | paymentMeanDataProvider | TAB20_V9 |
45 | initialHolderAuthentProgram | TAB20_V10 |
46 | initialAuthentDateTime | TAB20_V10 |
47 | initialHolderAuthentType | TAB20_V10 |
48 | initialChallengeMode3DS | TAB20_V10 |
49 | authentDateTime | TAB20_V10 |
50 | authentAmount | TAB20_V10 |
51 | paymentPattern | TAB20_V10 |
52 | holderAuthentStatus | TAB20_V10 |
53 | holderAuthentProgram | TAB20_V10 |
54 | holderAuthentRelegationCode | TAB20_V10 |
55 | holderAuthentType | TAB20_V10 |
56 | challengeMode3DS | TAB20_V10 |
57 | transactionInitiator | TAB20_V10 |
58 | merchantToken | TAB20_V11 |
Fin du journal
La fin du journal est identifiée par une ligne spécifique contenant une valeur fixe :
Position | Nom du champ | Valeur | Description |
---|---|---|---|
1 | recordCode | "FOOTER" | Champ fixe |
Exemple
Journal des cartes échues
Fonction
Le journal des cartes échues vous informe sur les cartes stockées arrivant à expiration. Ainsi, vous pouvez prévenir les utilisateurs que leur carte arrive à échéance et leur demander de saisir leur nouvelle carte.
Structure
Type du journal
Position | Nom du champ | Valeur | Description |
---|---|---|---|
1 | recordCode | "TITLE" | Type de la ligne |
2 | reportName | “EXPIRATION_WALLET_REPORT” | Nom du journal |
3 | fileDateTime | ANS14 YYYYMMDDhhmmss |
Date de génération |
4 | merchantId | N15 | Identifiant de la boutique, sa valeur est fournie par Mercanet au commerçant lors de l’inscription de sa boutique. |
5 | merchantName | AN30 | Nom du commerçant (équivalent au nom de la boutique enregistré lors de l'inscription). |
6 | fileFormatVersion | ANS20 "TAB20_V1" |
Version |
Entête du journal
Position | Nom du champ | Valeur | Description |
---|---|---|---|
1 | recordCode | "HEADER" | Type de la ligne |
2 - (...) | La liste des intitulés des champs est fournie dans le tableau sur le corps du journal. |
Corps du journal
Chaque carte est détaillée dans une ligne distincte, contenant les champs suivants.
Position | Nom du champ | Depuis la version |
---|---|---|
1 | recordCode | TAB20_V1 |
2 | merchantWalletId | TAB20_V1 |
3 | paymentMeanId | TAB20_V1 |
4 | paymentMeanAlias | TAB20_V1 |
5 | paymentMeanBrand | TAB20_V1 |
6 | paymentMeanType | TAB20_V1 |
7 | panExpiryDate | TAB20_V1 |
8 | maskedPan | TAB20_V1 |
Fin du journal
La fin du journal est identifiée par une ligne spécifique contenant une valeur fixe :
Position | Nom du champ | Valeur | Description |
---|---|---|---|
1 | recordNumber | Nombre d’enregistrements du fichier. Entête et pied de page non inclus. | |
2 | recordCode | "END" | Champ fixe |