مكتبة PHP الأصلية لدمج تطبيقك مع نظام BCA (بنك آسيا الوسطى). للحصول على وثائق أكثر وضوحًا واكتمالًا، يرجى زيارة الموقع الرسمي على Developer BCA.
بالنسبة إلى Laravel
Framework، يمكنك استخدام مكتبة Odenktools Laravel BCA.
إذا شعرت بالمساعدة من هذه المكتبة، فلا تنس أن تعطي نجمة لهذه المكتبة.
لمزيد من التفاصيل، يرجى زيارة php bca TravisCI
الحصول على معلومات الرصيد
/fire/accounts/balance
الحصول على معلومات حساب المستفيد
/fire/accounts
الحصول على حالة المعاملة
/fire/transactions
تحويل الأموال مباشرة إلى حساب المستفيد
/fire/transactions/to-account
تحويل الأموال إلى المستفيد ليتم أخذها شخصيا
/fire/transactions/cash-transfer
تعديل تفاصيل معاملة التحويل النقدي
/fire/transactions/cash-transfer/amend
إلغاء معاملة التحويل النقدي
/fire/transactions/cash-transfer/cancel
احصل على حالة الدفع عن طريق رمز الشركة ورقم العميل أو معرف الطلب
/va/payments?CompanyCode=&RequestID=
composer require " odenktools/php-bca "
قبل الدخول في مرحلة LOGIN
، تأكد من معرفة جميع المتطلبات مثل CORP_ID, CLIENT_KEY, CLIENT_SECRET, APIKEY, SECRETKEY
.
$ options = array (
' scheme ' => ' https ' ,
' port ' => 443 ,
' host ' => ' sandbox.bca.co.id ' ,
' timezone ' => ' Asia/Jakarta ' ,
' timeout ' => 30 ,
' debug ' => true ,
' development ' => true
);
// Setting default timezone Anda
Bca BcaHttp:: setTimeZone ( ' Asia/Jakarta ' );
// ATAU
// BcaBcaHttp::setTimeZone('Asia/Singapore');
$ corp_id = " BCAAPI2016 " ;
$ client_key = " NILAI-CLIENT-KEY-ANDA " ;
$ client_secret = " NILAI-CLIENT-SECRET-ANDA " ;
$ apikey = " NILAI-APIKEY-ANDA " ;
$ secret = " SECRETKEY-ANDA " ;
$ bca = new Bca BcaHttp ( $ corp_id , $ client_key , $ client_secret , $ apikey , $ secret );
// ATAU
$ bca = new Bca BcaHttp ( $ corp_id , $ client_key , $ client_secret , $ apikey , $ secret , $ options );
استخدام خيارات الضفيرة المخصصة
$ options = array (
' curl_options ' => array (
CURLOPT_SSL_VERIFYHOST => 0 ,
CURLOPT_SSLVERSION => 6 ,
CURLOPT_SSL_VERIFYPEER => false ,
CURLOPT_TIMEOUT => 60
),
' scheme ' => ' https ' ,
' port ' => 443 ,
' host ' => ' sandbox.bca.co.id ' ,
' timezone ' => ' Asia/Jakarta ' ,
' timeout ' => 30 ,
' debug ' => true ,
' development ' => true
);
// Setting default timezone Anda
Bca BcaHttp:: setTimeZone ( ' Asia/Jakarta ' );
// ATAU
// BcaBcaHttp::setTimeZone('Asia/Singapore');
$ corp_id = " BCAAPI2016 " ;
$ client_key = " NILAI-CLIENT-KEY-ANDA " ;
$ client_secret = " NILAI-CLIENT-SECRET-ANDA " ;
$ apikey = " NILAI-APIKEY-ANDA " ;
$ secret = " SECRETKEY-ANDA " ;
$ bca = new Bca BcaHttp ( $ corp_id , $ client_key , $ client_secret , $ apikey , $ secret , $ options );
$ corp_id = " CORP_ID-ANDA " ;
$ client_key = " NILAI-CLIENT-KEY-ANDA " ;
$ client_secret = " NILAI-CLIENT-SECRET-ANDA " ;
$ apikey = " NILAI-APIKEY-ANDA " ;
$ secret = " SECRETKEY-ANDA " ;
$ bca = new Bca BcaHttp ( $ corp_id , $ client_key , $ client_secret , $ apikey , $ secret );
// Request Login dan dapatkan nilai OAUTH
$ response = $ bca -> httpAuth ();
// Cek hasil response berhasil atau tidak
echo json_encode ( $ response );
بعد تسجيل الدخول بنجاح، تأكد من حفظ قيمة TOKEN
في مكان آمن، لأنه سيتم استخدام قيمة TOKEN
للمهمة التالية.
تأكد من حصولك على قيمة TOKEN
وأن TOKEN
لا يزال صالحًا (غير منتهية الصلاحية).
// Ini adalah 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 );
// Cek hasil response berhasil atau tidak
echo json_encode ( $ response );
تأكد من حصولك على قيمة TOKEN
وأن TOKEN
لا يزال صالحًا (غير منتهية الصلاحية).
// Ini adalah 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 ' ;
$ remark1 = ' Transfer Test Using Odenktools BCA ' ;
$ remark2 = ' Online Transfer Using Odenktools BCA ' ;
// value hanya support idr dan usd
$ mataUang = ' idr ' ;
$ response = $ bca -> fundTransfers ( $ token ,
$ amount ,
$ nomorakun ,
$ nomordestinasi ,
$ nomorPO ,
$ remark1 ,
$ remark2 ,
$ nomorTransaksiID ,
$ mataUang );
// Cek hasil response berhasil atau tidak
echo json_encode ( $ response );
بالنسبة remark1
البيانات 1 remark2
nomorPO
، سيتم استبدالها بأحرف lowercase
وإزالة whitespace
تأكد من حصولك على قيمة TOKEN
وأن TOKEN
لا يزال صالحًا (غير منتهية الصلاحية).
// Ini adalah 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 );
// Cek hasil response berhasil atau tidak
echo json_encode ( $ response );
//Tipe rate : bn, e-rate, tt, tc
$ rateType = ' e-rate ' ;
$ mataUang = ' usd ' ;
$ response = $ bca -> getForexRate ( $ token , $ rateType , $ mataUang );
// Cek hasil response berhasil atau tidak
echo json_encode ( $ response );
$ latitude = ' -6.1900718 ' ;
$ longitude = ' 106.797190 ' ;
$ totalAtmShow = ' 10 ' ;
$ radius = ' 20 ' ;
$ response = $ bca -> getAtmLocation ( $ token , $ latitude , $ longitude , $ totalAtmShow , $ radius );
// Cek hasil response berhasil atau tidak
echo json_encode ( $ response );
تأكد من حصولك على قيمة TOKEN
وأن TOKEN
لا يزال صالحًا (غير منتهية الصلاحية).
// Ini adalah nilai token yang dihasilkan saat login
$ token = " MvXPqa5bQs5U09Bbn8uejBE79BjI3NNCwXrtMnjdu52heeZmw9oXgB " ;
$ response = $ bca -> getDepositRate ( $ token );
// Cek hasil response berhasil atau tidak
echo json_encode ( $ response );
عندما تكون مفيدة لأغراض الاختبار.
$ secret = " NILAI-SECRET-ANDA " ;
// Ini adalah 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 BcaHttp:: generateSign ( $ uriSign , $ token , $ secret , $ isoTime , $ bodyData );
echo $ authSignature ;
لإجراء الاختبار، قم بتنفيذ command
التالي
composer run-script test
أو استخدم PHPUnit
vendor/bin/phpunit --verbose --coverage-text
للحصول على مثال لسطر الأوامر:
git remote add fork [email protected]: $USER /php-bca.git # Tambahkan fork pada remote, $USER adalah username GitHub anda
على سبيل المثال:
git remote add fork [email protected]:johndoe/php-bca.git
branch
ميزة جديد على النحو التالي git checkout -b feature/my-new-feature origin/develop
Reformat kode
باستخدام دليل نمط الترميز PSR-2git commit -am ' Menambahkan fitur A..B..C..D '
Push
إلى الفرع الذي تم إنشاؤه git push fork feature/my-new-feature
رخصة معهد ماساتشوستس للتكنولوجيا
حقوق الطبع والنشر (ج) 2017 odenktools
يُمنح الإذن مجانًا لأي شخص يحصل على نسخة من هذا البرنامج وملفات الوثائق المرتبطة به ("البرنامج")، للتعامل في البرنامج دون قيود، بما في ذلك، على سبيل المثال لا الحصر، حقوق الاستخدام والنسخ والتعديل والدمج. ونشر و/أو توزيع وترخيص من الباطن و/أو بيع نسخ من البرنامج، والسماح للأشخاص الذين تم توفير البرنامج لهم بالقيام بذلك، وفقًا للشروط التالية:
يجب تضمين إشعار حقوق الطبع والنشر أعلاه وإشعار الإذن هذا في جميع النسخ أو الأجزاء الكبيرة من البرنامج.
يتم توفير البرنامج "كما هو"، دون أي ضمان من أي نوع، صريحًا أو ضمنيًا، بما في ذلك، على سبيل المثال لا الحصر، ضمانات القابلية للتسويق والملاءمة لغرض معين وعدم الانتهاك. لا يتحمل المؤلفون أو أصحاب حقوق الطبع والنشر بأي حال من الأحوال المسؤولية عن أي مطالبة أو أضرار أو مسؤولية أخرى، سواء في إجراء عقد أو ضرر أو أي حكم آخر، ينشأ عن أو خارج أو فيما يتعلق بالبرنامج أو الاستخدام أو المعاملات الأخرى في البرنامج.