fannypack / momo
该包最新版本(1.01)没有提供许可证信息。
MTN MOMO API 实现
1.01
2019-12-09 13:15 UTC
Requires
- guzzlehttp/guzzle: ^6.3
- ramsey/uuid: ^3.8
This package is auto-updated.
Last update: 2024-09-10 00:07:20 UTC
README
Momo 是一个简单的 PHP 库,用于 MTN 移动货币开放 API。
产品支持
- 收藏
- 支付
- 汇款
入门指南
- 注册账户
- 订阅产品
注册账户
点击此链接访问开发者门户并 注册 账户。
订阅产品
在开发者门户的 产品 页面上,您应该可以看到可以订阅的项目
- 收藏
- 支付
- 汇款
安装
建议通过 composer 安装 Momo。
只需为您的项目创建一个 composer.json 文件并要求它
composer require fannypack/momo
现在您可以添加自动加载器,并将能够访问库
<?php require 'vendor/autoload.php';
使用方法
创建产品实例
<?php use FannyPack\Momo\Products\Collection; use FannyPack\Momo\Products\Disbursement; use FannyPack\Momo\Products\Remittance; $options = [ // 'callbackHost' => '', //(optional) default is https://:8000 // 'callbackUrl' => '', //(optional) default is https://:8000/callback // 'environment' => '', //(optional) default is sandbox // 'accountHolderIdType' => '', //(optional) default is msisdn 'subscriptionKey' => '', //Product Subscription key 'xReferenceId' => '', //Api user reference id (in UUID format) 'apiKey' => '', // Api user key (Supply this after generating it at 'Create API Key') //'preApproval' => '', //(optional) default is false //'accessToken' => '' //Required for transactions ]; // Using collection $collection = Collection::create($options); // Using disbursement $disbursement = Disbursement::create($options); // Using remittance $remittance = Remittance::create($options);
沙盒用户配置
创建 API 用户
<?php use FannyPack\Momo\Products\Collection; use FannyPack\Momo\Products\Disbursement; use FannyPack\Momo\Products\Remittance; // Using collection $product = Collection::create($options); // Using disbursement $product = Disbursement::create($options); // Using remittance $product = Remittance::create($options); $product->createApiUser(); //{"statusCode": 201}
获取 API 用户详细信息
<?php use FannyPack\Momo\Products\Collection; use FannyPack\Momo\Products\Disbursement; use FannyPack\Momo\Products\Remittance; // Using collection $product = Collection::create($options); // Using disbursement $product = Disbursement::create($options); // Using remittance $product = Remittance::create($options); $apiUser = $product->getApiUser(); $apiUser->getProviderCallbackHost(); //https://:8000 $apiUser->getTargetEnvironment(); //sandbox
创建 API 密钥
<?php use FannyPack\Momo\Products\Collection; use FannyPack\Momo\Products\Disbursement; use FannyPack\Momo\Products\Remittance; // Using collection $product = Collection::create($options); // Using disbursement $product = Disbursement::create($options); // Using remittance $product = Remittance::create($options); $apiKey = $product->createApiKey(); $apiKey->getApiKey(); //apiKey
Oauth 2.0
获取令牌
<?php use FannyPack\Momo\Products\Collection; use FannyPack\Momo\Products\Disbursement; use FannyPack\Momo\Products\Remittance; // Using collection $product = Collection::create($options); // Using disbursement $product = Disbursement::create($options); // Using remittance $product = Remittance::create($options); $token = $product->getToken(); $token->getAccessToken(); //accessToken $token->getTokenType(); //tokenType $token->getExpiresIn(); //expiry in seconds
交易
获取账户余额
<?php use FannyPack\Momo\Products\Collection; use FannyPack\Momo\Products\Disbursement; use FannyPack\Momo\Products\Remittance; // Using collection $product = Collection::create($options); // Using disbursement $product = Disbursement::create($options); // Using remittance $product = Remittance::create($options); $balance = $product->getAccountBalance(); $balance->getAvailableBalance(); //accountBalance $balance->getCurrency(); //currency
获取账户持有者状态
<?php use FannyPack\Momo\Products\Collection; use FannyPack\Momo\Products\Disbursement; use FannyPack\Momo\Products\Remittance; // Using collection $product = Collection::create($options); // Using disbursement $product = Disbursement::create($options); // Using remittance $product = Remittance::create($options); $product->getAccountHolderInfo($accountHolderId); //{"statusCode": 201}
收藏
支付请求
<?php use FannyPack\Momo\Products\Collection; // Using collection $product = Collection::create($options); $product->requestToPay($externalId, $partyId, $amount, $currency, $payerMessage = '', $payeeNote = ''); // {"statusCode": 200, "financialTransactionId": "8f3077a6-ce43-4584-a425-589c50cfcbe4"}
支付请求状态
<?php use FannyPack\Momo\Products\Collection; // Using collection $product = Collection::create($options); $transactionStatus = $product->getRequestToPayStatus($financialTransactionId); $transactionStatus->getAmount(); //amount $transactionStatus->getCurrency(); //currency $transactionStatus->getExternalId(); //externalId $transactionStatus->getPayer(); //payer object $transactionStatus->getStatus(); //status
支付和汇款
转账
<?php use FannyPack\Momo\Products\Disbursement; use FannyPack\Momo\Products\Remittance; // Using disbursement $product = Disbursement::create($options); // Using remittance $product = Remittance::create($options); $product->transfer($externalId, $partyId, $amount, $currency, $payerMessage = '', $payeeNote = '');// {"statusCode": 200, "financialTransactionId": "8f3077a6-ce43-4584-a425-589c50cfcbe4"}
转账状态
<?php use FannyPack\Momo\Products\Disbursement; use FannyPack\Momo\Products\Remittance; // Using disbursement $product = Disbursement::create($options); // Using remittance $product = Remittance::create($options); $transactionStatus = $product->transferStatus($financialTransactionId); $transactionStatus->getAmount(); //amount $transactionStatus->getCurrency(); //currency $transactionStatus->getExternalId(); //externalId $transactionStatus->getPayer(); //payer object $transactionStatus->getStatus(); //status
错误
对于发现的任何错误,请通过 andrewmvp007@gmail.com 发送电子邮件或注册 问题