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. Nous vous suggérons d'utiliser une intégration directe pour les applications mobiles qui acceptent les paiement mobile mobile money ou Top-Up.
Voici les étapes détaillées, avec un exemple de code.
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"
},
"allowUpdateCustomer": false
});
// Préparez les données de paiement
const data = {
"amount": 100,
"currency": "XOF",
"paymentReference": "yourOrder_CF34509",
"successRedirectUrl": "https://client.co/redirect_url",
"errorRedirectUrl": "https://client.co/redirect_url",
};
Etape 2 : Envoi de la Requête API
const xhr = new XMLHttpRequest();
xhr.withCredentials = false;
xhr.addEventListener("readystatechange", function () {
if (this.readyState === this.DONE) {
console.log(this.responseText);
// Vous pouvez traiter la réponse ici
}
});
xhr.open("POST", "https://api.test.bictorys.com/pay/v1/charges?payment_type=orange_money");
xhr.setRequestHeader("Content-Type", "application/json");
xhr.setRequestHeader("X-Api-Key", "public-e6cf6c1d-3055-42fa-8eb7-c4f69b6fcbc8.7qmgwSXO69IttHNpS9oNg1WeUCOjnarUpa69jLPA5GmH96pe1EEKpUqf13AKbBSA");
xhr.send(data);
// Utilisez la méthode fetch pour envoyer une requête POST avec le paramètre payment_type
fetch("https://api.test.bictorys.com/pay/v1/charges?payment_type=orange_money", {
method: "POST",
headers: {
"Content-Type": "application/json",
"X-Api-Key": "public-e6cf6c1d-3055-42fa-8eb7-c4f69b6fcbc8.7qmgwSXO69IttHNpS9oNg1WeUCOjnarUpa69jLPA5GmH96pe1EEKpUqf13AKbBSA"
},
body: JSON.stringify(data),
})
.then(response => {
if (!response.ok) {
throw new Error(`HTTP error! status: ${response.status}`);
}
return response.json();
})
.then(data => {
console.log(data);
// Gérez la réponse, par exemple, redirigez le client vers la page de paiement
})
.catch(error => {
console.error("Erreur lors de la requête :", error);
});
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 pour le paiement carte bancaire uniquement.
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 !
Updated 7 days ago