Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.


Tip
titlePrérequis
Consulter le Mise en place d'Axepta Online et Intégration technique




Info

Vous trouverez ci-dessous un guide pas à pas pour créer un paiement de 20 euros sur notre MID de démo BNP_DEMO_AXEPTA.

Vous pouvez vous référez à la section 3DS 2.0 Integration Methods



Cas d'usage

  1. Expérience de paiement :  Redirection
  2. Personnalisation de la page de paiement Axepta (redirection) : Aucune
  3. Moyens de paiement: Paiement par carte CB / Visa / Mastercard
  4. Quels sont les cas d'usage ou fonctionnalités de paiement ? : Paiement unitaire / one-shot
  5. Données de reconciliation : RefNr & TransID


Créer un paiement de 20 euros

Cet exemple utilisé le MID de démo BNP_DEMO_AXEPTA qui permet de tester les paiements par carte.


Calculer le HMAC

La valeur HMAC est obtenue en chiffrant la chaîne PayID*TransID*MerchantID*Status*Code avec la clé HMAC de votre boutique.


Exemple avec BNP_DEMO_AXEPTA

  • PayID*TransID*MerchantID*Amount*Currency → *1*BNP_DEMO_AXEPTA*202000*EUR
  • HMAC value → FCCF8F2BEDC06E7C3C270B0D4DC4CEE9640E4B4A5577763C2E3CDDFC84913D56 529c65ce765e684d42a29ca255ad99ae40b78715abc8ee958bfdbafd2597d30a


Info

Ajouter le HMAC si le paramètre est indiqué dans la liste de paramètres.

Pas de HMAC pour Status inquiries




Tip

Pour une demande de paiement, le PayID (ID unique généré par Axepta) n'est pas encore connu, ainsi le premier paramètre doivent rester vide.

Le HMAC commencera donc par *.



Le champ DATA le valeur Len

Le paramètre DATA est obtenu en chiffrant tous les paramètres nécessaires au paiement avec la clé blowfish de votre boutique.

Tous les paramètres sont rassemblés dans une chaîne de caractères et séparés par le caractère &.

Au minimum, une demande de paiement doit contenir les paramètres suivants :


MerchantID=value&MsgVer=value&TransID=value&RefNr&Amount=value&Currency=value&URLNotify=value&URLSuccess=value&URLFailure=value&MAC=value&OrderDesc=value


Exemple avec BNP_DEMO_AXEPTA.

  • Paramètres requis avec les valeurs

    • MerchantID=BNP_DEMO_AXEPTA&MsgVer=2.0&TransID=1&RefNr=0000000AB123&Amount=202000&Currency=EUR&URLNotify=https://axepta.bnpparibas/&URLSuccess=https://axepta.bnpparibas/&URLFailure=https://group.bnpparibas&MAC=FCCF8F2BEDC06E7C3C270B0D4DC4CEE9640E4B4A5577763C2E3CDDFC84913D56529c65ce765e684d42a29ca255ad99ae40b78715abc8ee958bfdbafd2597d30a&OrderDesc=Test:0000
      • Le champ  "OrderDesc=Test:0000" est obligatoire lors de l'envoi de requête au MID BNP_DEMO_AXEPTA. En revanche, la valeur 'Test:0000' utilisée avec votre propre MID simulera l'envoi en autorisation, les paiements ne seront pas effectifs.
  • Chiffrement avec la clé blowfish de BNP_DEMO_AXEPTA
    • DATA =

      43AD07F58FF6A5F9EBBDD42E361D2C85CE4AD41FCD63C697C9CA59076FB5CB782237A2E862A97BB24D949911BB701D698DFED6901F1BCB92404F53B8F5336525167AC5B8A9B89C5F3D80BA112B99F32627CEA3CC11C6705870841F76DFEC778FC6632D6C88F6D35C58A124D532ECE1B7BC175FA340BD0C73C33D4F7837442009D914600CCA004DF475C31063C5E418325123C7BB6AC2A8BA16DFAB4FA44BAB6183B05F39EE3590B5BE79E5C7B23B2C14386AE7FCD0FD6C58D20FA4502023E24CE1F4882D87F1FC3E367EC88EEEFB052D26756376200D7765ADE87154E8F2AA12B9D057E93BDAF3AF07CDF662A4BE580896060EDD3EB8678245BB6FA2F134676205C5F12BD21820A2ABA0E4B4AC8A33F174B8C83BE2C4E495F53AA564EF053474A5EF33192ADD9A81

      43ad07f58ff6a5f9ebbdd42e361d2c85ce4ad41fcd63c697c9ca59076fb5cb782237a2e862a97bb24d949911bb701d698dfed6901f1bcb92404f53b8f5336525167ac5b8a9b89c5fb88d79967366e99e59d95f3f3f0c37126a52495115e28f938e76748a5dc703f7ccbda6ccb4fc253b255c06e0df990fdd94f4313ec2b94142f9978adb9d1079a36a9dbb83e9638e3e58a124d532ece1b7bc175fa340bd0c73c33d4f78374420091e90735bb014a5163d86bfe38795decacf0358075a85c0fbf80c5535046e7f8df64d204c7a4755e07700d4d17c9ef0bdc6e8bbd9c377e3ee0493a0ad2d3a9a624d693d04fe0bdfb3ebb2ef5badb63291ab8d7ad29b4f19b2b0f87dbc0bdb38f282816fe694ac2d512ba741d76a830b2083232246763aa006472661aeb2acf126

    • LEN =

      289

      291


Finaliser la requête


Une requête envoyée à la plate-forme contient trois paramètres de base : MerchantID, Len et Data.

Les paramètres MerchantID et Len ne sont pas chiffrés, seul le paramètre Data est chiffré avec la clé Blowfish, tel que : MerchantID=YourMerchantID&Len=67&Data=0A67FE96a65d384350F50FF1


Ces éléments sont ensuite ajoutés au endpoint choisi pour créer la requête :

https://paymentpage.axepta.bnpparibas/payssl.aspx?MerchantID=YourMerchantID&Len=67&Data=0A67FE96a65d384350F50FF1The Data parameter contains the sensitive payment details such as amount and currency. The encrypted bytes are Hex-encoded and completed to two characters from the left with a zero. Encryption is via Blowfish ECB and is available to you as source-code and components.

The Len parameter is very important for encryption because it contains the length of the unencrypted(!)  character string in the Data parameter. Since the data quantity to be encrypted is increased by a multiple of 8 in the case of the Blowfish encryption, the correct length of the character string must be known for decryption. Otherwise accidental characters emerge at the end of the character string.

The parameters are transmitted via HTTPS POST or HTTPS GET. The recommended transmit method is HTTPS POST because the parameter character string in the case of GET is attached to the URL, which is limited to 2048 bytes depending on the browser.

Notice: Please note that the maximum length of a payment request is limited to 5120 characters. If you require longer strings please contact Axepta Helpdesk.


Le paramètre Data contient les détails de paiement sensibles tels que le montant et la devise. Les octets chiffrés sont codés en hexadécimal et complétés à deux caractères à partir de la gauche par un zéro. Le chiffrement se fait via Blowfish ECB et est disponible sous forme de code source et de composants.

Le paramètre Len est très important pour le chiffrement, car il contient la longueur de la chaîne de caractères non chiffrée (!) dans le paramètre Data. Comme la quantité de données à chiffrer est augmentée d'un multiple de 8 dans le cas du chiffrement Blowfish, la longueur correcte de la chaîne de caractères doit être connue pour le déchiffrement. Sinon, des caractères accidentels apparaissent à la fin de la chaîne de caractères.

Les paramètres sont transmis via HTTPS POST ou HTTPS GET. La méthode de transmission recommandée est HTTPS POST car la chaîne de caractères du paramètre dans le cas de GET est attachée à l'URL, qui est limitée à 2048 octets selon le navigateur.

Information : La longueur maximum d'une requête est de 5120 caractères. SI vous avez besoin d'une longueur plus élevée, vous pouvez contacter Axepta Helpdesk.


Example Exemple with BNP_DEMO_AXEPTA.

https://paymentpage.axepta.bnpparibas/payssl.aspx?MerchantID=BNP_DEMO_AXEPTA&Len=289291&DATA=43AD07F58FF6A5F9EBBDD42E361D2C85CE4AD41FCD63C697C9CA59076FB5CB782237A2E862A97BB24D949911BB701D698DFED6901F1BCB92404F53B8F5336525167AC5B8A9B89C5F3D80BA112B99F32627CEA3CC11C6705870841F76DFEC778FC6632D6C88F6D35C58A124D532ECE1B7BC175FA340BD0C73C33D4F7837442009D914600CCA004DF475C31063C5E418325123C7BB6AC2A8BA16DFAB4FA44BAB6183B05F39EE3590B5BE79E5C7B23B2C14386AE7FCD0FD6C58D20FA4502023E24CE1F4882D87F1FC3E367EC88EEEFB052D26756376200D7765ADE87154E8F2AA12B9D057E93BDAF3AF07CDF662A4BE580896060EDD3EB8678245BB6FA2F134676205C5F12BD21820A2ABA0E4B4AC8A33F174B8C83BE2C4E495F53AA564EF053474A5EF33192ADD9A8143ad07f58ff6a5f9ebbdd42e361d2c85ce4ad41fcd63c697c9ca59076fb5cb782237a2e862a97bb24d949911bb701d698dfed6901f1bcb92404f53b8f5336525167ac5b8a9b89c5fb88d79967366e99e59d95f3f3f0c37126a52495115e28f938e76748a5dc703f7ccbda6ccb4fc253b255c06e0df990fdd94f4313ec2b94142f9978adb9d1079a36a9dbb83e9638e3e58a124d532ece1b7bc175fa340bd0c73c33d4f78374420091e90735bb014a5163d86bfe38795decacf0358075a85c0fbf80c5535046e7f8df64d204c7a4755e07700d4d17c9ef0bdc6e8bbd9c377e3ee0493a0ad2d3a9a624d693d04fe0bdfb3ebb2ef5badb63291ab8d7ad29b4f19b2b0f87dbc0bdb38f282816fe694ac2d512ba741d76a830b2083232246763aa006472661aeb2acf126