This section will explain how merchants can initiate external account inquiry using SNAP specification.
| ServiceCode | Method | URL | Description |
|---|---|---|---|
| 16 | POST | /{version}/account-inquiry-external | API External Account Inquiry |
Request
Header
The following table is a header of request parameter:
| Field Name | Attrib. | Datatype | Description |
|---|---|---|---|
| Content-Type | M | String | Represent media type of request e.g “application/json” |
| Authorization | M | Bearer token obtained from Access Token API in the format Bearer <AccessToken> | |
| X-TIMESTAMP | M | String(25) | Client's current local time in “yyyy-MM-ddTHH:mm:ssTZD” format |
| X-SIGNATURE | M | See General API Symmetric Signature | |
| X-PARTNER-ID | M | See Credential Exchange | |
| X-EXTERNAL-ID | M | String(max 36), Numeric | Unique request reference number from partner. Must be unique. |
| CHANNEL-ID | M | See Credential Exchange |
Body
The following table is a body of request parameter:
| Field Name | Attrib. | Datatype | Description |
|---|---|---|---|
| beneficiaryBankCode | M | String(8) | 3 digit BI Bank Code + 4 digit BI Branch Code for the beneficiary bank |
| beneficiaryAccountNo | M | String(20) | Beneficiary account number |
Response
Header
The following table is a header of response parameter:
| Field Name | Attrib. | Datatype | Description |
|---|---|---|---|
| X-TIMESTAMP | M | String(25) | “yyyy-MM-ddTHH:mm:ssTZD” format |
Body
The following table is a body of response parameter:
| Field Name | Attrib. | Datatype | Description |
|---|---|---|---|
| responseCode | M | String(7) | Response code |
| responseMessage | M | String(150) | Response description |
| referenceNo | C | String(64) | Transaction identifier on service provider system. Must be filled upon successful transaction |
| beneficiaryAccountName | M | String(100) | Beneficiary account name |
| beneficiaryAccountNo | M | String(34) | Beneficiary account number |
| beneficiaryBankCode | O | String(8) | 3 digit BI Bank Code + 4 digit BI Branch Code for the beneficiary bank |
Sample
Request
The following section is a sample of request parameter:
curl --location --request POST 'https://merchants.midtrans.com/v1.0/account-inquiry-external' \
--header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiIxMmUzODE4Mi00YjIxLTQ0YWMtOTVkNi1mMjFhMjEwZmIxZTAiLCJjbGllbnRJZCI6IjY2ODA1MmUzNGYxOTRhYThiZTc5ZTE1YTIxZTRmYzJmIiwibmJmIjoxNjYzODQwNTU5LCJleHAiOjE2NjM4NDE0NTksImlhdCI6MTY2Mzg0MDU1OX0.fEr0vIbB2kY8alZ-SROl3ftAFbfRd0uU-lGq9XuFi8M' \
--header 'Content-Type: application/json' \
--header 'X-TIMESTAMP: 2022-03-04T08:02:09+07:00' \
--header 'X-SIGNATURE: yqmBXZ3yV6NPG1LtwXMm3quXzJMRX5Ms+r9ebc5xWIZGSKbZL3Oy871GHb7WQUucLa5nxN/HcnZYoNHc+KkWTQ==' \
--header 'X-PARTNER-ID: 668052e34f194aa8be79e15a21e4fc2f' \
--header 'X-EXTERNAL-ID: 91919644194391346361915387229113' \
--header 'CHANNEL-ID: 95221' \
--data-raw '{"beneficiaryBankCode": "0020307", "beneficiaryAccountNo": "1172993826"}'Response
The following section is a sample of response parameter:
Content-Type : application/json
x-timestamp : 2022-03-04T08:02:09+07:00
-------------------------------------------------------------------------------
{
"responseCode": "2001600",
"responseMessage": "Success",
"referenceNo": "467314ff6bf84267a97f788917656eff",
"beneficiaryBankCode": "0020307",
"beneficiaryAccountNo": "1172993826",
"beneficiaryAccountName": "Jon Snow"
}Content-Type : application/json
x-timestamp : 2022-03-04T08:02:09+07:00
-------------------------------------------------------------------------------
{"responseCode": "4041611", "responseMessage": "Invalid Account/Virtual Account"}Migration
Request
The following table is a comparison of request parameter:
| Payouts non-SNAP-based (current) | Payouts SNAP-based | Description |
|---|---|---|
| GET /api/v1/account_validation?bank=#{bank_name}&account=#{bank_account} | POST /{version}/account-inquiry-external | |
| bank_account | beneficiaryAccountNo | Beneficiary account number |
| beneficiaryBankCode | 3 digit BI Bank Code + 4 digit BI Branch Code for the beneficiary bank | |
| Beneficiary bank name | Beneficiary bank name |
Response
The following table is a comparison of response parameter:
| Payouts non-SNAP-based (current) | Payouts SNAP-based | Description |
|---|---|---|
| responseCode | Response code | |
| responseMessage | Response description | |
| id | referenceNo | Transaction identifier on service provider system. |
| bank_name | Beneficiary bank name | |
| account_name | beneficiaryAccountName | Name of the beneficiary |
| account_no | beneficiaryAccountNo | Account number of the beneficiary |
| beneficiaryBankCode | 3 digit BI Bank Code + 4 digit BI Branch Code for the beneficiary bank | |
| beneficiaryBankName | Beneficiary bank name |
Response Codes
| Payouts non-SNAP-based (current) | Payout SNAP-based | Description |
|---|---|---|
| 2001600 | Successful | |
| 4001601 | Invalid Field Format [fieldName] | |
| 4001602 | Missing Mandatory Field [fieldName] | |
| 4011600 | Unauthorized | |
| 4011601 | Invalid Token (B2B) | |
| 4031609 | Dormant Account | |
| 4031614 | Insufficient Fund | |
| 4031618 | Inactive Card/Account/Customer | |
| 4041611 | Invalid Account/Virtual Account | |
| 5001601 | Internal Server Error | |
| 5001602 | External Server Error |