javaabu/bml-connect-laravel

BML Connect PHP SDK 的 Laravel 封装

v0.5.0 2024-04-14 10:14 UTC

This package is auto-updated.

Last update: 2024-09-08 09:35:01 UTC


README

Latest Version on Packagist Build Status Quality Score Total Downloads

Laravel 封装BML Connect PHP SDK

安装

您可以通过 composer 安装此包

composer require javaabu/bml-connect-laravel

Laravel 5.5 使用包自动发现,因此不需要您手动添加 ServiceProvider/Facade。

更新 composer 后,将 ServiceProvider 添加到 config/app.php 中的 providers 数组

Javaabu\BmlConnect\Providers\BmlConnectServiceProvider::class;

您可以选择使用 Facade 以缩短代码。将以下内容添加到您的 facades 中

'BMLConnect' => Javaabu\BmlConnect\Facades\BmlConnectFacade::class;

设置 BML Connect 凭据

将您的 BML Connect API 密钥和 APP ID 添加到 config/services.php。您可以从(官方 BML Connect 文档)[https://github.com/bankofmaldives/bml-connect#authentication] 中了解如何生成 API 密钥。

// config/services.php
...
'bml_connect' => [
    'api_key' => env('BML_CONNECT_API_KEY'), // API Key 
    'app_id' => env('BML_CONNECT_APP_ID'), // App ID
    'mode' => env('BML_CONNECT_MODE', 'production'), // Can either be production or sandbox
    // 'client_options' => [], // any additional options you want to pass to the GuzzleHttp client                           
],
...

使用方法

使用 App 容器

$bml_connect = App::make('bml-connect');

$json = [
 "provider" => "alipay", // Payment method enabled for your merchant account such as bcmc, alipay, card
 "currency" => "MVR",
 "amount" => 1000, // 10.00 MVR
 "redirectUrl" => "https://foo.bar/order/123" // Optional redirect after payment completion
];

$transaction = $bml_connect->createTransaction($json);

使用 Facade

$json = [
 "provider" => "alipay", // Payment method enabled for your merchant account such as bcmc, alipay, card
 "currency" => "MVR",
 "amount" => 1000, // 10.00 MVR
 "redirectUrl" => "https://foo.bar/order/123" // Optional redirect after payment completion
];

$bml_connect = BMLConnect::createTransaction($json);

可用方法

BMLConnect::createTransaction($json);
BMLConnect::listTransactions($params = []);
BMLConnect::getTransaction($id);
BMLConnect::cancelTransactionUrl($id);
BMLConnect::cancelTransaction($id);
BMLConnect::makeSignature($amount, $currency, $method = 'sha1');

测试

composer test

变更日志

请参阅CHANGELOG 了解最近更改的详细信息。

贡献

请参阅CONTRIBUTING 了解详细信息。

安全

如果您发现任何与安全相关的问题,请通过info@javaabu.com 发送电子邮件,而不是使用问题跟踪器。

鸣谢

许可协议

MIT 许可协议(MIT)。请参阅许可文件了解更多信息。