Skip to content

Latest commit

 

History

History
117 lines (80 loc) · 3.36 KB

README.md

File metadata and controls

117 lines (80 loc) · 3.36 KB

BML Connect Laravel

Latest Version on Packagist Test Status Code Coverage Badge Total Downloads

Laravel wrapper for BML Connect PHP SDK.

Installation

You can install the package via composer:

composer require javaabu/bml-connect-laravel

Laravel 5.5 uses Package Auto-Discovery, so doesn't require you to manually add the ServiceProvider/Facade.

After updating composer, add the ServiceProvider to the providers array in config/app.php

Javaabu\BmlConnect\Providers\BmlConnectServiceProvider::class;

Optionally you can use the Facade for shorter code. Add this to your facades:

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

Setting up the BML Connect credentials

Add your BML Connect API Key and APP ID to your config/services.php. You can refer to how to generate the API Keys from the (Official BML Connect Documentation)[https://github.com/bankofmaldives/bml-connect#authentication].

// 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                           
],
...

Usage

Using the App container:

$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);

Using the 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);

Available Methods

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

Testing

composer test

Changelog

Please see CHANGELOG for more information what has changed recently.

Contributing

Please see CONTRIBUTING for details.

Security

If you discover any security related issues, please email [email protected] instead of using the issue tracker.

Credits

License

The MIT License (MIT). Please see License File for more information.