wanzoou / momoapicollection
此存储库提供了一个PHP类,MomoAPI,以方便与MTN Mobile Money (MoMo) API进行集成,用于收款服务。该类允许您创建API用户、生成API密钥、获取访问令牌并向MTN MoMo平台发送支付请求。
v0.0.1
2024-06-19 10:03 UTC
Requires
- php: >=7.0
- ext-curl: *
README
简介
此存储库提供了一个PHP类,MomoAPI
,以方便与MTN Mobile Money (MoMo) API进行集成,用于收款服务。该类允许您创建API用户、生成API密钥、获取访问令牌并向MTN MoMo平台发送支付请求。
特性
- 创建API用户:自动为MTN MoMo集成创建API用户。
- 生成API密钥:安全地为创建的API用户生成API密钥。
- 获取访问令牌:生成用于授权的访问令牌。
- 请求支付:向MoMo API发起支付请求。
- 检查交易状态:检索支付请求的状态。
要求
PHP 7.0
或更高版本cURL
扩展
安装
您可以通过Composer安装此库。运行以下命令
composer require wanzoou/momoapicollection
在您的项目中包含MomoAPI
类
require_once 'vendor/autoload.php'; use Wanzoou\Momoapicollection\MomoAPI;
用法
初始化
实例化MomoAPI类
$momo = new MomoAPI();
配置
设置所需参数
$momo->setMomoPayHost('sandbox.momodeveloper.mtn.com'); // Set MoMo API host $momo->setPrimaryKey('your_primary_key'); // Set your primary key $momo->setProviderCallbackHost('your_callback_host'); // Set your provider callback host $momo->setTargetEnvironment('sandbox'); // Set the target environment (sandbox or live)
请求支付
发起支付请求
$phone = '237679465319'; // Payer's phone number $amount = 100; // Amount to be paid $currency = 'EUR'; // Currency $responseCode = $momo->requestToPay($phone, $amount, $currency); if ($responseCode == 202) { echo "Payment request initiated successfully."; } else { echo "Failed to initiate payment request."; }
检查交易状态
检索支付请求的状态
$status = $momo->requestToPayTransactionStatus(); echo "Transaction Status: " . json_encode($status);
方法
setMomoPayHost($momo_pay_host)
设置MoMo API主机。
setProviderCallbackHost($providerCallbackHost)
设置提供者回调主机。
setPrimaryKey($primary_key)
设置主密钥。
setTargetEnvironment($targetEnvironment)
设置目标环境(沙盒或生产)。
requestToPay($phone, $amount, $currency)
发起支付请求。
requestToPayTransactionStatus()
检索支付请求的状态。
示例
以下是在PHP脚本中使用MomoAPI类的一个示例
<?php require_once 'vendor/autoload.php'; use Wanzoou\Momoapicollection\MomoAPI; $momo = new MomoAPI(); $momo->setMomoPayHost('sandbox.momodeveloper.mtn.com'); $momo->setPrimaryKey('your_primary_key'); $momo->setProviderCallbackHost('your_callback_host'); $momo->setTargetEnvironment('sandbox'); $phone = '237679465319'; $amount = 100; $currency = 'EUR'; $responseCode = $momo->requestToPay($phone, $amount, $currency); if ($responseCode == 202) { echo "Payment request initiated successfully.\n"; $status = $momo->requestToPayTransactionStatus(); echo "Transaction Status: " . json_encode($status); } else { echo "Failed to initiate payment request.\n"; } ?>
许可
本项目采用MIT许可证 - 有关详细信息,请参阅LICENSE文件。
贡献
欢迎贡献!请为任何更改打开问题或提交拉取请求。
联系方式
如有任何疑问,请联系wanzoou@gmail.com。