Obtenir les données de piste (Nécessite l’approbation de Moneris)
Vue d'ensemble
La commande getTrack (obtenir les données de piste) permet de récupérer les données de cartes non financières comme les cartes de fidélité ou les cartes-cadeaux. En tant que commerçant, vous devez inscrire les plages BIN des cartes-cadeaux pour pouvoir extraire les données de la carte.
La saisie manuelle est autorisée uniquement si le modificateur CNP (carte non présente) est envoyé dans la requête. Si track1, track2 ou track3 est demandé et que la carte ne contient pas ces données, le champ correspondant ne sera pas inclus dans la réponse (code d’état 5902/Completed (Complété)).
Si le modificateur CNP est utilisé, seule track2 sera retournée, quel que soit le sélecteur de piste utilisé.
- track1 ne sera pas retournée si le modificateur CNP est utilisé.
- track3 ne sera pas retournée si le modificateur CNP est utilisé.
REMARQUE
Cette commande ne peut être utilisée que pour des cartes balayées ou saisies manuellement.
Structure de la requête
| Élément | Type | Description | Taille | Obligatoire |
|---|---|---|---|---|
| apiVersion | String (chaîne) | Numéro de version de l’API | V20 | Obligatoire |
| istConfigCode | String (chaîne) | Code de configuration d’intégration fourni par Moneris | V25 | Obligatoire |
| dataId | String (chaîne) | Identifiant unique défini par le commerçant pour l’objet de données | V50 | Obligatoire |
| dataTimestamp | String (chaîne) | Date et heure de la requête (AAAA-MM-JJ HH:MM:SS) | F19 | Obligatoire |
| data | Object (objet) | Objet contenant toutes les demandes de transaction | - | - |
| request | Array (tableau) | Contient les données applicables à la demande de transaction | - | - |
| idempotencyKey | String (chaîne) | Identifiant unique de transaction pour éviter les demandes en double | V50 | Obligatoire |
| linkId | String (chaîne) | ID utilisé pour regrouper les transactions liées | V50 | Optionnel |
| terminalId | String (chaîne) | ID du terminal de destination | F8 | Optionnel |
| userName | String (chaîne) | Identifiant unique pour le caissier / l’utilisateur | V30 | Optionnel |
| customIdData | String (chaîne) | Champ personnalisé | V50 | Optionnel |
| action | String (chaîne) | "getTrack" | V50 | Obligatoire |
| trackSelector | String (chaîne) | Indique quelles données de piste doivent être renvoyées depuis la carte : Valeurs valides : - ‘1’ = Récupérer les données de la piste 1 - ‘2’ = Récupérer les données de la piste 2 - ‘3’ = Récupérer les données de la piste 3 - ‘0’ = Récupérer les données des pistes 1, 2 et 3 | V50 | Obligatoire |
| modifier | String (chaîne) | “CNP” Remarque : Le PINPad invitera l’utilisateur à saisir le numéro de compte | V24 | Optionnel |
| progressStatus | String (chaîne) | Si la valeur est définie sur « True », le terminal renverra la progression à le PDV Remarque : Cette fonctionnalité est uniquement disponible en intégration directe | V5 | Optionnel |
{
"apiVersion":"3.0",
"istConfigCode":"example_istConfigCode",
"dataId":"example_dataId",
"dataTimestamp":"1969-12-31 23:59:59",
"data":{
"request":[
{
"idempotencyKey":"example_idempotencyKey",
"action":"getTrack",
"trackSelector":"example_trackSelector"
}
]
}
}Structure de la réponse
| Élément | Type | Description | Taille | Obligatoire |
|---|---|---|---|---|
| apiVersion | String (chaîne) | Numéro de version de l’API | V20 | Obligatoire |
| statusCode | String (chaîne) | Code d’état pour l’ensemble de la demande de transaction | V4 | Obligatoire |
| status | String (chaîne) | Description du code d’état (statusCode) | V4 | Obligatoire |
| dataId | String (chaîne) | Identifiant unique défini par le commerçant pour l’objet de données | V50 | Obligatoire |
| dataTimestamp | String (chaîne) | Date et heure de la requête (AAAA-MM-JJ HH:MM:SS) | F19 | Obligatoire |
| data | Object (objet) | Objet contenant toutes les demandes de transaction | - | - |
| response | Array (tableau) | Contient les données applicables à la demande de transaction | - | - |
| idempotencyKey | String (chaîne) | Identifiant unique de transaction pour éviter les demandes en double | V50 | Obligatoire |
| action | String (chaîne) | "activate" | V50 | Obligatoire |
| statusCode | String (chaîne) | Code d’état pour la demande individuelle | V4 | Obligatoire |
| status | String (chaîne) | Description du code d’état individuel (statusCode) | V50 | Obligatoire |
| completed | String (chaîne) | "true" ou "false" | V5 | Obligatoire |
| track1 | String (chaîne) | Détails de la piste 1 décrits dans la norme ISO 7813 | V520 | Conditionnel |
| track2 | String (chaîne) | Détails de la piste 2 décrits dans la norme ISO 7813 | V520 | Conditionnel |
| track3 | String (chaîne) | Données de la piste 2 | V520 | Conditionnel |
| terminalId | String (chaîne) | ID du terminal de destination | F8 | Obligatoire |
{
"apiVersion":"3.0",
"statusCode":"example_statusCode",
"status":"example_status",
"dataId":"example_dataId",
"dataTimestamp":"1969-12-31 23:59:59",
"data":{
"response":[
{
"orderId":"example_orderId",
"transactionId":"example_transactionId",
"idempotencyKey":"example_idempotencyKey",
"statusCode":"example_statusCode",
"status":"example_status",
"completed":"true",
"action":"getTrack",
"track1":"example_track1",
"track2":"example_track2",
"track3":"example_track3",
"terminalId":"example_terminalId"
}
]
}
}Erreurs
Si votre réponse contient des erreurs, consultez la page Erreurs pour une description détaillée de chacune.

