- Directives d'intégration
- Mise en œuvre d'une intégration Batch
- Envoi d'une demande de batch
Envoi d'une demande de batch
Il existe de nombreux composants pour garantir l'envoi sécurisé du corps de la demande de transaction à Mastercard Gateway. Cette rubrique passe en revue les concepts et fonctions essentiels que vous devrez peut-être utiliser dans votre intégration.
Chargement de la demande de batch
Le fichier de commandes est soumis via le protocole HTTP sur Secure Socket Layer (SSL) à l'aide de la méthode HTTP PUT. Cette rubrique contient des exemples d'extraits de code écrits en langage de script shell. Pour obtenir un exemple de code d'intégration, voir la rubrique Téléchargements.
URL de connexion
L'URL de connexion contient des informations identifiant la Batch version (identique à la APIversion), l'identifiant du commerçant et le nom du batch.
https://na-gateway.mastercard.com/batch/version/<versionNum>/merchant/<merchantId>/batch/<batchName>
où :
- <versionNum> est la version de Batch
- <merchantId> est votre identifiant de commerçant
- <batchName> est le nom unique du batch
# Configuration: Batch application
VERSION_NUM=72
HB_HOST="https://na-gateway.mastercard.com/batch"; # Configuration: Merchant MERCHANT_ID="<YOUR_MERCHANT_ID>"
MERCHANT_PASSWORD="<YOUR_MERCHANT_PASSWORD>" CONNECT_URL="$HB_HOST/version/$VERSION_NUM/merchant/$MERCHANT_ID/batch/"
Si vous soumettez une demande de batch à une URL mal formatée, vous serez redirigé vers une page de destination affichant des informations sur la manière dont la demande doit être formatée.
https://na-gateway.mastercard.com/batch
Données d'authentification
Mastercard Gateway exige que chaque demande de batch soit authentifiée avec succès. L'extrait ci-dessous explique comment fournir des données d'authentification (ID du commerçant et mot de passe de l'API) avec chaque demande de batch.
Cet extrait de code montre comment définir les informations d'identification dans le programme.
# Configuration: Batch application
VERSION_NUM=72
HB_HOST="https://na-gateway.mastercard.com/batch"; # Configuration: Merchant
MERCHANT_ID="<YOUR_MERCHANT_ID>"
MERCHANT_PASSWORD="<YOUR_MERCHANT_PASSWORD>" # Configuration: Advanced
CONNECT_URL="$HB_HOST/version/$VERSION_NUM/merchant/$MERCHANT_ID/batch/"
HTTP_HEADERS="Authorization: Basic `echo -n :$MERCHANT_PASSWORD | base64`"$'\n'" Content-Type: text/plain; charset=UTF-8"
En-têtes HTTP
Les en-têtes HTTP fournissent des renseignements relatifs aux métadonnées à propos de la demande de batch envoyée à Mastercard Gateway. Cet extrait montre les en-têtes HTTP obligatoires qui doivent être définis pour chaque demande de batch (les en-têtes répertoriés ici doivent être définis en plus de tous les en-têtes d'authentification mentionnés sous Données d'authentification, le cas échéant).
Le codage des caractères de votre demande doit inclure uniquement les formats ISO-8859-1 (Latin1) ou UTF-8. Voir Codage correct des caractères.
Cet extrait de code montre comment définir les en-têtes HTTP dans le programme.
HTTP_HEADERS="Authorization: Basic `echo -n :$MERCHANT_PASSWORD | base64`"$'\n' "Content-Type: text/plain; charset=UTF-8"
Chargement du code d'intégrité du message
Batch requiert que vous confirmiez l'intégrité des batches que vous chargez en fournissant un code d'intégrité du message (MIC) pour validation. Pour calculer le MIC, vous devez créer un résumé SHA-1 du corps complet de la demande de chargement qui contient les données de batch CSV NVP et doit être codé en hexadécimal.
Le principe du chargement MIC est le suivant :
- Chargez un batch vers le service Batch.
- Chargez le MIC vers le service Batch en envoyant une requête HTTPS POST à l'URL suivante avec le MIC HEX encodé dans le corps de la requête.
- <versionNum> est la version de Batch
- <merchantId> est votre identifiant de commerçant
- <batchName> est le nom unique du batch
- Batch valide le MIC fourni par rapport au batch téléchargé, et s'il correspond, le batch sera accepté pour le traitement. Si le MIC ne correspond pas, on suppose que le batch est corrompu. Le batch sera supprimé et devra être à nouveau téléchargé.
où :