You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 7 Next »

The payment page hosted by Axepta BNP Paribas is used when a merchant wants to offer a complete and customized payment experience to their customers. This method is ideal for e-commerce sites that want to integrate a secure payment solution compliant with current standards.

This integration requires minimal development effort, supports multiple payment methods under a single implementation, and ensures that customer sensitive data remains entirely within Axepta BNP Paribas systems. By outsourcing payment processing, your business significantly reduces responsibilities and costs related to PCI-DSS compliance.


Summary



1. Key Advantages

  • Optimized User Experience: Provide your customers with an intuitive, secure, and responsive payment interface
  • Minimal Development Effort: Offer multiple payment methods under a single implementation

  • Compliance with Standards: Comply with current regulations through Axepta BNP Paribas's management of customer sensitive data, significantly reducing your PCI-DSS compliance responsibilities and costs


2. Payment Flow

 Customer proceeds to checkout on your online store.

  1. Your frontend requests the payment page to the backend.
  2. Your backend makes a Create checkout session Create checkout session Create checkout session call to Axepta BNP Paribas.

  3. Axepta BNP Paribas responds with the redirect URL to your backend.
  4. Your backend orchestrates the browser to redirect the User Interface to the redirect URL.
  5. Customer is redirected to Hosted payment page hosted by Axepta BNP Paribas.
  6. Customer selects its preferred payment method and completes payment.
  7. Upon completion, customer is redirected to the return URL that was submitted by you during Create checkout session call (urls.return) with payId in the query parameters.
  8. Browser fetches the return URL hosted by your backend.
  9. Backend makes a GET Payment details call with payId to retrieve the response code of the payment.
  10. Axepta BNP Paribas responds with the responseCode of the payment along with other parameters.
  11. Backend returns a success or a failure page based on the response code of the payment.


3. Create checkout session (pas à pas)

(Documentation swagger de l'api /payment/session: Create checkout session )

Données techniques de connexion

Des données techniques de connexion doivent être passées dans les headers http de la requête REST

  • Content-Type
    le type de la payload: les données doivent être passées dans une payload json.
    Content-Type: application/json
  • les données d'autorisation reçues lors de l'étape d'authentification Oauth-v2
    il s'agit du type de token et du json web token (JWT). Ils doivent être renseignés dans le header 'Authorization'.
    Authorization: <token_type> <YOUR_JWT>
  • L'id d'idempotence
    Indispensable pour détecter les possibles répétitions http.
    Utilisez le header 'Idempotency-Key' et générez un uuid-v4 comme valeur
    Idempotency-Key: "8f35cb16-2f05-4aa1-85cf-b1e41ee7aec9"

Données minimales

Pour initier le paiement, les données minimales nécessaires sont:

  • identifiant de la transaction coté marchant: 'transId'
  • le montant et la devise de la transaction: objet 'amount'
    • composé des données 'curreny' et 'value'.
    • le montant doit toujours être exprimé dans la plus petite unité de la monnaie associée. (par ex, le centime d'euro)
  • l'identification du client: objet 'customerInfo'
    • composé à minima de l'e-mail du client: 'email'. 
    • Il est fortement conseillé de renseigner l'identification du client sur le site marchant: 'merchantCustomerId'.
      Cette donnée est indispensable à la fonctionnalité 'One-Click'
  • les données de la commande: objet 'order'
    • Au moins une des deux données suivantes: le numéro de commande 'merchantReference' ou le numéro de facture 'invoiceId' générés sur le site marchant.
    • il est conseillé de renseigner les 2.
  • les urls de retour: objet 'urls'
    • obligatoirement les adresses de 3 urls de retour: return, cancel, webhook


Exemple curl minimal create session
curl -i -X POST \
  https://test.paymentpage.axepta.bnpparibas/api/v2/payments/sessions \
  -H 'Authorization: <token_Type> <YOUR_JWT>' \
  -H 'Content-Type: application/json' \
  -H 'Idempotency-Key: "8f35cb16-2f05-4aa1-85cf-b1e41ee7aec9" \
  -d '{
    "transId": "95330876-67ae-4949-a11c-b9a29257831b",
 	"amount": {
    	"currency": "EUR",
    	"value": 1500
    },
    "customerInfo": {
        "merchantCustomerId": "id-8803",
        "email": "john-doe@email.com"
    },
 	"order": {
    	"merchantReference": "order7811",
        "invoiceId": "invoice10240203569454"
    },
 	"urls": {
 		"return":"https://myProcessingServer.net/myApi/success.php?transId=95330876-67ae-4949-a11c-b9a29257831b",
		"cancel":"https://myProcessingServer.net/myApi/cancel.php?transId=95330876-67ae-4949-a11c-b9a29257831b",
 		"webhook":"https://myBackOfficeServer.net/webhook.php" 
    }
}

Réponse et redirection vers la page de paiement

Vous devez recevoir en réponse un message http 202, indiquant que le traitement de la transaction est initié, et qu'un contexte paiement à été créé coté serveur.

Le corps de la réponse contient le lien vers la page de paiement hébergée sur la plateforme Axepta BNP Paribas Online.
Vous devez rediriger le navigateur du client vers ce lien.

Exemple de réponse
{
    "_links": {
        "redirect": {
            "href": "https://test.paymentpage.axepta.bnpparibas/paymentpage.aspx?token=eb577d2d61ba4396bfeb0de554e76a70",
            "type": "text/html"
        }
    }
}





4. Préconisations

Nous préconisons de transmettre à minima les données suivantes : 

  • Identifiant de la transaction  : L'identifiant unique du paiement

  • Montant du Paiement : Le montant à payer par le client.
  • Devise : La devise utilisée pour le paiement.
  • Identifiant du Client : L'identifiant unique du client
  • email : L'email du client
  • Identifiant de la commande (order.merchantReference) : L'identifiant de la commande
  • Identifiant de la facture (order.invoiceId) : L'identifiant de la facture associé à ce paiement


L'ensemble de nos guidelines sont disponibles ici : Préconisation d'intégration - Documentation Axepta BNP Paribas - Axepta


5. Moyens de paiement disponibles

Nous proposons les moyens de paiement suivants adaptés à vos besoins spécifiques ainsi qu'à ceux de vos clients :

  • Cartes
    • American Express (AMEX)
    • Cartes Bancaires
    • Union Pay International (UPI)
    • Diners
    • Discover
    • JCB
    • MasterCard
    • Visa
  • Bancontact
  • Wallets
  • Paiements fractionnés
    • Floa
  • Offres de crédit
    • PF Connect
  • Virement instantané (Instanéa)
  • Wero


6. Fonctionnalités associées

  • Génération Automatique de la Référence End to End (RefNr) : Chaque transaction bénéficie d'une référence unique générée automatiquement.
  • Contrôle des Doublons : Détectez et gérez les tentatives de paiement en double pour éviter les erreurs - Activation lors de la configuration de votre boutique ou via une demande au support
  • Email de confirmation : Axepta BNP Paribas peut envoyer une mail de confirmation de succès ou d'échec de paiement au client - Activation lors de la configuration de votre boutique ou via une demande au support
  • No labels