Introduction

L'API Axepta BNP Paribas Online est une solution de paiement en ligne conçue pour faciliter l'intégration des paiements sécurisés sur votre plateforme e-commerce. Cette documentation technique fournit toutes les informations nécessaires pour comprendre, configurer et utiliser notre API de manière efficace.


1. Présentation de l'API

1.1. Fonctionnalités Clés

  • Support de 350+ méthodes de paiement : L'API prend en charge une large gamme de méthodes de paiement à travers le monde.
  • Architecture RESTful : L'API est basée sur les principes REST, offrant une interface prédictible et facile à utiliser.
  • Sécurité renforcée : Conformité aux normes PCI-DSS et communication sécurisée via HTTPS (TLS 1.2 ou supérieur).
  • Documentation complète : Documentation technique détaillée pour faciliter l'intégration.

1.2. Cas d'Utilisation

  • Paiements en ligne : Traitement des paiements en temps réel.
  • Gestion des transactions : Consultation et gestion des transactions passées.
  • Personnalisation : Adaptation de l'expérience de paiement à votre site web.

2. Configuration de l'API

2.1. Prérequis

  • Compte Merchant : Un compte marchand est nécessaire pour accéder à l'API.
  • Clés d'API : Vous recevrez un Merchant ID et une API Key pour authentifier vos requêtes.

2.2. Environnements de Test et de Production

  • Environnement de Test : Utilisé pour tester vos intégrations avant de passer en production.
  • Environnement de Production : Utilisé pour les transactions réelles.

3. Authentification

3.1. Méthodes d'Authentification

  • Basic Authentication :

    • Utilisez votre Merchant ID comme nom d'utilisateur et votre API Key comme mot de passe.
    • Formatez la chaîne MerchantID:APIKey et encodez-la en Base64.
    • Incluez-la dans l'en-tête Authorization avec le préfixe Basic.
  • OAuth 2.0 :

    • Générez un JSON Web Token (JWT) en vous authentifiant avec votre API Key via l'endpoint authorization/oauth/token.

3.2. Exemple de Requête d'Authentification

http

Collapse

1
2
3

GET /authorization/oauth/token HTTP/1.1
Host: api.axepta.bnpparibas
Authorization: Basic base64(MerchantID:APIKey)


4. Endpoints de l'API

4.1. Création d'une Transaction

  • Endpoint : POST /payments
  • Description : Crée une nouvelle transaction de paiement.
  • Paramètres Requis :
    • amount : Montant de la transaction.
    • currency : Devise de la transaction.
    • payment_method : Méthode de paiement choisie.
    • customer_email : Adresse e-mail du client.

4.2. Consultation d'une Transaction

  • Endpoint : GET /payments/{transaction_id}
  • Description : Récupère les détails d'une transaction spécifique.
  • Paramètres Requis :
    • transaction_id : Identifiant unique de la transaction.

4.3. Annulation d'une Transaction

  • Endpoint : POST /payments/{transaction_id}/cancel
  • Description : Annule une transaction en attente.
  • Paramètres Requis :
    • transaction_id : Identifiant unique de la transaction.

5. Gestion des Erreurs

5.1. Codes d'Erreur Courants

  • 400 Bad Request : Requête mal formée.
  • 401 Unauthorized : Authentification échouée.
  • 404 Not Found : Ressource non trouvée.
  • 500 Internal Server Error : Erreur interne du serveur.

5.2. Exemple de Réponse d'Erreur

json

Collapse

1
2
3
4
5
6



{
"error": {
"code": "400",
"message": "Invalid amount"
}
}


6. Sécurité

6.1. Conformité PCI-DSS

  • Chiffrement des Données : Toutes les communications sont chiffrées via HTTPS (TLS 1.2 ou supérieur).
  • Protection des Données Sensibles : Les données sensibles des clients sont gérées par Axepta BNP Paribas, réduisant ainsi vos responsabilités PCI-DSS.

6.2. Bonnes Pratiques de Sécurité

  • Gestion des Clés API : Stockez vos clés API de manière sécurisée.
  • Mises à Jour Régulières : Assurez-vous que votre système est à jour pour éviter les vulnérabilités.

7. Documentation Complémentaire

7.1. Exemples de Code

  • Exemple en Python :

python

Collapse

Run

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16



import requests

url = "https://api.axepta.bnpparibas/payments"
headers = {
"Authorization": "Basic base64(MerchantID:APIKey)",
"Content-Type": "application/json"
}
data = {
"amount": 100.00,
"currency": "EUR",
"payment_method": "credit_card",
"customer_email": "client@example.com"
}

response = requests.post(url, headers=headers, json=data)
print(response.json())

  • Exemple en JavaScript :

javascript

Collapse

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17



const axios = require('axios');

const url = 'https://api.axepta.bnpparibas/payments';
const headers = {
'Authorization': 'Basic base64(MerchantID:APIKey)',
'Content-Type': 'application/json'
};
const data = {
amount: 100.00,
currency: 'EUR',
payment_method: 'credit_card',
customer_email: 'client@example.com'
};

axios.post(url, data, { headers })
.then(response => console.log(response.data))
.catch(error => console.error(error));

7.2. FAQ

  • Q : Comment puis-je obtenir mes clés API ?

    • R : Contactez notre support technique pour obtenir vos clés API.
  • Q : Quelles méthodes de paiement sont supportées ?

    • R : Plus de 350 méthodes de paiement sont supportées, y compris les cartes de crédit, PayPal, et bien d'autres.