Cardless Cash Withdrawal
API Information
Title |
Cardless Cash Withdraw |
---|---|
Version |
v1.0 |
URL Sandbox |
Provided by Partner |
URL Production |
Version Control
API Version |
Date |
Link to document |
Description |
---|---|---|---|
v1.0 |
October 11th 2021 |
this pages |
Baseline version. |
Product Description
Product Overview
It is an API product provided by BRI and third parties (BRI business partners) that allows BRI customers to withdraw cash without a card at BRI ATMs through third-party applications. Third parties can create APIs based on the following specifications on third-party systems so that BRI can make API calls.
Endpoint
A. Auth Token
Endpoint Description
API Get Token Cardless Withdrawal used to get OAuth2.0 tokens for making signatures.
General Information
HTTP Method |
POST |
---|---|
Path |
http://{base_url_partner}/v1/cardless/token |
Type Format |
JSON |
Authentication |
- |
Header Structure
Key |
Value |
Mandatory |
Length |
Description |
Example |
---|---|---|---|---|---|
Content-Type |
application/json |
M |
- |
- |
- |
Request Structure
Field |
Data Type |
Mandatory |
Length |
Description |
Example |
---|---|---|---|---|---|
providerId |
String |
M |
- |
||
secretKey |
String |
M |
- |
Response Structure
Field |
Data Type |
Mandatory |
Length |
Description |
Example |
---|---|---|---|---|---|
accessToken |
String |
M |
- |
- |
|
responseCode |
String |
M |
- |
||
responseMessage |
String |
M |
- |
||
expiredIn |
String |
M |
- |
expired token in second |
Request & Response Payload Sample
Request type:
{ "providerId":"QwErTy123", "secretKey":"PoIuY098" }
Normal Response :
{ "responseCode":"00", "responseMessage":"success", "accessToken":"lfbo1985ujlnbviovQOUB12oifnfiqIO", "expiredIn":"180" }
Error Response :
{ "responseCode":"01" "responseMessage":"Invalid providerId or secretKey" }
List of Error/Response Code
HTTP Status |
Code |
Status |
Response Description |
Description |
---|---|---|---|---|
200 |
00 |
Success |
Success |
Success if you get RC 00, otherwise it fails |
400 |
01 |
Failed |
Invalid providerId or secretKey |
Transaction Failed |
Any error response not listed in the BRIAPI response list is considered pending and requires further investigation.
B. Cardless Withdrawal
Endpoint Description
API Cardless Withdrawal is an API that is used to update data to 3rd parties for cash withdrawal processed at ATMs.
General Information
HTTP Method |
POST |
---|---|
Path |
http://{base_url_partner}/v1/cardless/withdrawal |
Type Format |
JSON |
Authentication |
Bearer Token |
Header Structure
Key |
Value |
Mandatory |
Length |
Description |
Example |
---|---|---|---|---|---|
signature |
signature |
M |
- |
Signature https://developers.bri.co.id/docs/dokumentasi#signature |
|
timestamp |
ISO 8601 |
- |
|||
Content-Type |
application/json |
M |
- |
- |
- |
Request Structure
Field |
Data Type |
Mandatory |
Length |
Description |
Example |
---|---|---|---|---|---|
token |
String |
M |
9 |
OTP Code |
|
msisdn |
String |
M |
13 |
Virtual Account Number |
|
merchantTrxID |
String |
M |
25 |
Merchant Transaction ID |
Response Structure
Field |
Data Type |
Mandatory |
Length |
Description |
Example |
---|---|---|---|---|---|
responseCode |
String |
M |
2 |
Response Code |
- |
responseMessage |
String |
M |
50 |
Response message |
|
msisdn |
String |
M |
13 |
Virtual Account Number |
|
amount |
String |
M |
22 |
Transaction Amount |
|
trxDate |
String |
M |
23 |
Transaction Date (Format: yyyy-MM-dd HH:mm:ss.fff) |
|
merchantTrxID |
String |
M |
25 |
Merchant Transaction ID, unique for each transaction |
|
linkRefNum |
String |
M |
25 |
Reference Number |
Request & Response Payload Sample
Request type:
{ "token":"9203310116", "msisdn":"8118821681", "merchantTrxID":"1000000007" }
Normal Response :
{ "responseCode":"00", "responseMessage":"success", "msisdn":"8118821681", "amount":"50000.00", "trxDate":"2019-10-14 15:20:40.043", "merchantTrxID":"0000000007", "linkRefNum":"5GP7L02UR75GP7L02UR7" }
Error Response :
{ "responseCode":"14", "responseMessage":"virtual account not found" }
List of Error/Response Code
HTTP Status |
Code |
Status |
Response Description |
Description |
---|---|---|---|---|
200 |
00 |
Success |
success |
Success if you get RC 00, otherwise it fails |
400 |
12 |
Failed |
Invalid Request/Unauthorized/Invalid Signature |
Transaction Failed |
400 |
14 |
Failed |
Virtual Account Not Found |
Transaction Failed |
400 |
16 |
Failed |
Token Expired |
Transaction Failed |
400 |
18 |
Failed |
Insufficient Balance |
Transaction Failed |
400 |
20 |
Failed |
Duplicate Transaction Id |
Transaction Failed |
400 |
68 |
Failed |
Timeout |
Transaction Failed |
400 |
99 |
Failed |
Undefined Error |
Transaction Failed |
HTTP Method |
POST |
---|---|
Path |
http://{base_url_partner}/v1/cardless/withdrawal |
Type Format |
JSON |
Authentication |
Bearer Token |
Header Structure
Key |
Value |
Mandatory |
Length |
Description |
Example |
---|---|---|---|---|---|
signature |
signature |
M |
- |
Signature https://developers.bri.co.id/docs/dokumentasi#signature |
|
timestamp |
ISO 8601 |
- |
|||
Content-Type |
application/json |
M |
- |
- |
- |
Request Structure
Field |
Data Type |
Mandatory |
Length |
Description |
Example |
---|---|---|---|---|---|
token |
String |
M |
9 |
OTP Code |
|
msisdn |
String |
M |
13 |
Virtual Account Number |
|
merchantTrxID |
String |
M |
25 |
Merchant Transaction ID |
Response Structure
Field |
Data Type |
Mandatory |
Length |
Description |
Example |
---|---|---|---|---|---|
responseCode |
String |
M |
2 |
Response Code |
- |
responseMessage |
String |
M |
50 |
Response message |
|
msisdn |
String |
M |
13 |
Virtual Account Number |
|
amount |
String |
M |
22 |
Transaction Amount |
|
trxDate |
String |
M |
23 |
Transaction Date (Format: yyyy-MM-dd HH:mm:ss.fff) |
|
merchantTrxID |
String |
M |
25 |
Merchant Transaction ID, unique for each transaction |
|
linkRefNum |
String |
M |
25 |
Reference Number |
Request & Response Payload Sample
Request type:
{
"token":"9203310116",
"msisdn":"8118821681",
"merchantTrxID":"1000000007"
}
Normal Response :
{ "responseCode":"00", "responseMessage":"success", "msisdn":"8118821681", "amount":"50000.00", "trxDate":"2019-10-14 15:20:40.043", "merchantTrxID":"0000000007", "linkRefNum":"5GP7L02UR75GP7L02UR7" }
Error Response :
{ "responseCode":"14", "responseMessage":"virtual account not found" }
List of Error/Response Code
HTTP Status |
Code |
Status |
Response Description |
Description |
---|---|---|---|---|
200 |
00 |
Success |
success |
Success if you get RC 00, otherwise it fails |
400 |
02 |
Failed |
Invalid PartnerId |
Transaction Failed |
400 |
12 |
Failed |
Invalid Request/Unauthorized/Invalid Signature |
Transaction Failed |
400 |
14 |
Failed |
Virtual Account Not Found |
Transaction Failed |
400 |
16 |
Failed |
Token Expired |
Transaction Failed |
400 |
18 |
Failed |
Insufficient Balance |
Transaction Failed |
400 |
20 |
Failed |
Duplicate Transaction Id |
Transaction Failed |
400 |
68 |
Failed |
Timeout |
Transaction Failed |
400 |
99 |
Failed |
Undefined Error |
Transaction Failed |
Any error response not listed in the BRIAPI response list is considered pending and requires further investigation.
C. Cardless Reversal
Endpoint Description
API Cardless Withdrawal is an API that is used to update data to 3rd parties for cash withdrawal processed at ATMs.
General Information
HTTP Method |
POST |
---|---|
Path |
http://{base_url_partner}/v1/cardless/withdrawal |
Type Format |
JSON |
Authentication |
Bearer Token |
Header Structure
Key |
Value |
Mandatory |
Length |
Description |
Example |
---|---|---|---|---|---|
signature |
signature |
M |
- |
Signature https://developers.bri.co.id/docs/dokumentasi#signature |
|
timestamp |
ISO 8601 |
- |
|||
Content-Type |
application/json |
M |
- |
- |
- |
Request Structure
Field |
Data Type |
Mandatory |
Length |
Description |
Example |
---|---|---|---|---|---|
token |
String |
M |
9 |
OTP Code |
|
msisdn |
String |
M |
13 |
Virtual Account Number |
|
merchantTrxID |
String |
M |
25 |
Merchant Transaction ID |
|
Amount |
String |
O |
22 |
Nominal transaction |
|
trxdate |
String |
O |
22 |
Date Transaction (Format yyyy-mm-dd HH:mm.ss.fff) |
Response Structure
Field |
Data Type |
Mandatory |
Length |
Description |
Example |
---|---|---|---|---|---|
responseCode |
String |
M |
2 |
Response Code |
- |
responseMessage |
String |
M |
50 |
Response message |
|
msisdn |
String |
M |
13 |
Virtual Account Number |
|
amount |
String |
O |
22 |
Transaction Amount |
|
trxDate |
String |
O |
23 |
Transaction Date (Format: yyyy-MM-dd HH:mm:ss.fff) |
|
merchantTrxID |
String |
M |
25 |
Merchant Transaction ID, unique for each transaction |
|
linkRefNum |
String |
M |
25 |
Reference Number |
Request & Response Payload Sample
Request type:
{ "token":"9203310116", "msisdn":"8118821681", "merchantTrxID":"1000000007" }
Normal Response :
{ "responseCode":"00", "responseMessage":"success", "msisdn":"8118821681", "amount":"50000.00", "trxDate":"2019-10-14 15:20:40.043", "merchantTrxID":"0000000007", "linkRefNum":"5GP7L02UR75GP7L02UR7" }
Error Response :
{ "responseCode":"14", "responseMessage":"virtual account not found" }
List of Error/Response Code
HTTP Status |
Code |
Status |
Response Description |
Description |
---|---|---|---|---|
200 |
00 |
Success |
success |
Success if you get RC 00, otherwise it fails |
400 |
12 |
Failed |
Invalid Request/Unauthorized/Invalid Signature |
Transaction Failed |
400 |
14 |
Failed |
Virtual Account Not Found |
Transaction Failed |
400 |
16 |
Failed |
Token Expired |
Transaction Failed |
400 |
18 |
Failed |
Insufficient Balance |
Transaction Failed |
400 |
20 |
Failed |
Duplicate Transaction Id |
Transaction Failed |
400 |
68 |
Failed |
Timeout |
Transaction Failed |
400 |
99 |
Failed |
Undefined Error |
Transaction Failed |
Header Structure
HTTP Method |
POST |
---|---|
Path |
http://{base_url_partner}/v1/cardless/withdrawal |
Type Format |
JSON |
Authentication |
Bearer Token |
Key |
Value |
Mandatory |
Length |
Description |
Example |
---|---|---|---|---|---|
signature |
signature |
M |
- |
Signature https://developers.bri.co.id/docs/dokumentasi#signature |
|
timestamp |
ISO 8601 |
- |
|||
Content-Type |
application/json |
M |
- |
- |
- |
Request Structure
Field |
Data Type |
Mandatory |
Length |
Description |
Example |
---|---|---|---|---|---|
token |
String |
M |
9 |
OTP Code |
|
msisdn |
String |
M |
13 |
Virtual Account Number |
|
merchantTrxID |
String |
M |
25 |
Merchant Transaction ID |
Response Structure
Field |
Data Type |
Mandatory |
Length |
Description |
Example |
---|---|---|---|---|---|
responseCode |
String |
M |
2 |
Response Code |
- |
responseMessage |
String |
M |
50 |
Response message |
|
msisdn |
String |
M |
13 |
Virtual Account Number |
|
amount |
String |
O |
22 |
Transaction Amount |
|
trxDate |
String |
O |
23 |
Transaction Date (Format: yyyy-MM-dd HH:mm:ss.fff) |
|
merchantTrxID |
String |
M |
25 |
Merchant Transaction ID, unique for each transaction |
|
linkRefNum |
String |
M |
25 |
Reference Number |
Request & Response Payload Sample
Request type:
{
"token":"9203310116",
"msisdn":"8118821681",
"merchantTrxID":"1000000007"
}
Normal Response :
{ "responseCode":"00", "responseMessage":"success", "msisdn":"8118821681", "amount":"50000.00", "trxDate":"2019-10-14 15:20:40.043", "merchantTrxID":"0000000007", "linkRefNum":"5GP7L02UR75GP7L02UR7" }
Error Response :
{ "responseCode":"14", "responseMessage":"virtual account not found" }
List of Error/Response Code
HTTP Status |
Code |
Status |
Response Description |
Description |
---|---|---|---|---|
200 |
00 |
Success |
success |
Success if you get RC 00, otherwise it fails |
400 |
02 |
Failed |
Invalid PartnerId |
Transaction Failed |
400 |
12 |
Failed |
Invalid Request/Unauthorized/Invalid Signature |
Transaction Failed |
400 |
14 |
Failed |
Virtual Account Not Found |
Transaction Failed |
400 |
16 |
Failed |
Token Expired |
Transaction Failed |
400 |
18 |
Failed |
Insufficient Balance |
Transaction Failed |
400 |
20 |
Failed |
Duplicate Transaction Id |
Transaction Failed |
400 |
68 |
Failed |
Timeout |
Transaction Failed |
400 |
99 |
Failed |
Undefined Error |
Transaction Failed |
Any error response not listed in the BRIAPI response list is considered pending and requires further investigation.