Transfer to Bank Inquiry Status
POST/v1.0/emoney/transfer-bank-status.htm
This API is used for merchant to do inquiry status transfer to Bank transaction to DANA
API Type
SNAP API
Expected Timeout
4 second
SNAP Service Code
00
Accept
application/json
Content Type
application/json
Retry Mechanism
The following are the details of the retry mechanism in case merchant needs to initiate a retry process:
- Retry is a mandatory process.
- The maximum retry is 5 times.
- Using the following interval time: 5, 10, 20, 40, 60, till merchant’s cut off (in seconds).
Content-Type
string
1 - 127 charactersRequiredContent type, value always
application/json
Authorization
string
1 - 2048 charactersConditionalContains bearer JWT token, which has been obtained from Authorization Token Request API
Conditional Info
Y:= Signature option is symmetric approach
X-TIMESTAMP
string
25 charactersRequiredTransaction date time, in format YYYY-MM-DDTHH:mm:ss+07:00.
Time must be in GMT+7 (Jakarta time)
Time must be in GMT+7 (Jakarta time)
X-SIGNATURE
string
RequiredSignature need to be generated with
symmetricSignature
or asymmetricSignature
methodORIGIN
string
Origin domain
X-PARTNER-ID
string
1 - 36 charactersRequiredUnique identifier for partner was generated by DANA, or known as clientId
X-EXTERNAL-ID
string
1 - 36 charactersRequiredUnique messaging reference identifier generated by merchant and should be unique within the same day
CHANNEL-ID
string
1 - 5 charactersRequiredDevice identification on which the API services is currently being accessed by the end user (customer)
originalPartnerReferenceNo
string
1 - 64 charactersOriginal transaction identifier on partner system.
Note:
Required to be filled using the
Note:
Required to be filled using the
partnerReferenceNo
that is the same as the one used in Transfer to BankoriginalReferenceNo
string
1 - 64 charactersOriginal transaction identifier on DANA system
originalExternalId
string
1 - 36 charactersOriginal external identifier on header message
serviceCode
string
2 charactersRequiredTransaction type indicator is based on the service code of the original transaction request, value always
00
additionalInfo
json object
Additional information
POST .../v1.0/emoney/transfer-bank-status.htm HTTP/1.2
Content-type: application/json
Authorization: Bearer gp9HjjEj813Y9JGoqwOeOPWbnt4CUpvIJbU1mMU4a11MNDZ7Sg5u9a
X-TIMESTAMP: 2020-12-21T17:07:11+07:00
X-SIGNATURE: 85be817c55b2c135157c7e89f52499bf0c25ad6eeebe04a986e8c862561b19a5
ORIGIN: www.hostname.com
X-PARTNER-ID: 82150823919040624621823174737537
X-EXTERNAL-ID: 41807553358950093184162180797837
CHANNEL-ID: 95221
{
"originalPartnerReferenceNo": "2021072342358089475892734",
"originalReferenceNo": "2021072342358089475892091",
"originalExternalId": "2ads-2da-d23dasd-21dadjoiq-23ij4oinfoen",
"serviceCode": "00",
"additionalInfo": {
}
}
Content-Type
string
1 - 127 charactersRequiredContent type, value always
application/json
X-TIMESTAMP
string
25 charactersRequiredTransaction date time, in format YYYY-MM-DDTHH:mm:ss+07:00.
Time must be in GMT+7 (Jakarta time)
Time must be in GMT+7 (Jakarta time)
responseCode
string
7 charactersRequiredRefer to response code list
responseMessage
string
1 - 150 charactersRequiredRefer to response code list
originalPartnerReferenceNo
string
1 - 64 charactersOriginal transaction identifier on partner system
originalReferenceNo
string
1 - 64 charactersConditionalOriginal transaction identifier on DANA system
Conditional Info
Y:= Order found
originalExternalId
string
1 - 36 charactersOriginal external identifier on header message
serviceCode
string
2 charactersRequiredTransaction type indicator is based on the service code of the original transaction request, value always
00
amount
money
Amount. Contains two sub-fields:
- Value: Transaction amount, including the cents
- Currency: Currency code based on ISO
value
string
1 - 19 charactersRequiredValue of amount. Following ISO-4217, for IDR the value includes 2 decimal digits separated with point e.g. ,IDR 10.000,- will be placed with 10000.00
currency
string
RequiredCurrency
latestTransactionStatus
string
2 charactersRequiredStatus of latest transaction:
00 - Success
01 - Initiated
02 - Paying
03 - Pending
04 - Refunded
05 - Canceled
06 - Failed
07 - Not found
transactionStatusDesc
string
1 - 50 charactersDescription of transaction status
additionalInfo
json object
Additional information
Content-type: application/json
X-TIMESTAMP: 2020-12-21T14:36:19+07:00
{
"responseCode": "2000000",
"responseMessage": "Successful",
"originalPartnerReferenceNo": "2021072342358089475892734",
"originalReferenceNo": "2021072342358089475892091",
"originalExternalId": "2ads-2da-d23dasd-21dadjoiq-23ij4oinfoen",
"serviceCode": "00",
"amount": {
"value": "40000.00",
"currency": "IDR"
},
"latestTransactionStatus": "00",
"transactionStatusDesc": "Success",
"additionalInfo": {
}
}
Response | Cause | Solution |
---|---|---|
2000000Successful | Success to be processed | Mark Transfer to Bank Inquiry Status based on latestTransactionStatus:
|
4000000Bad Request | General request failed error | Mark Transfer to Bank Inquiry Status process as Failed and mark Transfer to Bank as Pending. Hold the money and retry request with proper parameter |
4000001Invalid Field Format | Invalid format for certain field | Mark Transfer to Bank Inquiry Status process as Failed and mark Transfer to Bank as Pending. Hold the money and retry request with proper parameter |
4000002Invalid Mandatory Field | Missing or invalid format on mandatory field | Mark Transfer to Bank Inquiry Status process as Failed and mark Transfer to Bank as Pending. Hold the money and retry request with proper parameter |
4010000Unauthorized. [reason] | General unauthorized error | Mark Transfer to Bank Inquiry Status process as Failed and mark Transfer to Bank as Pending. Hold the money and retry request with proper parameter |
4010001Invalid Token (B2B) | Authorization token are invalid, perhaps due to token expiry for B2B | Mark Transfer to Bank Inquiry Status process as Failed and mark Transfer to Bank as Pending. Hold the money and retry request with proper parameter |
4040001Transaction Not Found | Transaction not found | Mark Transfer to Bank Inquiry Status process as Failed and mark Transfer to Bank as Failed. Retry new Customer Top Up Inquiry Status process |
4290000Too Many Requests | Maximum transaction limit exceeded | Mark Transfer to Bank Inquiry Status process as Pending and mark Transfer to Bank as Pending. Hold the money and retry request periodically |
5000001Internal Server Error | Unknown internal server failure, please retry the process again | Mark Transfer to Bank Inquiry Status process as Pending and mark Transfer to Bank as Pending. Hold the money and retry request periodically |
Total Timeout | Total timeout, the client side does not get any responses from the server side (can be due to network issue, server slowing down, and so on) | Do a retry maximum 5 attempts, if still fails mark Transfer to Bank Inquiry Status process as Pending and mark Transfer to Bank as Pending. Hold the money |
Unexpected response (empty field/field does not exist/undefined response code) | The server does not produce expected responses (can be due to hardware failure, bugs, and so on) |
|