ivalrivall / laravel-bca
用于开发 BCA 支付的 REST API 库
Requires
- php: >=5.4
- ext-curl: *
- graham-campbell/manager: ^2.4 || ^3.0 || ^4.0
- illuminate/contracts: 5.2.x|5.3.x|5.4.x|5.5.x|5.6.x|5.7.x|5.8.x|^6.0
- illuminate/support: 5.2.x|5.3.x|5.4.x|5.5.x|5.6.x|5.7.x|5.8.x|^6.0
- odenktools/php-bca: 2.*
Requires (Dev)
- graham-campbell/testbench: ^3.2 || ^4.0 || ^5.0
- mockery/mockery: ^0.9.5 || ~1.0
- phpunit/phpunit: ^4.8.35 || ^5.7 || ^6.0 || ^7.0
README
Laravel BCA (Bank Central Asia)
Laravel PHP 库,用于将您的应用程序与 BCA (Bank Central Asia) 系统集成。有关更详细和完整的文档,请访问其官方网站 Developer BCA
此库支持 PHP
- PHP 5.5.x
- PHP 5.6.x
- PHP 7.0.x
- PHP 7.1.x
- PHP 7.2.x
- PHP 7.3.x
此库支持 Laravel
- Laravel 5.2.x
- Laravel 5.3.x
- Laravel 5.4.x
- Laravel 5.5.x
- Laravel 5.6.x
- Laravel 5.7.x
- Laravel 5.8.x
- Laravel 6.x
如果您觉得这个库很有用,请不要忘记在这个仓库上给予 STAR。快乐编码!
库功能
此 Laravel PHP 库的所有功能、方法和属性都与 Odenktools PHP BCA 相同。
安装
composer require odenktools/laravel-bca
设置
安装后,在 Laravel 的 providers 中添加 BcaServiceProvider。配置位于 config/app.php
'providers' => [ // blahh.. blahhh.. Odenktools\Bca\BcaServiceProvider::class, ]
然后,在 Laravel 的 aliases 数组中添加 Facade Bca。配置位于 config/app.php
'aliases' => [ // blahh.. blahhh.. 'Bca' => Odenktools\Bca\Facades\Bca::class, ]
发布库使用的配置
php artisan vendor:publish --provider="Odenktools\Bca\BcaServiceProvider"
composer dumpautoload
配置连接和设置
配置 config/Bca.php 的 Papda,请输入符合您需求的 Environment。请确保 CORP_ID, CLIENT_KEY, CLIENT_SECRET, APIKEY, SECRETKEY 已知。
'main' => [ 'corp_id' => 'your-corp_id', 'client_id' => 'your-client_id', 'client_secret' => 'your-client_secret', 'api_key' => 'your-api_key', 'secret_key' => 'your-secret_key', 'timezone' => 'Asia/Jakarta', 'host' => 'sandbox.bca.co.id', 'scheme' => 'https', 'development' => true, 'options' => [], 'port' => 443, 'timeout' => 30, ],
登录
// Request Login dan dapatkan nilai OAUTH $response = \Bca::httpAuth(); // LIHAT HASIL OUTPUT echo json_encode($response);
登录成功后,请确保您将 TOKEN 存储在安全的地方,因为此 TOKEN 将用于后续任务。
账户余额信息
请确保您已获取 TOKEN 且该 TOKEN 仍然有效(未过期)。
// Nilai token yang dihasilkan saat login $token = "MvXPqa5bQs5U09Bbn8uejBE79BjI3NNCwXrtMnjdu52heeZmw9oXgB"; //Nomor akun yang akan di ambil informasi saldonya, menggunakan ARRAY $arrayAccNumber = array('0201245680', '0063001004', '1111111111'); $response = \Bca::getBalanceInfo($token, $arrayAccNumber); // LIHAT HASIL OUTPUT echo json_encode($response);
资金转账
请确保您已获取 TOKEN 且该 TOKEN 仍然有效(未过期)。
// Nilai token yang dihasilkan saat login $token = "MvXPqa5bQs5U09Bbn8uejBE79BjI3NNCwXrtMnjdu52heeZmw9oXgB"; $amount = '50000.00'; // Nilai akun bank anda $nomorakun = '0201245680'; // Nilai akun bank yang akan ditransfer $nomordestinasi = '0201245681'; // Nomor PO, silahkan sesuaikan $nomorPO = '12345/PO/2017'; // Nomor Transaksi anda, Silahkan generate sesuai kebutuhan anda $nomorTransaksiID = '00000001'; $response = \Bca::fundTransfers($token, $amount, $nomorakun, $nomordestinasi, $nomorPO, 'Testing Saja Ko', 'Online Saja Ko', $nomorTransaksiID); echo json_encode($response);
账户交易明细
请确保您已获取 TOKEN 且该 TOKEN 仍然有效(未过期)。
// Nilai token yang dihasilkan saat login $token = "MvXPqa5bQs5U09Bbn8uejBE79BjI3NNCwXrtMnjdu52heeZmw9oXgB"; // Nilai akun bank anda $nomorakun = '0201245680'; // Tanggal start transaksi anda $startdate = '2016-08-29'; // Tanggal akhir transaksi anda $enddate = '2016-09-01'; $response = \Bca::getAccountStatement($token, $nomorakun, $startdate, $enddate); echo json_encode($response);
外汇汇率
//Tipe rate : bn, e-rate, tt, tc $rateType = 'e-rate'; $mataUang = 'usd'; $response = \Bca::getForexRate($token, $rateType, $mataUang); echo json_encode($response);
最近 ATM 定位器
$latitude = '-6.1900718'; $longitude = '106.797190'; $totalAtmShow = '10'; $radius = '20'; $response = \Bca::getAtmLocation($token, $latitude, $longitude, $totalAtmShow, $radius); echo json_encode($response);
存款利率
请确保您已获取 TOKEN 且该 TOKEN 仍然有效(未过期)。
// Nilai token yang dihasilkan saat login $token = "MvXPqa5bQs5U09Bbn8uejBE79BjI3NNCwXrtMnjdu52heeZmw9oXgB"; $response = \Bca::getDepositRate($token); echo json_encode($response);
生成签名
当用于测试时。
$secret = "NILAI-SECRET-ANDA"; // Nilai token yang dihasilkan saat login $token = "MvXPqa5bQs5U09Bbn8uejBE79BjI3NNCwXrtMnjdu52heeZmw9oXgB"; $uriSign = "GET:/general/info-bca/atm"; //Format timestamp harus dalam ISO8601 format (yyyy-MM-ddTHH:mm:ss.SSSTZD) $isoTime = "2016-02-03T10:00:00.000+07:00"; $bodyData = array(); //nilai body anda disini $bodyData['a'] = "BLAAA-BLLLAA"; $bodyData['b'] = "BLEHH-BLLLAA"; //ketentuan BCA array harus disort terlebih dahulu ksort($bodyData); $authSignature = \Bca::generateSign($uriSign, $token, $secret, $isoTime, $bodyData); echo $authSignature;
测试
使用 Composer
composer run-script test:ci
使用 PHPUnit
vendor/bin/phpunit --verbose --coverage-text
如何贡献
在此存储库上进行 Fork。
通过以下方式创建 feature 分支
git checkout -b my-new-feature
修改您的存储库。完成后进行 commit。
git commit -am 'Menambahkan fitur xxx'
将更改 Push 到创建的 branch 上
git push origin my-new-feature
向此存储库发出 pull request,完成。
指南
- 遵循 PSR-2 编码风格指南
- 确保所有测试都已通过。如果您添加了新功能,则必须为该功能创建相关单元测试。
- 使用 rebase 以避免冲突和合并代码
- 如果您添加了功能,可能还需要更新此存储库中的文档页面。
许可
MIT 许可证
版权所有 (c) 2017 odenktools
特此授予任何获得本软件及其相关文档文件(以下简称“软件”)副本的人士,免费使用软件的权利,不受限制地处理软件,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或出售软件副本,并允许获得软件的人士进行此类操作,但须遵守以下条件:
上述版权声明和本许可声明应包含在软件的所有副本或主要部分中。
软件按“原样”提供,不提供任何形式的质量保证,无论是明示的还是隐含的,包括但不限于适销性、适用于特定目的和非侵权性保证。在任何情况下,作者或版权所有者均不对任何索赔、损害或其他责任承担责任,无论是在合同、侵权或其他情况下,这些责任源自、产生于或与软件的使用或其他操作有关。