Seamless

Le seamless permet d'intégrer facilement AdjeminPay à son service en ligne.

Intégration

Lors de vos paiements, AdjeminPay vous notifie via une URL que vous avez précédemment défini dans votre interface admin lors de la création de votre application.

Si vous n'avez pas encore créé d'application, je vous conseille de le faire pour pouvoir suivre la suite.

Après avoir rempli le formulaire de la création d'une application, il faut lier le seamless SDK à votre page grâce au lien suivant :

Pour lier le seamless SDK à votre page, il suffit d'ajouter ces différents liens ci dessous dans votre page html.

<script src="https://www.adjeminpay.com/release/seamless/latest/adjeminpay.min.js" type="text/javascript"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.4.1/jquery.js"></script>

Pour effectuer une transaction avec AdjeminPay, vous devez définir les différents champs ci-dessous :

  • amount : Montant du paiement.

  • currency : Devise du paiement, en CFA.

  • transactionId : Unique identifiant de la transaction.

  • designation : Désignation du paiement.

  • notify_url : Uri de notification ou vous recevrez les informations après le paiement.

Ces éléments suivants sont facultatifs :

  • phone_num : Numéro de téléphone utilisé pour le paiement.

  • adp_phone_prefixe : CC ou Country Code du numéro de téléphone utilisé.

    • exemple : (225 => pour la Côte d'Ivoire)

<p id="result"></p>
<form id="paiement">
<input type="hidden" id="amount" value="7500">
<input type="hidden" id="currency" value="CFA">
<input type="hidden" id="trans_id" value="7789899545">
<input type="hidden" id="adp_custom" value="">
<input type="hidden" id="designation" value="Ecouteur vert bluetooth">
<button type="submit" id="requestToPay">Payer avec AdjeminPay</button>
</form>

NB : Enregistrer au préalable dans votre base de données (BD) les différentes informations concernant une conversation pour pouvoir faire une comparaison plus tard.

<script >
// Initialisation Adjemin
var AdjeminPay = AdjeminPay();
// Ecouter le feedback de l'initialisation
AdjeminPay.on('init', function(e){
// retourne une erreur au cas où votre API_KEY ou APPLICATION_ID est incorrecte
console.log(e);
});
// Ecouter le feedback sur les errerurs
AdjeminPay.on('error', function(e){
console.log("erreur trouvées");
console.log(e);
});
// Initialisation aec les crédentials
AdjeminPay.init({
apikey: 'VOTRE_API_KEY',
application_id: 'VOTRE_APPLICATION_ID',
notify_url: 'URL_NOTIFICATION'
})
// Requête de paiment
$('#requestToPay').click(function (e) {
e.preventDefault();
AdjeminPay.preparePayment({
amount: parseInt($('#amount').val()),
transactionId: $('#trans_id').val(),
currency: $('#currency').val(),
designation: $('#designation').val(),
custom: $('#adp_custom').val()
});
AdjeminPay.renderPaymentView();
});
</script>

NB: Pour cet exemple nous avons utilisé jquery.

Ecouter des événements

<script >
....
// Ecouter le feedback de paiement en attente
AdjeminPay.on('paymentPending', function (e) {
$('#result').empty()
$('#result').html(`Paiement en cours <br><b>code:</b>${e.code}<br><b>Message:</b>:${e.message}`)
})
// Ecouter le feedback de creation de signature
AdjeminPay.on('signatureCreated', function () {})
// Ecouter le feedback de paiement réussi
AdjeminPay.on('paymentSuccessfull', function (info) {
if(paymentInfo.adp_result == 'SUCCESS'){
$('#result').html(`Votre paiement a été validé avec succès : <br> Montant payé : ${info.adp_amount}<br>`)
}else{
$('#result').html(`Une erreur est survenue : ${info.adp_error_message}`)
}
})
</script>

Script complet :

<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<p id="result"></p>
<form id="paiement">
<input type="hidden" id="amount" value="7500">
<input type="hidden" id="currency" value="CFA">
<input type="hidden" id="trans_id" value="7789899545">
<input type="hidden" id="adp_custom" value="">
<input type="hidden" id="designation" value="Ecouteur vert bluetooth">
<button type="submit" id="requestToPay">Payer avec AdjeminPay</button>
</form>
<script src="https://www.adjeminpay.com/release/seamless/latest/adjeminpay.min.js" type="text/javascript"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.4.1/jquery.js"></script>
<script >
var AdjeminPay = AdjeminPay();
AdjeminPay.init({
apikey: 'VOTRE_API_KEY',
application_id: 'VOTRE_APPLICATION_ID',
notify_url: 'URL_NOTIFICATION'
})
// Ecouter le feedback de l'initialisation
AdjeminPay.on('init', function(e){
// retourne une erreur au cas où votre API_KEY ou APPLICATION_ID est incorrecte
console.log(e);
});
// Ecouter le feedback sur les errerurs
AdjeminPay.on('error', function(e){
console.log("erreur trouvées");
console.log(e);
});
// Requête de paiment
$('#requestToPay').click(function (e) {
e.preventDefault();
AdjeminPay.preparePayment({
amount: parseInt($('#amount').val()),
transactionId: $('#trans_id').val(),
currency: $('#currency').val(),
designation: $('#designation').val(),
custom: $('#adp_custom').val()
});
AdjeminPay.renderPaymentView();
});
// Ecouter le feedback de paiement en attente
AdjeminPay.on('paymentPending', function (e) {
$('#result').empty()
$('#result').html(`Paiement en cours <br><b>code:</b>${e.code}<br><b>Message:</b>:${e.message}`)
})
// Ecouter le feedback de creation de signature
AdjeminPay.on('signatureCreated', function () {})
// Ecouter le feedback de paiement réussi
AdjeminPay.on('paymentSuccessfull', function (info) {
if(paymentInfo.adp_result == 'SUCCESS'){
$('#result').html(`Votre paiement a été validé avec succès : <br> Montant payé : ${info.adp_amount}<br>`)
}else{
$('#result').html(`Une erreur est survenue : ${info.adp_error_message}`)
}
})
</script>
</body>
</html>