bennito254 / co-opconnect
Co-op Bank API 的包装器
v0.0.1
2020-04-06 15:11 UTC
Requires
- php: >=7.1.0
- ext-json: *
- guzzlehttp/guzzle: ^6.5
This package is auto-updated.
Last update: 2024-09-07 00:17:26 UTC
README
PHP包装器,用于Co-op Bank API,仅针对沙盒环境,请访问 https://developer.co-opbank.co.ke:9443/store。
即将推出对生产API的支持!
安装
composer require bennito254/co-opconnect
设置
使用消费者密钥、消费者密钥和产品环境作为参数初始化银行类
$bank = \Bennito254\CoopBank\Bank($consumerKey, $consumerSecret, $env = 'sandbox'); //or live
使用方法
账户信息
账户余额
$accountNumber = "36001873000";
$messageReference = "Randomstr1ng";
$balance = $bank->account()->balance($accountNumber, $messageReference);
汇率
$messageReference = "Randomstr1ng";
$fromCurrency = "KES";
$toCurrency = "USD";
$rate = $bank->account()->exchangeRate($messageReference, $fromCurrency, $toCurrency);
账户号码验证
$messageReference = "Randomstr1ng";
$accountNumberToCheck = "36001873000";
$rate = $bank->account()->validation($messageReference, $accountNumberToCheck);
发送金钱
发送至M-Pesa
$mpesa_destination = [
'ReferenceNumber' => 'Rand0mStrseing',
'MobileNumber' => "0716483805",
'Amount' => 10,
'Narration' => 'Awesome sendoff'
];
$response = $bank->sendMoney()->sendToMpesa('36001873000', 'newRandomString', 'https://dev.bennito254.com/cb.php', 'KES', 10, $mpesa_destination, 'Send to Bennito');
通过PesaLink发送
$pesalink_destination = [
'ReferenceNumber' => 'Rand0mStringss',
'AccountNumber' => "54321987654321",
'BankCode' => "11",
'Amount' => 10,
'TransactionCurrency' => 'KES',
'Narration' => 'Awesome sendoff'
];
$response = $bank->sendMoney()->pesalinkSendToAccount('36001873000', 'newRandomString', 'https://dev.bennito254.com/cb.php', 'KES', 10, $pesalink_destination, 'Send to Bennito');
发送到另一个账户
$account_destination = [
'ReferenceNumber' => 'Rand0mStringasss',
'AccountNumber' => "54321987654321",
'Amount' => 10,
'TransactionCurrency' => 'KES',
'Narration' => 'Awesome sendoff'
];
$response = $bank->sendMoney()->accountToAccount('36001873000', 'benniastweo23', 'https://dev.bennito254.com/cb.php', 'KES', 10, $account_destination, 'Send to Bennito');
模拟交易
$simulation = [
'MessageReference' => 'jkgasjkfgsaf',
'MessageDateTime' => '2020-04-06T10:19:07.100Z',
'ServiceName' => '',
'NotificationCode' => '',
'PaymentRef' => 'REF000012323',
'AccountNumber' => '823547857835434',
'Amount' => "12000.00",
'TransactionDate' => '20190301165420',
'EventType' => 'DEBIT',
'Currency' => 'KES',
'ExchangeRate' => '1',
'Narration' => 'Supplier payments',
'CustMemo' => [
'CustMemoLine1' => '785347855 75',
'CustMemoLine2' => '',
'CustMemoLine3' => ''
],
'ValueDate' => '20190301',
'EntryDate' => '20190301',
'TransactionId' => '8963478382745'
];
$response = $bank->sendMoney()->INSSimulation($simulation);
账户报表
迷你报表
$accountNumber = '36001873000';
$messageReference = 'randomString';
$bank->statements()->miniStatement($accountNumber, $messageReference);
完整报表
$accountNumber = '36001873000';
$messageReference = 'randomString';
$startDate = "2020-03-01";
$endDate = "2020-04-01";
$bank->statements()->miniStatement($accountNumber, $messageReference, $startDate, $endDate);
交易
最新交易
$accountNumber = '36001873000';
$messageReference = 'randomString';
$numberOfTransactions = "10";
$bank->transactions()->accountTransactions($accountNumber, $messageReference, $numberOfTransactions);
交易状态
$messageReference = 'ExistingRandomString';
$bank->transactions()->transactionStatus($messageReference);
许可证
MIT许可证