Direct API

Paiement avec Bictorys : Intégration Directe via l'API

Si vous préférez une intégration plus directe pour le processus de paiement, Bictorys propose également l'utilisation de Direct API. Voici les étapes détaillées, accompagnées du code nécessaire pour chaque étape du processus.

Etape 1 : Préparation des données de paiement

const data = JSON.stringify({
  "merchantReference": "33e1c83b-7cb0-437b-bc50-a7a58e5660ad",
  "redirectUrl": "https://client.co/redirect_url",
  "amount": 100,
  "currency": "XOF",
  "orderDetails": [
    {
      "name": "pineapple2",
      "price": 100,
      "quantity": 2.5,
      "taxRate": 5.5
    },
    {
      "name": "mango",
      "price": 100,
      "quantity": 2.5,
      "taxRate": 5.5
    }
  ],
  "paymentReference": "Xref34345",
  "customer": {
    "name": "John Dao",
    "phone": "+221776794638",
    "email": "[email protected]",
    "city": "Dakar",
    "postal_code": "string",
    "country": "SN",
    "locale": "fr-FR"
  },
  "cardDetails": {
    "name": "John Dao",
    "num": "4539093488100011",
    "ccv": "000",
    "exp": "12-26"
  },
  "allowUpdateCustomer": false
});

Etape 2 : Envoi de la Requête API

const xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
    // Vous pouvez traiter la réponse ici
  }
});

xhr.open("POST", "http://api.dev.bictorys.com:8089/pay/v1/charges");
xhr.setRequestHeader("Request-Id", "038b8488-54fb-49c8-8aa1-0b30c1c99ded");
xhr.setRequestHeader("Content-Type", "application/json");
xhr.setRequestHeader("X-Api-Key", "public-e6cf6c1d-3055-42fa-8eb7-c4f69b6fcbc8.7qmgwSXO69IttHNpS9oNg1WeUCOjnarUpa69jLPA5GmH96pe1EEKpUqf13AKbBSA");

xhr.send(data);

Etape 3 : Analyse de la Réponse

La réponse de la requête sera disponible dans la console une fois que l'état de la requête atteint DONE. Vous pouvez personnaliser le traitement de la réponse en fonction des besoins spécifiques de votre application.

Exemple de Personnalisation

Modifions le code pour illustrer un exemple de traitement de réponse :

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    const response = JSON.parse(this.responseText);

    if (response.status === "success") {
      // Le paiement a été effectué avec succès
      console.log("Paiement réussi. Numéro de transaction :", response.transactionId);
    } else {
      // Le paiement a échoué
      console.error("Échec du paiement. Raison :", response.errorReason);
    }
  }
});

📘

Note

N'oubliez pas de personnaliser les gestionnaires d'erreurs et de succès en fonction des exigences spécifiques de votre application.

❗️

Important

L'intégration Direct API requiert une certification PCI DSS.

Cette intégration directe offre un contrôle granulaire sur le processus de paiement, permettant une expérience utilisateur personnalisée et optimisée. Si des questions subsistent, notre équipe de support est là pour vous aider à chaque étape. Merci de choisir Bictorys pour vos solutions de paiement en ligne !