PHP SERVER SDK
PHP SDK for server side integration
GENEREZ VOS CLES API
Les clés API sont vos références numériques vers les systèmes Intram. Nous les utilisons pour identifier votre compte et les applications que vous allez créer. Ces clés sont nécessaires pour toute intégration des API de paiements d'Intram. Voici les étapes à suivre :
Tout d'abord, vous devez avoir un compte Intram Business activé. Créez-en un si ce n'est pas encore le cas.
Connectez-vous à votre compte et cliquez sur Développeurs au niveau du menu à gauche.
Cliquez ensuite sur API, vous verrez toutes vos clés API.
Vous pouvez passer au mode
SANDBOX
ou activer le modeLIVE
.
Installation via composer
composer require intram/php-sdk
Api configuration
Login à votre compte Intram, cliquez sur Developer
, puis sur API
à ce niveau, récupérez les clés API et donnez-les comme arguments au contrôleur. Initialiser Intram en entrant dans l'ordre : PUBLIC_KEY
, PRIVATE_KEY
, INTRAM_SECRET
, INTRAM_MARCHAND_KEY
, MODE
Le mode : true
pour le mode live et false
pour le mode test.
$intram = new \Intram\Intram(
"5b06f06a0aad7d0163c414926b635ee",
"pk_9c0410014969f276e8b3685fec7",
"sk_08bd75f9468b484d8a9f24daddf",
"marchand_id",
true)
Configurez les informations relatives à votre département / entreprise
Nom de votre entreprise (requis)
$intram->setNameStore("Suntech Store");
URL du Logo de votre entreprise (optionnel)
$intram->setLogoUrlStore("https://www.suntechshop/logo.png");
Le site web de votre entreprise (optionnel)
$intram->setWebSiteUrlStore("https://www.suntechshop");
Le numéro de téléphone de votre entreprise
$intram->setPhoneStore("97000000");
L'adresse postale de votr eentreprise
$intram->setPostalAdressStore("BP 35");
Créer une requête de paiement
Afin de permettre à l'utilisateur d'effectuer un paiement sur votre boutique, vous devez créer la transaction puis lui envoyer l'URL de paiement ou le QR code à scanner. Pour cela :
Ajouter des éléments de facture
Ajouter les différents produits de l'achat
$intram->setItems([
['name'=>"T-shirt",'qte'=>"2",'price'=>"500",'totalamount'=>"1000"],
['name'=>"trouser",'qte'=>"1",'price'=>"12500",'totalamount'=>"12500"],
]);
La TVA
$intram->setTva([["name" => "VAT (18%)", "amount" => 1000],["name" => " other VAT", "amount" => 500]]);
Données personnelles
$intram->setCustomData([['CartID',"32393"],['PERIOD',"TABASKI"]]);
Prix total de la transaction (requis)
$intram->setAmount(13600);
Devise de la transaction (requis)
$intram->setCurrency("XOF");
Description de la transaction (optionnelle)
$intram->setDescription("Pretty and suitable for your waterfall");
Modèle de page de paiement (requis)
$intram->setTemplate("default");
URL de Redirection
$intram->setRedirectionUrl("https://www.suntechshop/redirection-url");
URL Retour après transaction
$intram->setReturnUrl("https://www.suntechshop/return-url");
URL retour après annulation de la transaction
$intram->setCancelUrl("https://www.suntechshop/cancel-url");
Effectuer la demande de paiement
$response = $intram->setRequestPayment();
Réponse attendue
{
+"status": "PENDING"
+"transaction_id": "5f2d7a96b97d9d3fea912c11"
+"receipt_url": "localhost:3000/payment/gate/5f2d7a96b97d9d3fea912c11"
+"total_amount": 1000
+"currency":"xof"
+"qr_code":"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHQAAAB0CAYAAABUmhYnAAAAAklEQVR4AewaftIAAAL9SURBVO3BQQ7jCAhFwZcvi6NyKI7KgkyWrCxZdtLdDFWv9wdrDLFGEWsUsUYRaxSxRhFrFL ▶"
}
Récupérer des données
$transaction_id = $response->transaction_id;
$status = $response->status;
$receipt_url = $response->receipt_url;
$total_amount = $response->total_amount;
.......
Obtenir le statut de la transaction
Donnez l'identifiant de la transaction comme argument à la fonction
$intram->getTransactionStatus($transaction_id);
Réponse attendue
{
+"status": "PENDING"
+"amount": 1000
+"currency": "XOF"
+"account_number":"22996XXXXXX"
+"source":"MOOV"
+"fees":50
+"net_amount":1050
}
Numero de test
MTN : 61000000
MOOV : 94000000
Tests
Pour exécuter les tests, il suffit de définir les variables d'environnement de la configuration de l'API. Une connexion Internet est nécessaire pour que certains tests soient réussis.
Licence
MIT
Dernière mise à jour