delakanda / mazzuma
Laravel 的 Mazzuma API 包装器
Requires
- php: >=5.5.0
- guzzlehttp/guzzle: ^6.0.0
- illuminate/support: ^7.0
Requires (Dev)
- mockery/mockery: 1.3.x-dev
- phpunit/phpunit: ^8.0
This package is auto-updated.
Last update: 2024-09-16 22:20:36 UTC
README
Mazzuma API 的 Laravel 首选集成。它也可以与其它 PHP 库以及纯 PHP 一起使用。
它提供了一个易于使用的接口,满足您所有 Mazzuma API 需求。
如何安装
安装非常简单,只需运行
$ composer require delakanda/mazzuma
对于 Laravel 用户
服务提供者设置
注意:如果您使用的是版本大于 '5.5' 的 Laravel,可以跳过此步骤
将以下内容添加到您的 'config/app.php' 文件中的 'providers' 数组部分
Delakanda\Mazzuma\MazzumaServiceProvider::class,
设置外观
注意:如果您使用的是版本大于 '5.5' 的 Laravel,可以跳过此步骤
将 Mazzuma 外观添加到您的 'config/app.php' 文件中的 'aliases' 数组部分
'Mazzuma' => Delakanda\Mazzuma\Facades\Mazzuma::class,
添加环境变量到您的 .env 文件
将以下内容添加到您的 .env 文件
MAZZUMA_API_KEY=xxxxxxxxxxxxx
使用方法
Mazzuma 移动货币
要执行移动货币交易,简单地将 Mazzuma 实例“make”出来,并在实例上调用 "mobileMoney()" 函数。这将返回一个移动货币实例,您可以在执行交易调用之前设置适当的属性。
使用方法如下
对于 Laravel 用户
<?php use Delakanda\Mazzuma\Mazzuma; $mobileMoney = Mazzuma::make()->mobileMoney() ->price(200) ->network("mtn") ->recipientNumber("0244000000") ->sender("0245000000") ->option("rmtm") ->orderId("10000010") // Optional ->token("200394903"); // Required ONLY for VODAFONE transactions // Initiate MoMo Transaction $transactionResult = $mobileMoney->initiateTransaction(); // To Check status of the mobile money transaction $transactionStatus = $mobileMoney->checkTransactionStatus();
您还可以通过 mazzuma 外观访问 Mazzuma 对象
<?php use Delakanda\Mazzuma\Facades\Mazzuma; $mobileMoney = Mazzuma::mobileMoney() ->price(200) ->network("mtn") ->recipientNumber("0244000000") ->sender("0245000000") ->option("rmtm") ->orderId("10000010") // Optional ->token("200394903"); // Required ONLY for VODAFONE transactions // Initiate MoMo Transaction $transactionResult = $mobileMoney->initiateTransaction(); // To Check status of the mobile money transaction $transactionStatus = $mobileMoney->checkTransactionStatus();
对于纯 PHP 和其他框架
<?php // Required for vanilla PHP, Laravel and other frameworks may handle this already require_once __DIR__ . '/vendor/autoload.php'; use Delakanda\Mazzuma\Config\Config; use Delakanda\Mazzuma\Mazzuma; $apiKey = 'xxxxxxxxx'; $configuration = new Config($apiKey); $mobileMoney = Mazzuma::make($configuration)->mobileMoney() ->price(200) ->network("mtn") ->recipientNumber("0244000000") ->sender("0245000000") ->option("rmtm") ->orderId("10000010") // Optional ->token("200394903"); // Required ONLY for VODAFONE transactions // Initiate MoMo Transaction $transactionResult = $mobileMoney->initiateTransaction(); // To Check status of the mobile money transaction $transactionStatus = $mobileMoney->checkTransactionStatus();
注意:上述代码的响应是 JSON 格式,包含从 Mazzuma API 收到的适当的 HTTP 状态码
MAZ Token API
要执行 MAZ Token API 交易,过程与移动货币示例非常相似。只需将 Mazzuma 实例“make”出来,并在实例上调用 "mazzumaToken() 函数。
以下是一个使用示例
发送 Mazzuma 代币
<?php use Delakanda\Mazzuma\Mazzuma; $sendMazzumaToken = Mazzuma::make()->mazzumaToken() ->price(200) // The amount to be sent ->recipient('delakanda') // This is the unique username of the recipient of the transaction. ->sender('dkanda') // This is the unique username of the sender of the transaction. ->sendToken();
接收 Mazzuma 代币
<?php use Delakanda\Mazzuma\Mazzuma; $receiveMazzumaToken = Mazzuma::make()->mazzumaToken() ->sender('delakanda') // The account making the payment ->callback_url('https://your-callback-url.com/path') // Your callback URL ->receiveToken();
检查交易状态
<?php use Delakanda\Mazzuma\Mazzuma; $transactionStatus = Mazzuma::make()->mazzumaToken() ->transactionHash('d5b3ea3a7565383d6124f5ba1eeec0be') // The hash of the transaction you want to check. ->checkTransactionStatus();
获取账户余额
<?php use Delakanda\Mazzuma\Mazzuma; $accountBalance = Mazzuma::make()->mazzumaToken() ->getAccountBalance();
验证账户
<?php use Delakanda\Mazzuma\Mazzuma; $accountValidationStatus = Mazzuma::make()->mazzumaToken() ->username("delakanda") ->validateAccount();
注意:对于上面的 Mazzuma token API 示例,如果您不使用 Laravel,必须创建一个 config 实例,并将其传递给 Mazzuma 类的 "make" 函数。请参阅移动货币部分的使用示例。