ไลบรารี PHP ดั้งเดิมเพื่อรวมแอปพลิเคชันของคุณเข้ากับระบบ BCA (Bank Central Asia) หากต้องการเอกสารที่ชัดเจนและครบถ้วนยิ่งขึ้น โปรดไปที่เว็บไซต์อย่างเป็นทางการที่ Developer BCA
สำหรับ Laravel
Framework คุณสามารถใช้ไลบรารี Odenktools Laravel BCA ได้
หากคุณรู้สึกว่าห้องสมุดแห่งนี้ได้รับความช่วยเหลือ อย่าลืมให้ STAR สำหรับห้องสมุดแห่งนี้
สำหรับรายละเอียดเพิ่มเติม โปรดไปที่ 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
รับสถานะการชำระเงินตาม CompanyCode และ CustomerNumber หรือ RequestID
/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 );
ใช้ ตัวเลือก Curl แบบกำหนดเอง
$ 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
, 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-2 Coding Style Guidegit commit -am ' Menambahkan fitur A..B..C..D '
Push
ไปที่สาขาที่สร้างขึ้น git push fork feature/my-new-feature
ใบอนุญาตเอ็มไอที
ลิขสิทธิ์ (c) 2017 odenktools
อนุญาตให้บุคคลใดก็ตามที่ได้รับสำเนาของซอฟต์แวร์นี้และไฟล์เอกสารที่เกี่ยวข้อง ("ซอฟต์แวร์") อนุญาตโดยไม่เสียค่าใช้จ่าย เพื่อจัดการกับซอฟต์แวร์โดยไม่มีข้อจำกัด รวมถึงแต่ไม่จำกัดเพียงสิทธิ์ในการใช้ คัดลอก ปรับเปลี่ยน ผสาน เผยแพร่ แจกจ่าย ให้อนุญาตช่วง และ/หรือขายสำเนาของซอฟต์แวร์ และอนุญาตให้บุคคลที่ได้รับซอฟต์แวร์นี้สามารถทำได้ ภายใต้เงื่อนไขต่อไปนี้:
ประกาศเกี่ยวกับลิขสิทธิ์ข้างต้นและประกาศการอนุญาตนี้จะรวมอยู่ในสำเนาทั้งหมดหรือส่วนสำคัญของซอฟต์แวร์
ซอฟต์แวร์นี้มีให้ "ตามที่เป็น" โดยไม่มีการรับประกันใดๆ ทั้งโดยชัดแจ้งหรือโดยนัย ซึ่งรวมถึงแต่ไม่จำกัดเพียงการรับประกันความสามารถในการค้าขาย ความเหมาะสมสำหรับวัตถุประสงค์เฉพาะ และการไม่ละเมิด ไม่ว่าในกรณีใดผู้เขียนหรือผู้ถือลิขสิทธิ์จะต้องรับผิดต่อการเรียกร้องค่าเสียหายหรือความรับผิดอื่นใดไม่ว่าในการกระทำของสัญญาการละเมิดหรืออย่างอื่นที่เกิดขึ้นจากหรือเกี่ยวข้องกับซอฟต์แวร์หรือการใช้งานหรือข้อตกลงอื่น ๆ ใน ซอฟต์แวร์.