Api Documentation

Introduction

This section describes the DuixPay payment gateway API.


L'API DuixPay est facile à intégrer dans votre logiciel d'entreprise. Notre API utilise des URL bien formatées, accepte les requêtes cURL et renvoie des réponses au format JSON.

Vous pouvez utiliser l'API en mode de test, ce qui n'affecte pas vos données en direct. La clé API est utilisée pour authentifier la demande et détermine si la demande est un paiement valide ou non. Pour le mode de test, utilisez simplement l'URL sandbox (bac à sable). En cas de mode en direct, utilisez l'URL en direct de la section correspondante. Initier le paiement .

Devises prises en charge

Cette section décrit les devises prises en charge par DuixPay


DuixPay permet d'effectuer des transactions avec les devises suivantes. Toute nouvelle devise pourra être ajoutée ultérieurement.

Nom de la devise Symbole de la devise Code de la devise
United States Dollar $ USD
Bucks X BCS
Franc Congolais F CDF

Obtenir la clé API

Cette section décrit comment obtenir votre clé API.


Connectez-vous à votre compte marchand DuixPay If you don't have any ? Cliquez ici

L'étape suivante consiste à trouver la Clé API menu in your dashboard sidebar. Click the menu.

Les clés API peuvent être trouvées ici, c'est-à-dire Clé publique et clé secrète. Utilisez ces clés pour initier la demande API. Vous pouvez générer une nouvelle clé API à chaque fois en cliquant sur Générer une clé API . Rappelez-vous de ne pas partager ces clés avec quiconque.

Initier le paiement

Cette section décrit le processus d'initiation du paiement.


Pour initier le paiement, suivez le code d'exemple et faites attention aux paramètres. Vous devrez effectuer une demande avec les points d'extrémité (endpoints) API suivants.

Live End Point: https://app.duixpay.com/payment/initiate

Test End Point: https://app.duixpay.com/sandbox/payment/initiate

Test Mode Mail: test@duixpay.com

Test Mode Verification Code: 112233

Méthode de demande : POST

Faites une demande vers le endpoint avec les paramètres suivants ci-dessous.

Param Name Param Type Description
public_key string (50) Required Votre clé API publique
identifier string (20) Required L'identifiant sert principalement à identifier le paiement de votre côté.
currency string (4) Required Code de la devise, doit être en majuscules. Par exemple : USD, CDF, BCS.
amount decimal Required Montant du paiement.
details string (100) Required Détails de votre paiement ou transaction.
ipn_url string Required L'URL de notification de paiement instantané.
success_url string Required L'URL de redirection en cas de succès de paiement.
cancel_url string Required L'URL de redirection en cas d'annulation de paiement.
site_logo string/url Required Le logo de votre site commercial.
customer_name string (30) Required Nom du client.
customer_email string (30) Required Adresse e-mail valide du client.
Exemple de code PHP
<?php
    $parameters = [
        'identifier' => 'DFU80XZIKS',
        'currency' => 'BCS',
        'amount' => 100.00,
        'details' => 'Création site web E-commerce',
        'ipn_url' => 'http://example.com/ipn_url.php',
        'cancel_url' => 'http://example.com/cancel_url.php',
        'success_url' => 'http://example.com/success_url.php',
        'public_key' => 'your_public_key',
        'site_logo' => 'https://app.duixpay.com/assets/images/logoIcon/logo.png',
        'customer_name' => 'Holson Mpangala',
        'customer_email' => 'me@holsonmp.com',

    ];

    //live end point
    $url = "https://app.duixpay.com/payment/initiate";

    //test end point
    $url = "https://app.duixpay.com/sandbox/payment/initiate";

    $ch = curl_init();
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_POSTFIELDS,  $parameters);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    $result = curl_exec($ch);
    curl_close($ch);

    //$result contient la réponse renvoyée.
?>
Exemples de réponses
// Réponse en cas d'erreur..
{
    "error": "true",
    "message": "Clé API invalide"
}

// Réponse en cas de succès..
{
    "success": "ok",
    "message": "Paiement initié. Redirection vers l'URL.",
    "url":"http://example.com/initiate/payment/checkout?payment_id=eJSAASDxdrt4DASDASVNASJA7893232432cvmdsamnvASF"
}

Valider le paiement et IPN (Notification de paiement instantané)

Cette section décrit le processus pour obtenir votre notification de paiement instantané.


Pour initier le paiement, suivez le code d'exemple et faites attention aux paramètres. Vous devrez effectuer une demande avec les points d'extrémité (endpoints) API suivants.

End Point: L'URL IPN de votre application commerciale.

Méthode de demande : POST

Vous obtiendrez les paramètres suivants ci-dessous.

Param Name Description
status Statut de réussite du paiement.
identifier L'identifiant sert principalement à identifier le paiement de votre côté.
signature Une signature de hachage pour vérifier votre paiement de votre côté.
data Les données contiennent des informations de base telles que les frais, le montant, la devise, l'identifiant de transaction de paiement, etc.
Exemple de code PHP
<?php
    // Recevoir les paramètres de réponse
    $status = $_POST['status'];
    $signature = $_POST['signature'];
    $identifier = $_POST['identifier'];
    $data = $_POST['data'];

    // Générez votre signature
    $customKey = $data['amount'].$identifier;
    $secret = 'YOUR_SECRET_KEY';
    $mySignature = strtoupper(hash_hmac('sha256', $customKey , $secret));

    $myIdentifier = 'YOUR_GIVEN_IDENTIFIER';

    if($status == "success" && $signature == $mySignature &&  $identifier ==  $myIdentifier){
        // votre logique d'opération
    }
?>

Plugins API


Vous pouvez utiliser notre plugin API prêt à l'emploi pour votre CMS préféré afin de collecter des paiements en utilisant DuixPay.

WooCommerce Plugin

Télécharger

WHMCS Plugin

Télécharger

Find the talent needed to get your business growing.

Advertise your jobs to millions of monthly users and search 15.8 million CVs

Get Started