foris-master / mtn-mobile-money-sdk
这是一个用于MTN运营商移动货币API的PHP SDK。
Requires
- php: >=5.3.0|^7.4 | ^8.0.2
- ext-json: *
- guzzlehttp/guzzle: ^6.3
Requires (Dev)
- phpunit/phpunit: ^9
This package is not auto-updated.
Last update: 2024-09-20 20:56:57 UTC
README
MTN MNO移动货币API的PHP SDK
注意: mtn-mobile-money-sdk
.
这是一个用于mtn运营商移动货币API的PHP SDK。
安装
通过Composer
$ composer require foris-master/mtn-mobile-money-sdk
全局配置
-
MOMO_CURRENCY
设置货币值值
: EUR -
MOMO_SDK_ENV
配置SDK环境的值值
: sandbox或prod -
MOMO_ENV
变量以指定应用程序环境值
: mtncameroon -
MOMO_CALLBACK_HOST
设置MTN API通知的回调主机值
: https://example.com -
MOMO_CALLBACK_URL
MTN API通知的回调URL值
: https://myawesome.callback.com -
环境变量(如果使用dotenv,则为 .env 文件)
快速使用
use Foris\MoMoSdk\Disbursement; use Foris\MoMoSdk\Collection; putenv('MOMO_CALLBACK_URL=https://myawesome.callback.com'); putenv('MOMO_CALLBACK_HOST=azz.com'); putenv('MOMO_ENV=mtncameroon'); putenv('MOMO_SDK_ENV=prod'); putenv('MOMO_CURRENCY=XAF'); Exemple Disbursement $disbursement = new Disbursement(); $disbursement->getAccessToken(); $disbursement->transfer(100, '0123456789'); $transferData = $disbursement->transfer(100, '0123456789'); $transactionData = $disbursement->getTransaction('transaction_id'); $balance = $disbursement->getBalance(); $accountValidation = $disbursement->isAccountValid('0123456789'); Exemple Collection $collection = new Collection(); $collection->getAccessToken(); $collection->requestToPay(100, '0123456789'); $collection-> getTransaction($id); $collection->getBalance(); $collection->isAccountValid("0123456789")
配置发放
发放用于从提供商账户向客户转账资金 了解更多关于Momo发放的信息。
MOMO_DISBURSEMENT_PRIMARY_KEY
在开发者门户上的发放产品主键值
: 您的主键MOMO_DISBURSEMENT_API_USER
发放API的用户值
: 您的应用用户MOMO_DISBURSEMENT_APP_KEY
发放产品的应用程序密钥值
: 您的应用密钥
发放使用
- 获取令牌
getAccessToken()
此方法允许您获取访问令牌以执行发放操作。
use Foris\MoMoSdk\Disbursement; $disbursement = new Disbursement(); $accessToken = $disbursement->getAccessToken();
- 转账
transfer($amount, $tel, $options = array())
此方法允许您进行资金转账。
use Foris\MoMoSdk\Disbursement; $disbursement = new Disbursement(); $transferData = $disbursement->transfer(100, '0123456789');
- 获取交易
getTransaction('transaction_id')
此方法允许您检索发放交易的详细信息。
use Foris\MoMoSdk\Disbursement; $disbursement = new Disbursement(); $transactionData = $disbursement->getTransaction('transaction_id');
- 获取余额
getBalance()
此方法允许您获取发放账户的余额。
use Foris\MoMoSdk\Disbursement; $disbursement = new Disbursement(); $balance = $disbursement->getBalance();
- 检查账户有效性
isAccountValid('0123456789')
此方法允许您检查电话号码是否与有效账户相关联。
use Foris\MoMoSdk\Disbursement; $disbursement = new Disbursement(); $accountValidation = $disbursement->isAccountValid('0123456789');
配置收集
收集用于请求客户付款并检查交易状态 了解更多关于Momo收集的信息。
MOMO_COLLECTION_PRIMARY_KEY
在开发者门户上的收集产品主键值
: 您的主键MOMO_COLLECTION_API_USER
收集API的用户值
: 您的应用用户MOMO_COLLECTION_APP_KEY
收集产品的应用程序密钥值
: 您的应用密钥
收集使用
收集用于请求客户付款并检查交易状态。
- 获取令牌
getAccessToken()
此方法允许您获取访问令牌以执行收集操作。
use Foris\MoMoSdk\Collection; $collection = new Collection(); $accessToken = $collection->getAccessToken();
- 请求付款
requestToPay(100, '0123456789')
此方法启动对指定电话号码的特定金额的付款请求
use Foris\MoMoSdk\CollectionCollection; $collection = new CollectionCollection(); $requesPay = $collection->requestToPay(100, '0123456789');
- 获取交易
getTransaction($id)
此方法允许您检索交易的详细信息。
use Foris\MoMoSdk\CollectionCollection; $collection = new CollectionCollection(); $showTransaction = $collection->getTransaction($id);
- 获取余额
getBalance()
获取收集账户的余额
use Foris\MoMoSdk\CollectionCollection; $collection = new CollectionCollection(); $balance = $collection->getBalance();
- 检查账户有效性
isAccountValid()
检查给定的电话号码是否与有效的收集账户相关联
use Foris\MoMoSdk\Collection; $collection = new Collection(); $accountValidation = $collection->isAccountValid('0123456789');
注意
状态可以取以下值之一:INITIATED;PENDING;EXPIRED;SUCCESS;FAILED
- INITIATED 等待用户输入
- 待处理:用户已点击“确认”,交易正在Mtn侧进行
- 已过期:用户点击“确认”太晚(在令牌有效期之后)
- 成功:付款已完成
- 失败:付款失败
生产
For production your need to set your target country code in COUNTRY enviroment variable ( .env file if using dotenv)
example: COUNTRY = mtncameroon
测试
$ vendor/bin/phpunit
贡献
请参阅贡献指南以获取详细信息。
致谢
许可证
MIT许可证(MIT)。请参阅许可证文件以获取更多信息。