Integration PHP

Info !!! Pour commencer, vous devez télécharger la dernière version de notre client PHP. Télécharger
Attention !!! Pour vos tests, connectez vous plutôt à la plateforme de test. Connexion à la Plateforme de test

En vous inscrivant sur la plateforme de test, votre compte de test sera crédité de 100.000 Fcfa. Cela vous permettra d’éffectuer en toute aisance les tests d’intégration avant de passer en production.

Cela fait, suivez les étapes suivantes :

    • Décompressez le fichier .zip
Arborescence du dossier issu de la décompression
>pay-php-gateway : dossier principal
–>demo : dossier contenant un site web démo permettant de tester le client PHP
—->conf.php : fichier de configuration. Contient tous les paramètres de configuration du site web démo
—->confirm.php : fichier de de retour. Contient le code qui permet au site web démo de vérifier le statut de la transaction. C’est aussi la page sur laquelle le client est renvoyé après validation de son paiement.
—->index.php : page d’acceuil du site web démo. C’est aussi la page qui affiche le contenu du panier, c’est donc de là que le processus de paiement est lancé
—->redirect_checkout.php : page qui renvoit le client vers la page de validation de paiement, une fois que le processus de paiement est lancé
–>pay : dossier contenant le client PHP. Dans le cadre de ce tutoriel, il n’est pas important de s’attarder sur le contenu de ce dossier. Cependant, vous pourrez y jeter un coup d’oeuil pour mieux comprendre comment marche la librairie
–>LICENSE.txt : fichier de licence
–>pay-php-gateway.php : client PHP
  • Pour l’intégration du client, copiez le dossier pay-php-gateway dans le dossier contenant le code source de votre application

Configuration de la page de paiement

    • Initialisez le client PHP, en copiant-collant
      require('chemin_vers_le_dossier_du_client_php/pay-php-gateway.php');
      $setup = new Pay_Setup();
      $setup->setApi_key("votre clé principale génénée lors de la création de l'application");
      $setup->setMode("mode d'utilisation (soit live, soit test)");
      $setup->setToken("token généné lors de la création de l'application");
      //Configuration des informations de votre boutique/service
      $store = new Pay_Checkout_Store();
      $store->setName("nom de votre boutique/application");
      $store->setWebsiteUrl("url de votre site");
      $store->setCancelUrl("url de d'annulation de vente");
      $store->setCallbackUrl("url de retour apres validation du paiement");
      $store->setReturnUrl("url de retour apres validation du paiement");
      // Soit $co la variable contenant la commande
      $co = new Pay_Checkout_Invoice($store, $setup);
    • Supposons que votre client ait acheté deux articles. Pour ajouter ces deux articles dans la commande, faites comme ceci :
      $co->addItem("Jean Gucci", 3, 150, 450, "Jean bleu, de marque Gucci");
      $co->addItem("Jean Prada", 2, 100, 200, "Jean noir, de marque Prada");
Prototype de la fonction addItem()
addItem(array(name, quantity, unit_price, total_price, description)) où :
name : nom de l’article
quantity : quantité de l’article
unit_price : prix unitaire de l’article
total_price : prix total de l’article
description : description de l’article acheté ou autres détails sur l’article
    • Pour ajouter le total et la description de la facture, faites comme ceci :
      $co->setTotalAmount($total_amount);
      $co->setDescription("Achat de deux articles sur le site Jeans Missebo");
  • Pour lancer le processus de paiement, faites comme ceci :
    // démarrage du processus de paiement
    // envoi de la requete
    if($co->create()) {
      // Requête acceptée, alors on redirige le client vers la page de validation de paiement
      header("Location: ".$co->getInvoiceUrl());
    }else{
      // Requête refusée, alors on affiche le motif du rejet
      echo $co->response_text;
    }

Configuration de la page vérification du paiement (page du return_url)

    • Initialisez le client PHP, en copiant-collant
      require('chemin_vers_le_dossier_du_client_php/pay-php-gateway.php');
      $setup = new Pay_Setup();
      $setup->setApi_key("votre clé principale génénée lors de la création de l'application");
      $setup->setMode("mode suivant lequel");
      $setup->setToken("token généné lors de la création de l'application");
      //Configuration des informations de votre boutique/service
      $store = new Pay_Checkout_Store();
      $store->setName("nom de votre boutique/application");
      $store->setWebsiteUrl("url de votre site");
      $store->setCancelUrl("url de d'annulation de vente");
      $store->setCallbackUrl("url de retour apres validation du paiement");
      $store->setReturnUrl("url de retour apres validation du paiement");
      // Soit $co la variable contenant la commande
      $co = new Pay_Checkout_Invoice($store, $setup);
  • Pour vérifier le statut du paiement, faites comme ceci :
    // La méthode confirm returne true ou false dépendamment du statut du paiement
    // Vous pouvez donc utiliser une instruction if - else et gérer le résultat comme bon vous semble
    if ($co->confirm()) {
      // transaction réussie
    }else{
      //transaction échouée
    }