moncasheasy / moncash-easy-sdk
PHP SDK,用于在Web项目中使用Moncash
Requires
- php: >=7.1
- ext-curl: *
README
这是一个PHP库,允许在项目中使用Moncash服务,基于Moncash官方API REST v1版文档,该库旨在提供与Moncash API REST的最简单通信接口。
安装
通过Composer
在项目根目录下,如果尚不存在,创建一个新的 composer.json 文件,并添加以下内容
{ "require": { "moncasheasy/moncash-easy-sdk": "^2.0" } }
使用 composer 安装MoncashEasy及其依赖项,在修改其全局路径global之后,在终端中定位到您的项目目录并执行以下命令
composer install
您也可以直接输入以下命令
composer require moncasheasy/moncash-easy-sdk
如果您不知道要安装哪个版本,则会安装最新版本。
然后在您的代码中,使用Composer的自动加载
require_once 'vendor/autoload.php';
手动安装
如果您不想使用Composer,您可以下载最新版本,然后将其中的 init.php
文件包含到您的代码中
require_once '/path/to/Moncash-Easy-SDK/init.php';
先决条件
为了使用MoncashEasy,您首先需要在MonCash网站上创建一个商家账户,此账户将用于测试您的集成。
输入所需信息后,您将被引导到一个新页面,在那里您将获得clientID和clientSecret,这对使用MoncashEasy非常有用。
使用
在项目源目录(src/)中的一个文件中:使用从Moncash网站创建商家账户后获得的 $clientId
和 $clientSecret
实例化 MoncashAPI 对象,第三个参数 $debug
指定环境,默认为 true
,在生产模式下将其设置为 false
。
use MoncashEasy\SDK\MoncashAPI; $clientId = "<votre client id>"; $clientSecret = "<votre client secret>"; $moncash = new MoncashAPI($clientId, $clientSecret);
要执行支付,请使用 PaymentRequest 对象,它将为您提供一种方法,让用户通过链接跳转到Moncash网站以完成支付流程
<?php //Effectuer un paiement $orderId = 93;//Une identification unique pour le paiement $amount = 120;//Le montant du paiement $payReq = $moncash->makePaymentRequest($orderId, $amount); ?> <p> <a href='<?= $payReq->getRedirect(); ?>'> <img src='<?= $moncash->btnPay(); ?>' width="120px" height="50px"> </a> </p>
使用 MoncashAPI 对象的 btnPay('fr')
或 btnPay('kr')
方法显示Moncash按钮,分别用于法语和克里奥尔语,不带参数时显示英文版本
支付流程完成后,您可以从 PaymentDetails 对象中获取信息
$payDetails = $moncash->getDetailsByOrderId(93); echo "Date de la transaction : ".Date("d/m/Y", $payDetails->getTimestamp()/1000)."<br/>"; echo "Reference : ".$payDetails->getPayment()->getReference()."<br/>"; echo "No Transaction : ".$payDetails->getPayment()->getTransactionId()."<br/>"; echo "Prix : ".$payDetails->getPayment()->getCost()."<br/>"; echo "Message : ".$payDetails->getPayment()->getMessage()."<br/>"; echo "Numéro tél : ".$payDetails->getPayment()->getPayer()."<br/>";
注意:您也可以使用 MoncashAPI 对象的 getDetailsByTransactionId($transaction_id)
方法通过 transactionId 参数从API返回的url中获取支付详情
某些操作可能会触发异常,尤其是在提供的数据出现错误时,使用MoncashEasy可以捕获这些异常
try { $moncash = new MoncashAPI($id, $secret); //Les opérations qui s'en suivent } catch(MoncashEasy\SDK\MoncashException $e) { echo "Erreur : ".$e->getMessage(); }
如果您需要更换账户,不需要重新实例化 $moncash
对象,您只需使用 setCredentials($id, $secret)
方法为对象分配新的标识符即可
try { $moncash = new MoncashAPI($id, $secret); //Les opérations qui s'en suivent $newId = "<nouveau client id>"; $newSecret = "<nouveau client secret>"; $moncash->setCredentials($newId, $newSecret); var_dump($moncash); } catch(MoncashEasy\SDK\MoncashException $e) { echo "Erreur : ".$e->getMessage(); }
其他信息
对于所有建议或遇到的问题,请联系 schneiderchery7@gmail.com
所有改进和功能添加都受欢迎。