Pré-requis #
- PHP = 7.2 && PHP>=7.4+ (Ne fonctionne pas avec PHP 7.3)
- Créez un compte sur Paynit en tant que marchand. Cliquez pour créer un compte.
- Obtenez les clés API de votre compte marchand, la clé de l’API du marchand et le mot de passe de l’API du marchand à partir du tableau de bord du marchand dans la section Settings > Security > API Key List & Access
Pour commencer à utiliser ce SDK, assurez-vous que votre application PHP est prête et que vous avez souscrit aux différentes méthodes de paiement que vous souhaitez.
Installation #
Installez le SDK PHP avec composer. Alternativement, si vous partez de zéro et avez besoin d’un fichier composer.json.
composer require sevengps/payunit
Utilisation du SDK #
Pour utiliser Payunit de manière pratique, ajoutez l’espace de nom (Namespace) Payunit dans votre contrôleur souhaité.
Créez une nouvelle instance de la classe Payunit et transmettez-lui tous les paramètres requis.
$myPayment = new PayUnit(
"api_key",
"api_password",
"api_username",
"returnUrl",
"notifyUrl",
"mode",
"description",
"purchaseRef",
"currency",
"name",
"transactionId"
);
Appelez la méthode makePayment pour effectuer un paiement.
$myPayment->makePayment("total_amount");
Configuration # #
- Pour tester Visa/Master Card dans l’environnement Sandbox, utilisez les informations suivantes :
- Numéro de carte: 4242 4224 2424 2424 ou2223 0000 4840 0011
- Pour tester PayPal dans l’environnement Sandbox, utilisez l’identifiant suivant :
Attribut | Description | Obligatoire |
api_nom d’utilisateur | Nom d’utilisateur de l’Api du marchand obtenu à partir du tableau de bord du marchand dans la section des informations d’identification. | oui |
api_mot de passe | Mot de passe de l’Api du commerçant obtenu à partir du tableau de bord du commerçant dans la section des informations d’identification. | oui |
api_clé | Clé Api du marchand obtenue à partir du tableau de bord du marchand dans la section des informations d’identification. | oui |
mode | Le mode de fonctionnement actuel. Il peut être soit “test” lorsqu’il est testé dans le bac à sable, soit “live” lorsqu’il est prêt pour la production. | oui |
return_url | L’url ou le endpoint à être utilisé à la fin du paiement. | oui |
notify_url | L’url ou le endpoint auquel soumettre une réponse de transaction.
Cette url ou le endpoint accepte une requête au format POST : { “transaction_id:”6465464”, “transaction_amount”:”5000″, “transaction_status”:”SUCCÈS”, “error”:null, “message”:”Transaction of 5000 XAF a été achevé avec succès” } | non |
purchaseRef | Une référence que vous pouvez donner de votre côté à une transaction particulière. | non |
montant_total | Le montant ou le prix du produit/produits à payer. | oui |
description | Une description que vous pouvez donner à ce type de transaction | non |
nom | Nom du marchand | oui |
Devise | Peut être XAF, USD ou toute autre monnaie actuellement supportée. | oui |
transactionId | id qui identifie de manière unique la transaction et qui doit être unique pour une transaction. Cet identifiant doit être alphanumérique et comporter moins de 20 caractères. | oui |
Si tout est en place, un appel à l’API de PayUnit sera effectué et si la requête s’avère réussie, vous serez redirigé vers l’interface de paiement de PayUnit. L’interface est présentée ci-dessous.
Demo #
Vous pouvez consulter cette démo à l’adresse suivante https://gitlab.com/sevencommonfactor/payunit-php-demo/-/tree/dev pour voir l’unité de paiement en action.
Regardez la vidéo de démonstration ici https://youtu.be/9q6ZgDJH23k
Recommandations #
Pour des raisons de sécurité, assurez-vous de lire votre clé Api, votre mot de passe Api et votre utilisateur Api dans un fichier d’environnement (.env) et ne le partager pas.