Flow:

Methods:
1. CheckAccount
Allow partner check if user's account exist in bank system or not.
- Method: POST
- URL: api/bank-disburse/check-account
Example
Request
{
"requestId": "abc123",
"accountNo": "0687012312",
"bankCode": "422589",
"nationalId": "025123456787",
"phoneNumber": "0981234567",
"accountName": "Luong Van A",
"requestTime": 1606977025
}
Response
{
"requestId": "abc123",
"referenceId": "CHECK_ACC_1614138996548",
"beneficiaryAccount": {
"accountName": "NGUYEN VAN A",
"accountNo": "0687012312",
"bankCode": "422589",
"bankName": "NH TNHH MTV CIMB Viet Nam (CIMB)"
},
"resultCode": 0,
"message": "Success"
}
Request
| No | Parameters | Data Type | Require | Description |
|---|---|---|---|---|
| 1 | requestId | String | Yes | Unique string for each request |
| 2 | accountNo | String | Yes | Account number of Beneficiary |
| 3 | bankCode | String | Yes | Code of Beneficiary's bank |
| 4 | nationalId | String | National Id of Beneficiary | |
| 5 | phoneNumber | String | Phone Number of Beneficiary | |
| 6 | accountName | String | Yes | Name of Beneficiary |
| 7 | requestTime | Number | Unix timestamp (milliseconds) |
Response
| No | Parameters | Data Type | Require | Description |
|---|---|---|---|---|
| 1 | requestId | String | Yes | Same with request |
| 2 | resultCode | String | Yes | Result code of request |
| 3 | message | String | Yes | Result message of request |
| 4 | referenceId | String | Yes | Reference Id. Unique String for each response |
| 5 | beneficiaryAccount | Json | Beneficiary's information | |
| 5.1 | accountName | String | Beneficiary's name | |
| 5.2 | accountNo | String | Beneficiary's account number | |
| 5.3 | bankCode | String | Beneficiary's bank code | |
| 5.4 | bankName | String | Beneficiary's bank name |
ErrorCode
| Code | Message | Status |
|---|---|---|
| 0 | Success | Success |
| 2 | Invalid encrypted data | Fail |
| 6 | Invalid Json String | Fail |
| 8 | Duplicate/Invalid request Id | Fail |
| 10 | Unknown result | Fail |
| 11 | Other error | Fail |
| 15 | Mainternance system, please try later ! | Fail |
| 3002 | Bank code not exist | Fail |
| 3006 | Bank system is maintenance | Fail |
| 3007 | No account found | Fail |
| 3009 | Account number is empty | Fail |
| 3010 | Bank code is empty | Fail |
| 3011 | Account name is empty | Fail |
2. Disburse
Allow partner disburse to Beneficiary's bank account
- Method: POST
- URL: api/bank-disburse/transfer
Example
Request
{
"requestId": "abc123",
"amount": 1000000,
"accountName": "Nguyễn Đức Cường",
"description": "abcdef",
"accountNo": "01736346312",
"bankCode": "970423",
"requestTime": 1612234935465
}
Response
{
"requestId": "abc123",
"referenceId": "DISBURSE_1614149556875",
"resultCode": 0,
"message": "Success"
}
Request
| No | Parameters | Data Type | Require | Description |
|---|---|---|---|---|
| 1 | requestId | String | Yes | Unique string for each request |
| 2 | amount | Number | Yes | Amount to disburse |
| 3 | accountName | String | Yes | Beneficiary's name |
| 4 | description | String | Description of transaction | |
| 5 | accountNo | String | Yes | Beneficiary's account no |
| 6 | bankCode | String | Yes | Beneficiary's bank code |
| 7 | requestTime | Number | Unix timestamp (milliseconds) |
Response
| No | Parameters | Data Type | Require | Description |
|---|---|---|---|---|
| 1 | requestId | String | Yes | Same with request |
| 2 | resultCode | String | Yes | Result code of request |
| 3 | message | String | Yes | Result message of request |
| 4 | referenceId | String | Yes | Reference Id. Unique String for each response |
ErrorCode
| Code | Message | Status |
|---|---|---|
| 0 | Success | Success |
| 2 | Invalid encrypted data | Fail |
| 6 | Invalid Json String | Fail |
| 8 | Duplicate/Invalid request Id | Fail |
| 10 | Unknown result | Fail |
| 11 | Other error | Fail |
| 15 | Mainternance system, please try later ! | Fail |
| 3002 | Bank code not exist | Fail |
| 3003 | Invalid money amount | Fail |
| 3008 | Transaction is in progress | Fail |
| 3009 | Account number is empty | Fail |
| 3010 | Bank code is empty | Fail |
| 3011 | Account name is empty | Fail |
| 3013 | Error in bank system | Fail |
3. CheckStatus
Allow partner check status of any transaction
- Method: POST
- URL: api/bank-disburse/check-status
Example
Request
{
"requestId": "abc123",
"checkRequestId": "123abc",
"requestTime": 1606977025
}
Response
{
"requestId": "abc123",
"referenceId": "CHECK_STATUS_1614150635211",
"resultCode": 0,
"message": "Success",
"data": {
"requestId": "123abc",
"resultCode": 0,
"resultMessage": "Success",
"referenceId": "DISBURSE_1608196513594"
}
}
Request
| No | Parameters | Data Type | Require | Description |
|---|---|---|---|---|
| 1 | requestId | String | Yes | Unique string for each request |
| 2 | checkRequestId | String | Yes | Request Id of transaction need to be checked |
| 3 | requestTime | Number | Unix timestamp (milliseconds) |
Response
| No | Parameters | Data Type | Require | Description |
|---|---|---|---|---|
| 1 | requestId | String | Yes | Same with request |
| 2 | resultCode | String | Yes | Result code of request |
| 3 | message | String | Yes | Result message of request |
| 4 | referenceId | String | Yes | Reference Id. Unique String for each response |
| 5 | data | Json | Data of checked transaction | |
| 5.1 | requestId | String | Request Id of checked transaction | |
| 5.2 | resultCode | String | Result code of checked transaction | |
| 5.3 | resultMessage | String | Result message of checked transaction | |
| 5.4 | referenceId | String | Reference Id of checked transaction |
ErrorCode
| Code | Message | Status |
|---|---|---|
| 0 | Success | Success |
| 2 | Invalid encrypted data | Fail |
| 6 | Invalid Json String | Fail |
| 8 | Duplicate/Invalid request Id | Fail |
| 10 | Unknown result | Fail |
| 11 | Other error | Fail |
| 15 | Mainternance system, please try later ! | Fail |
| 3004 | Check request id is empty | Fail |
| 3005 | Check request id not found | Fail |