Transfer to Bank Notify
POST/v1.0/debit/emoney/transfer-bank/notify.htm
This API is used to notify withdraw status and information from DANA to merchant’s platform
API Type
SNAP API
Expected Timeout
8 second
SNAP Service Code
43
Accept
application/json
Content Type
application/json
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 DANA system
Note: Required to be filled using the partnerReferenceNo that is the same as the one used in Transfer to Bank
Note: Required to be filled using the partnerReferenceNo that is the same as the one used in Transfer to Bank
originalReferenceNo
string
1 - 64 charactersRequiredOriginal transaction identifier on partner system
latestTransactionStatus
string
2 charactersRequiredCategory code for the status of the transaction.
The values include:
The values include:
00
= Success01
= Initiated02
= Paying03
= Pending04
= Refunded05
= Cancelled06
= Failed07
= Not found
transactionStatusDesc
string
1 - 50 charactersDescription of transaction status
createdTime
string
25 charactersTransaction created 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)
finishedTime
string
25 charactersTransaction finished 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)
additionalInfo
json object
Additional information
POST .../v1.0/debit/emoney/transfer-bank/notify.htm HTTP/1.2
Content-type: application/json
Authorization: Bearer gp9HjjEj813Y9JGoqwOeOPWbnt4CUpvIJbU1mMU4a11MNDZ7Sg5u9a
X-TIMESTAMP: 2020-12-21T17:50:43+07:00
X-SIGNATURE: 85be817c55b2c135157c7e89f52499bf0c25ad6eeebe04a986e8c862561b19a5
ORIGIN: www.hostname.com
X-PARTNER-ID: 82150823919040624621823174737537
X-EXTERNAL-ID: 41807553358950093184162180797837
CHANNEL-ID: 95221
{
"originalPartnerReferenceNo": "2020102900000000000001",
"originalReferenceNo": "2020102977770000000009",
"latestTransactionStatus": "00",
"transactionStatusDesc": "success",
"createdTime": "2020-12-21T17:48:41+07:00",
"finishedTime": "2020-12-21T17:50:41+07: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
Content-type: application/json
X-TIMESTAMP: 2020-12-21T17:50:44+07:00
{
"responseCode": "2004300",
"responseMessage": "Successful"
}
Response | Cause | Solution |
---|---|---|
2004300Successful | Success to be processed | Mark Transfer to Bank Notify based on latestTransactionStatus:
|
4004300Bad Request | General request failed error | Mark Transfer to Bank Notify process as Failed and mark Transfer as Pending. Retry request with proper parameter |
4004301Invalid Field Format | Invalid format for certain field | Mark Transfer to Bank Notify process as Failed and mark Transfer as Pending. Retry request with proper parameter |
4004302Invalid Mandatory Field | Missing or invalid format on mandatory field | Mark Transfer to Bank Notify process as Failed and mark Transfer as Pending. Retry request with proper parameter |
4014300Unauthorized. [reason] | General unauthorized error | Mark Transfer to Bank Notify process as Failed and mark Transfer as Pending. Retry request with proper parameter |
4014301Invalid Token (B2B) | Authorization token are invalid, perhaps due to token expiry for B2B | Mark Transfer to Bank Notify process as Failed and mark Transfer as Pending. Retry request with proper parameter |
4294300Too Many Requests | Maximum transaction limit exceeded | Mark Transfer to Bank Notify process as Pending and mark Transfer as Pending. Retry request periodically |
5004300General Error | General error non retry-able | Mark Transfer to Bank Notify process as Failed and mark Transfer as Pending. Retry request periodically |
5004301Internal Server Error | Unknown internal server failure, please retry the process again | Mark Transfer to Bank Notify process as Pending and mark Transfer as Pending. 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 3 attempts, if still fails mark Transfer to Bank Notify process as Pending and mark Transfer as Pending |
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) |
|