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
| Table of Contents |
|---|
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.
- Your frontend requests the payment page to the backend.
Your backend makes a Create checkout session Create checkout session Create checkout session call call to Axepta BNP Paribas.
- Axepta BNP Paribas responds with the redirect URL to your backend.
- Your backend orchestrates the browser to redirect the User Interface to the redirect URL.
- Customer is redirected to Hosted payment page hosted by Axepta BNP Paribas.
- Customer selects its preferred payment method and completes payment.
- 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.
- Browser fetches the return URL hosted by your backend.
- Backend makes a GET
- Payment details call with payId to retrieve the response code of the payment.
- Axepta BNP Paribas responds with the responseCode of the payment along with other parameters.
- Backend returns a success or a failure page based on the response code of the payment.
3. Create checkout session (
pas à passtep by step)
(Documentation swagger de l'api Swagger documentation of the /payment/session API: Create checkout session )
Technical Connection Data
Technical connection data must be passed in the HTTP headers of the REST request:
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
The payload type
de la payload: les données doivent être passées dans une payload json: data must be passed in a JSON payload.
Content-Type: application/json
les données d'autorisation reçues lors de l'étape d'authentification Oauth-v2il s'agit du type de token et du json web token (JWT). Ils doivent être renseignés dans le header 'Authorization'
Authorization data received during the OAuth-v2 authentication step
This includes the token type and JSON Web Token (JWT). They must be specified in the 'Authorization' header.
Authorization: <token_type> <YOUR_JWT>
L'id d'idempotenceIndispensable pour détecter les possibles répétitions http.
Utilisez le header
Idempotency ID
Essential for detecting possible HTTP repetitions.
Use the 'Idempotency-Key'
et générez unheader and generate a uuid-v4
comme valeuras the value
Idempotency-Key: "8f35cb16-2f05-4aa1-85cf-b1e41ee7aec9"
Minimal Data
To initiate payment, the minimum required data includes:
Merchant-side transaction identifier
Données minimales
Pour initier le paiement, les données minimales nécessaires sont:
identifiant de la transaction coté marchant: 'transId'
The amount and currency of the transaction:
'amount' object
- Composed of 'currency' and 'value'
Cette donnée est indispensable à la fonctionnalité
- data
- The amount must always be expressed in the smallest unit of the transaction currency (e.g., EUR cents)
Customer identification: 'customerInfo' object
- At minimum, the customer's email: 'email'
- It is highly recommended to provide customer identification on the merchant website: 'merchantCustomerId'
This data is essential for the 'One-Click'
les données de la commande: objetfunctionality
Order data: '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.
object
- At least one of the following: order number 'merchantReference' or invoice number 'invoiceId' generated on the merchant website
- It is recommended to provide both
Return URLs: 'urls' object
- Mandatory addresses for 3 return URLs
- : return, cancel, webhook
| Code Block | ||||||
|---|---|---|---|---|---|---|
| ||||||
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
Response and redirect to the payment page
You should receive an HTTP 202 response message indicating that transaction processing has been initiated and that a payment context has been created on the server.
The response body contains the link to the payment page hosted on the Axepta BNP Paribas Online platform.
You must redirect the customer's browser to this link
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.
| Code Block | ||||||
|---|---|---|---|---|---|---|
| ||||||
{
"_links": {
"redirect": {
"href": "https://test.paymentpage.axepta.bnpparibas/paymentpage.aspx?token=eb577d2d61ba4396bfeb0de554e76a70",
"type": "text/html"
}
}
} |
4.
PréconisationsRecommendations
We recommend transmitting at least the following data:
- Transaction Identifier: The unique payment identifier
- Payment Amount: The amount to be paid by the customer.
- Currency: The currency used for the payment.
- Customer Identifier: The unique customer identifier
- Email: The customer's email
- Order Identifier
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
- The order identifier
- Invoice Identifier Identifiant de la facture
- (order.invoiceId): L'identifiant de la facture associé à ce paiement
- The invoice identifier associated with this payment
Our complete guidelines are available here: Integration recommendation L'ensemble de nos guidelines sont disponibles ici : Préconisation d'intégration - Documentation Axepta BNP Paribas - Axepta
5.
Moyens de paiement disponiblesAvailable payment methods
We offer the following payment methods tailored to your specific needs as well as those of your customers:
Nous proposons les moyens de paiement suivants adaptés à vos besoins spécifiques ainsi qu'à ceux de vos clients :
6.
Fonctionnalités associéesRelated features
- Automatic Generation of End-to-End Reference 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.
- Each transaction is assigned a unique automatically generated reference.
- Duplication Control: Detect and manage duplicate payment attempts to prevent errors - Enabled during your store configuration or via a support request
- Confirmation Email: Axepta BNP Paribas can send a confirmation email to the customer for successful or failed payments - Enabled during your store configuration or via a support request
- 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
