Cardless Cash Withdrawal

What is Cardless Cash Withdrawal?

The rapid growth of digital transactions in Indonesia has encouraged BRI to innovate in providing convenience for transactions to the public. The increase in the use of mobile financial applications is one of the factors for changing people's behavior in fulfilling daily transaction life. With these conditions, BRI offers cardless cash withdrawal features at ATM machines and BRI CRM which can be done by BRI customers and BRI business partners. Business partners who have collaborated with BRI can take advantage of this service to make it easier for users to make cash withdrawals through BRI ATMs/CRMs. Service users from BRI Business Partners can enter the virtual account number that is displayed on the Business Partner application and then use it to access the cardless cash withdrawal feature available at BRI ATMs/CRMs. With this service, users of the Business Partner application can comfortably withdraw wallet balances in cash at BRI ATMs throughout Indonesia.

API Information

Title

Cardless Cash Withdraw

Version

v1.1

URL Sandbox

Provided by Partner

URL Production

 

Version Control

Doc Version

API Version

Date

Link to document

Description

v1.0

v1.0

October 11th 2021

this pages

Baseline version.

v1.1 v1.1 September 9th 2022 this pages
  • Added "atmLocation" as optional parameter in Cardless Withdrawal request endpoint
  • Changed "amount" and "trxDate" as optional parameter in Cardless Reversal request endpoint

 

Product Description

Product Overview

The growth of digital transactions in Indonesia has encouraged BRI to innovate in providing convenience transactions for the public. The increased usage of financial mobile applications is one of the factors of changes behaviour to fulfilling daily transactions. Therefore, BRI offers cardless cash withdrawal features at ATM & CRM BRI machines that can be used by BRI customers and BRI business partners. Business partners who have collaborated with BRI can take advantage of this service to provide cash withdrawals feature through BRI ATMs/CRMs for their user. User of BRI Business Partners can enter the virtual account number that is displayed on the Business Partner’s application then use it to access the cardless cash withdrawal feature at BRI ATMs/CRMs. With this service, users of the Business Partner application can conveniently withdraw their wallet balances in cash at BRI ATMs throughout Indonesia.

It is an API product provided by BRI and third parties (BRI business partners) that allows third party's customer 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

flow tarik tunai tanpa kartu

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 :

{
   "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

18

Virtual Account Number

 

merchantTrxID

String

M

25

Merchant Transaction ID

 
atmLocation String O   Location ATM  

Response Structure

Field

Data Type

Mandatory

Length

Description

Example

responseCode

String

M

2

Response Code

-

responseMessage

String

M

50

Response message

 

msisdn

String

M

18

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 :

{
   "token":"9203310116",
   "msisdn":"8118821681",
   "merchantTrxID":"1000000007",
   "atmLocation":"KCK. 0206-CRM Hitachi"
}

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":"02",
   "responseMessage":"Invalid PartnerId"
}                                                                                                                  

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

Any error response not listed in the BRIAPI response list is considered pending and requires further investigation.

C. Cardless Reversal

Endpoint Description

API Cardless Reversal is an API that is used to make a reversal to a 3rd party in the event of a failure during the cash withdrawal process.

General Information

HTTP Method

POST

Path

http://{base_url_partner}/v1/cardless/reversal

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

18

Virtual Account Number

 

merchantTrxID

String

M

25

Merchant Transaction ID

 

amount

String

O

22

Transaction Amount  

trxDate

String

O

23

Transaction Date

(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

18

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

 

Request & Response Payload Sample

 

Request :

{
   "token":"999995678",
   "amount":"10000.00",
   "msisdn":"0816789012",
   "merchantTrxID":"000777",
   "trxDate":"2019-10-14 15:20:40.043"
}

Normal Response :

{
   "responseCode":"00",
   "responseMessage":"success",
   "amount":"10000.00",
   "msisdn":"0816789012",
   "merchantTrxID":"000777",
   "trxDate":"2019-10-16 15:20:40.043"
}              

Error Response :

{
   "responseCode":"02",
   "responseMessage":"Invalid PartnerId"
}                                                                                         

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

Reversal Failed

400

12

Failed

Invalid Request/Unauthorized/Invalid Signature

Reversal Failed

400

14

Failed

Virtual Account Not Found

Reversal Failed

400

22

Failed

Original Transaction Id not Found

Reversal Failed

400

68

Failed

Timeout

Reversal Failed

400

99

Failed

Undefined Error

Reversal Failed

Any error response not listed in the BRIAPI response list is considered pending and requires further investigation.