Pour toute question, nous sommes à un clic

Poser une question

Intégration de redirection

L'intégration de redirection est un processus simple et sécurisé qui utilise la page de paiement du côté de la passerelle de paiement. Le principal avantage de cette méthode d'intégration est que vous n'avez pas besoin de collecter et traiter les données de carte sur votre site web. L'API est utilisée de manière minimale dans ce cas, donc cette méthode ne nécessite pas beaucoup d'expertise en développement.

Tout d'abord, vous devriez vous abonner aux webhooks suivants (voir Webhooks pour plus de détails) :

Avant de commencer, assurez-vous que vous avez créé un compte ou vous êtes connecté.
sequenceDiagram participant C as Client participant OS as Boutique en ligne participant PG as Passerelle de paiement autonumber activate C C ->> OS: Initier le paiement activate OS OS ->> PG: Créer une session
(requête "/sessions") activate PG PG -->> OS: id, paymentUrl OS -->> C: Rediriger vers l'URL de paiement C ->> PG: Saisir les données de carte PG -->> PG: Traiter le paiement PG -->> C: Rediriger vers l'URL de succès deactivate C PG -->> OS: webhook "session.completed"
deactivate OS deactivate PG
  1. Un client sélectionne un produit dans la boutique en ligne, puis clique sur Acheter.

  2. La boutique en ligne demande la création de session en envoyant une requête POST /sessions à la passerelle de paiement. La requête doit contenir les paramètres suivants :

    • amount - le montant du paiement en unités monétaires mineures. Par exemple, pour spécifier 100 $, utilisez amount=10000 et currency=USD (10000 centimes).
    • currency - code de la devise de paiement, selon ISO 4217.
    • successUrl - l'adresse vers laquelle le client sera redirigé après un paiement réussi à l'Étape 7.
    • failureUrl - l'adresse vers laquelle le client sera redirigé à l'Étape 7, si le paiement échoue.

    Exemple de requête :

    curl -X POST "https://dev.bpcbt.com/api2/sessions" \
    -H "X-Api-Key: 6HUXQFbeomV1zf5i8cgm5W8KfncENVEa5uh8RngB" \
    -H "X-Version: 2023-10-31" \
    -H "Content-Type: application/json" \
    -d '{
    "amount": 10000,
    "currency": "EUR",
    "successUrl": "https://mybestmerchantreturnurl.com/success",
    "failureUrl": "https://mybestmerchantreturnurl.com/failure"
    }'
  3. La passerelle de paiement crée une session et envoie une réponse au serveur de la boutique en ligne. La réponse contient un id (l'identifiant unique de la session dans la passerelle de paiement) et une paymentUrl (l'URL vers laquelle la boutique en ligne devrait rediriger le client pour le paiement à l'Étape 4). Les autres champs envoyés dans la requête sont également retournés dans la réponse.

    Exemple de réponse :

    {
    "id": "ps_2GRSigkh7m3hqz5pMCAYCzJaXjsHgypQui6nMBss3XLVLF8gwDASHP",
    "amount": 10000,
    "created": "2024-03-28T08:26:37Z",
    "currency": "EUR",
    "customerDetails": {},
    "expiresAt": "2024-03-28T08:46:37Z",
    "failureUrl": "https://mybestmerchantreturnurl.com/failure",
    "locale": "EN",
    "merchantReferenceId": "4000",
    "metadata": {},
    "paymentData": {
        "captureMethod": "automatic"
    },
    "paymentStatus": "unpaid",
    "paymentUrl": "https://dev.bpcbt.com/payment/merchants/ecom/payment.html?mdOrder=12a19f56-50e6-74bc-a289-c93d00a9c8eb&language=en",
    "status": "open",
    "successUrl": "https://mybestmerchantreturnurl.com/success"
    }
  4. La boutique en ligne redirige le client vers l'URL reçue dans le paramètre paymentUrl. La redirection peut être effectuée dans la même fenêtre ou dans une nouvelle fenêtre.

  5. Le client saisit son numéro de carte, la date d'expiration et le CVV/CVC, puis clique sur Payer.

  6. La passerelle de paiement traite la demande de paiement.

  7. Le client est redirigé vers la page de la boutique en ligne définie dans le paramètre successUrl (spécifié à l'Étape 2). L'URL de redirection contiendra l'ID de la session, par exemple : https://mybestmerchantreturnurl.com/success?sessionId=ps_aksdhauedqiuwehdiqwbdq.

  8. La boutique en ligne attend le webhook session.completed pour s'assurer que le paiement a été réussi. Vous devez toujours vérifier la signature du webhook dans l'en-tête X-Signature (voir Webhooks pour les détails).

Catégories:
eCommerce API V2
Catégories
Résultats de recherche