OVERVIEW
API Customer Top Up
Sequence Diagram API Account Inquiry - Customer Top Up
Informasi Umum
Service Code | 37 |
---|---|
Name | API Account Inquiry - Customer Top Up |
Version | 1.0 |
HTTP Method | POST |
Path | .../{version}/emoney/account-inquiry |
Sequence Diagram API Customer Top Up
Informasi Umum
Service Code | 38 |
---|---|
Name | API Customer Top Up |
Version | 1.0 |
HTTP Method | POST |
Path | .../{version}/emoney/topup |
Sequence Diagram API Customer Top Up Inquiry Status
Informasi Umum
Service Code | 39 |
---|---|
Name | API Customer Top Up Inquiry Status |
Version | 1.0 |
HTTP Method | POST |
Path | .../{version}/emoney/topup-status |
GUIDES
Spesifikasi Parameter Header dan Body API Customer Top Up
Request Body
Parameter | Data Type | Mandatory | Length | Description |
---|---|---|---|---|
partnerReferenceNo | String | O | 64 | Transaction identifier on service consumer system |
customerNumber | String | C | 32 | Customer Account Number |
If use user's access token then should be optional | ||||
amount | Object | M | ||
value | String (ISO4217) | M | 16,2 | Net amount of the transaction. |
If it's IDR then value includes 2 decimal digits. | ||||
e.g. IDR 10.000,- will be placed with 10000.00 | ||||
currency | String | M | 3 | Currency |
transactionDate | yyyyMMddhhmmss | O | 25 | transaction date : ISO 8601 |
additionalInfo | Object | O | Additional information |
Response Body
Parameter | Data Type | Mandatory | Length | Description |
---|---|---|---|---|
responseCode | String | M | 7 | Response code |
responseMessage | String | M | 150 | Response description |
referenceNo | String | O | 64 | Transaction identifier on service provider system. ust be filled upon successful transaction |
partnerReferenceNo | String | O | 64 | Transaction identifier on service consumer system |
sessionId | String | O | 25 | Session ID transaction |
customerNumber | String | C | 64 | Customer Account Number |
Rule of mask for UI | ||||
XXXXXXXXX1857 | ||||
If use user's access token then should be optional | ||||
customerName | string | M | 255 | Customer account name |
Rule of mask for UI: | ||||
- 1 char = A | ||||
- 2 char = AA | ||||
- 3 char = A** | ||||
- 4 char = AA** | ||||
- >=5 char = AA**A | ||||
customerMonthlyInLimit | numeric | O | 17 | Customer monthly cashin limit |
minAmount | Object | O | ||
value | String (ISO4217) | M | 16,2 | Net amount of the transaction. |
If it's IDR then value includes 2 decimal digits. | ||||
e.g. IDR 10.000,- will be placed with 10000.00 | ||||
currency | String | M | 3 | Currency |
maxAmount | Object | O | ||
value | String (ISO4217) | M | 16,2 | Net amount of the transaction. |
If it's IDR then value includes 2 decimal digits. | ||||
e.g. IDR 10.000,- will be placed with 10000.00 | ||||
currency | String | M | 3 | Currency |
amount | Object | O | ||
value | String (ISO4217) | M | 16,2 | Net amount of the transaction. |
If it's IDR then value includes 2 decimal digits. | ||||
e.g. IDR 10.000,- will be placed with 10000.00 | ||||
currency | String | M | 3 | Currency |
feeAmount | Object | O | ||
value | String (ISO4217) | M | 16,2 | Net amount of the transaction. |
If it's IDR then value includes 2 decimal digits. | ||||
e.g. IDR 10.000,- will be placed with 10000.00 | ||||
currency | String | M | 3 | Currency |
feeType | string | O | 25 | Fee type |
additionalInfo | Object | O | Additional information |
Request Body
Parameter | Data Type | Mandatory | Length | Description |
---|---|---|---|---|
partnerReferenceNo | String | M | 64 | Transaction identifier on service consumer system |
customerNumber | String | O | 32 | Customer Account number |
customerName | String | O | 255 | Customer Account name |
amount | Object | O | ||
value | String (ISO4217) | M | 16,2 | Net amount of the transaction. |
If it's IDR then value includes 2 decimal digits. | ||||
e.g. IDR 10.000,- will be placed with 10000.00 | ||||
currency | String | M | 3 | Currency |
feeAmount | Object | O | ||
value | String (ISO4217) | M | 16,2 | Transaction fee |
currency | String | M | 3 | Currency |
transactionDate | yyyyMMddhhmmss | O | ... | Transaction date |
sessionId | string | O | 25 | Invoice transaction ID |
categoryId | numeric | O | 10 | Category ID |
notes | string | O | 255 | Transaction noted |
additionalInfo | Object | O | Additional information |
Response Body
Parameter | Data Type | Mandatory | Length | Description |
---|---|---|---|---|
responseCode | String | M | 7 | Response code |
responseMessage | String | M | 150 | Response description |
referenceNo | String | C | 64 | Transaction identifier on service provider system. Must be filled upon successful transaction |
partnerReferenceNo | String | O | 64 | Transaction identifier on service consumer system |
sessionId | String | O | 25 | Transaction invoice ID |
customerNumber | String | O | 64 | Customer account number |
amount | Object | O | ||
value | String (ISO4217) | M | 16,2 | Net amount of the transaction. |
If it's IDR then value includes 2 decimal digits. | ||||
e.g. IDR 10.000,- will be placed with 10000.00 | ||||
currency | String | M | 3 | Currency |
additionalInfo | Object | O | Additional information |
Request Body
Parameter | Data Type | Mandatory | Length | Description |
---|---|---|---|---|
originalPartnerReferenceNo | String | O | 64 | Transaction identifier/reference generated by partner. |
originalReferenceNo | String | O | 64 | Transaction identifier/reference generated by PJP AIS Selain Bank. |
originalExternalId | String | O | 64 | Original X-EXTERNAL-ID from top up request. |
serviceCode | String | M | 2 | To identify which transaction that needs to be checked. |
additionalInfo | Object | O | Additional information |
Response Body
Parameter | Data Type | Mandatory | Length | Description |
---|---|---|---|---|
responseCode | String | M | 7 | Response code |
responseMessage | String | M | 150 | Response description |
originalPartnerReferenceNo | String | O | 64 | Transaction identifier/reference generated by partner. |
originalReferenceNo | String | C | 64 | Transaction identifier/reference generated by PJP AIS Selain Bank. |
originalExternalId | String | O | 64 | Original X-EXTERNAL-ID from top up request. |
serviceCode | String | M | 2 | To identify which transaction that needs to be checked. |
amount | Object | O | ||
value | String (ISO4217) | M | 16,2 | Net amount of the transaction. |
If it's IDR then value includes 2 decimal digits. | ||||
e.g. IDR 10.000,- will be placed with 10000.00 | ||||
currency | String | M | 3 | Currency |
latestTransactionStatus | String | M | 2 | 00 - Success |
01 - Initiated | ||||
02 - Paying | ||||
03 - Pending | ||||
04 - Refunded | ||||
05 - Canceled | ||||
06 - Failed | ||||
07 - Not found | ||||
transactionStatusDesc | String | O | 50 | Description status transaction |
additionalInfo | Object | O | Additional information |
CODE SNIPPETS
Code Snippets API Customer Top Up
Sample Request
POST .../v1.0/emoney/account-inquiry HTTP/1.2
Content-type: application/json
Authorization: Bearer gp9HjjEj813Y9JGoqwOeOPWbnt4CUpvIJbU1mMU4a11MNDZ7Sg5u9a"
Authorization-Customer: Bearer fa8sjjEj813Y9JGoqwOeOPWbnt4CUpvIJbU1mMU4a11MNDZ7Sg5u9a"
X-TIMESTAMP: 2020-12-21T17:02:11+07:00
X-SIGNATURE: 85be817c55b2c135157c7e89f52499bf0c25ad6eeebe04a986e8c862561b19a5
ORIGIN: www.hostname.com
X-PARTNER-ID: 82150823919040624621823174737537
X-EXTERNAL-ID: 41807553358950093184162180797837
X-IP-ADDRESS: 172.24.281.24
X-DEVICE-ID: 09864ADCASA
X-LATITUDE: -6.1617169
X-LONGITUDE: 106.6643946
CHANNEL-ID: 95221
{
"partnerReferenceNo":" 2020102900000000000001",
"customerNumber":"6287377388272",
"amount":{
"value":"12345678.00",
"currency":"IDR"
},
"transactionDate":"2020-12-21T14:56:11+07:00",
"additionalInfo":{
"deviceId":"12345679237",
"channel":"mobilephone"
}
}
Sample Response
Content-type: application/json
X-TIMESTAMP: 2020-12-21T17:02:18+07:00
{
"responseCode":"2003700",
"responseMessage":"Request has been processed successfully",
"referenceNo":"2020102977770000000009",
"partnerReferenceNo":"2020102900000000000001",
"sessionId":"883737GHY8839",
"customerNumber":"6281388370001",
"customerName":"John Doe",
"customerMonthlyInLimit":"10000000",
"minAmount":{
"value":"10000.00",
"currency":"IDR"
},
"maxAmount":{
"value":"10000.00",
"currency":"IDR"
},
"amount":{
"value":"10000.00",
"currency":"IDR"
},
"feeAmount":{
"value":"10000.00",
"currency":"IDR"
},
"feeType":"Admin fee",
"additionalInfo":{
"deviceId":"12345679237",
"channel":"mobilephone"
}
}
Sample Request
POST .../v1.0/emoney/topup HTTP/1.2
Content-type: application/json
Authorization: Bearer gp9HjjEj813Y9JGoqwOeOPWbnt4CUpvIJbU1mMU4a11MNDZ7Sg5u9a"
Authorization-Customer: Bearer fa8sjjEj813Y9JGoqwOeOPWbnt4CUpvIJbU1mMU4a11MNDZ7Sg5u9a"
X-TIMESTAMP: 2020-12-21T17:07:11+07:00
X-SIGNATURE: 85be817c55b2c135157c7e89f52499bf0c25ad6eeebe04a986e8c862561b19a5
ORIGIN: www.hostname.com
X-PARTNER-ID: 82150823919040624621823174737537
X-EXTERNAL-ID: 41807553358950093184162180797837
X-IP-ADDRESS: 172.24.281.24
X-DEVICE-ID: 09864ADCASA
X-LATITUDE: -6.1617169
X-LONGITUDE: 106.6643946
CHANNEL-ID: 95221
{
"partnerReferenceNo":"2020102900000000000001",
"customerNumber":"6281773628883",
"customerName":"John Doe",
"amount":{
"value":"12345678.00",
"currency":"IDR"
},
"feeAmount":{
"value":"12345678.00",
"currency":"IDR"
},
"transactionDate":"2020-12-21T17:01:11+07:00",
"sessionId":"883737GHY8839",
"categoryId":"6",
"notes":"notes test",
"additionalInfo":{
"deviceId":"12345679237",
"channel":"mobilephone"
}
}
Sample Response
Content-type: application/json
X-TIMESTAMP: 2020-12-21T14:36:19+07:00
{
"responseCode":"2003800",
"responseMessage":"Request has been processed successfully",
"referenceNo":"2020102977770000000009",
"partnerReferenceNo":"2020102900000000000001",
"sessionId":"883737GHY8839",
"customerNumber":"628187366363",
"referenceNumber":"REF993883",
"amount":{
"value":"12345678.00",
"currency":"IDR"
},
"additionalInfo":{
"deviceId":"12345679237",
"channel":"mobilephone"
}
}
Sample Request
POST .../v1.0/emoney/topup HTTP/1.2
Content-type: application/json
Authorization: Bearer gp9HjjEj813Y9JGoqwOeOPWbnt4CUpvIJbU1mMU4a11MNDZ7Sg5u9a"
Authorization-Customer: Bearer fa8sjjEj813Y9JGoqwOeOPWbnt4CUpvIJbU1mMU4a11MNDZ7Sg5u9a"
X-TIMESTAMP: 2020-12-21T17:07:11+07:00
X-SIGNATURE: 85be817c55b2c135157c7e89f52499bf0c25ad6eeebe04a986e8c862561b19a5
ORIGIN: www.hostname.com
X-PARTNER-ID: 82150823919040624621823174737537
X-EXTERNAL-ID: 41807553358950093184162180797837
X-IP-ADDRESS: 172.24.281.24
X-DEVICE-ID: 09864ADCASA
X-LATITUDE: -6.1617169
X-LONGITUDE: 106.6643946
CHANNEL-ID: 95221
{
"originalPartnerReferenceNo":"2021072342358089475892734",
"originalReferenceNo":"2021072342358089475892091",
"originalExternalId":"2ads-2da-d23dasd-21dadjoiq-23ij4oinfoen",
"serviceCode":"40",
"additionalInfo":{
"deviceId":"12345679237",
"channel":"mobilephone"
}
}
Sample Response
Content-type: application/json
X-TIMESTAMP: 2020-12-21T14:36:19+07:00
{
"responseCode":"2003900",
"responseMessage":"Request has been processed successfully",
" originalPartnerReferenceNo":"2021072342358089475892734",
"originalReferenceNo":"2021072342358089475892091",
" originalExternalId":"2ads-2da-d23dasd-21dadjoiq-23ij4oinfoen",
"serviceCode":"40",
"amount":{
"value":"12345678.00",
"currency":"IDR"
},
"latestTransactionStatus":"00",
" transactionStatusDesc":"success",
"additionalInfo":{
"deviceId":"12345679237",
"channel":"mobilephone"
}
}
RESPONSES CODE
Response status merupakan informasi yang diberikan oleh service provider kepada service consumer pada response body, sebagai indikasi hasil dari pemrosesan request yang diterima.
Response status terdiri dari 2 komponen, yaitu kode (response code) dan deskripsinya (response message).
Komponen | Tipe Data | Length | Keterangan |
---|---|---|---|
responseCode | String | 7 | response code = HTTP status code + service code + case code |
responseMessage | String | 150 |
Daftar Response Code
Category | HTTP Code | Service Code | Case Code | Response Message | Description |
---|---|---|---|---|---|
Success | 200 | any | 00 | Successful | Successful |
Success | 202 | any | 00 | Request In Progress | Transaction still on process |
System | 400 | any | 00 | Bad Request | General request failed error, including message parsing failed. |
Message | 400 | any | 01 | Invalid Field Format {field name} | Invalid format |
Message | 400 | any | 02 | Invalid Mandatory Field {field name} | Missing or invalid format on mandatory field |
System | 401 | any | 00 | Unauthorized. [reason] | General unauthorized error (No Interface Def, API is Invalid, Oauth Failed, Verify Client Secret Fail, Client Forbidden Access API, Unknown Client, Key not Found) |
System | 401 | any | 01 | Invalid Token (B2B) | Token found in request is invalid (Access Token Not Exist, Access Token Expiry) |
System | 401 | any | 02 | Invalid Customer Token | Token found in request is invalid (Access Token Not Exist, Access Token Expiry) |
System | 401 | any | 03 | Token Not Found (B2B) | Token not found in the system. This occurs on any API that requires token as input parameter |
System | 401 | any | 04 | Customer Token Not Found | Token not found in the system. This occurs on any API that requires token as input parameter |
Business | 403 | any | 00 | Transaction Expired | Transaction expired |
System | 403 | any | 01 | Feature Not Allowed [Reason] | This merchant is not allowed to call Direct Debit APIs |
Business | 403 | any | 02 | Exceeds Transaction Amount Limit | Exceeds Transaction Amount Limit |
Business | 403 | any | 03 | Suspected Fraud | Suspected Fraud |
Business | 403 | any | 04 | Activity Count Limit Exceeded | Too many request, Exceeds Transaction Frequency Limit |
Business | 403 | any | 05 | Do Not Honor | Account or User status is abnormal |
System | 403 | any | 06 | Feature Not Allowed At This Time. [reason] | Cut off In Progress |
Business | 403 | any | 07 | Card Blocked | The payment card is blocked |
Business | 403 | any | 08 | Card Expired | The payment card is expired |
Business | 403 | any | 09 | Dormant Account | The account is dormant |
Business | 403 | any | 10 | Need To Set Token Limit | Need to set token limit |
System | 403 | any | 11 | OTP Blocked | OTP has been blocked |
System | 403 | any | 12 | OTP Lifetime Expired | OTP has been expired |
System | 403 | any | 13 | OTP Sent To Cardholer | initiates request OTP to the issuer |
Business | 403 | any | 14 | Insufficient Funds | Insufficient Funds |
Business | 403 | any | 15 | Transaction Not Permitted.[reason] | Transaction Not Permitted |
Business | 403 | any | 16 | Suspend Transaction | Suspend Transaction |
Business | 403 | any | 17 | Token Limit Exceeded | Purchase amount exceeds the token limit set prior |
Business | 403 | any | 18 | Inactive Card/Account/Customer | Indicates inactive account |
Business | 403 | any | 19 | Merchant Blacklisted | Merchant is suspended from calling any APIs |
Business | 403 | any | 20 | Merchant Limit Exceed | Merchant aggregated purchase amount on that day exceeds the agreed limit |
Business | 403 | any | 21 | Set Limit Not Allowed | Set limit not allowed on particular token |
Business | 403 | any | 22 | Token Limit Invalid | The token limit desired by the merchant is not within the agreed range between the merchant and the Issuer |
Business | 403 | any | 23 | Account Limit Exceed | Account aggregated purchase amount on that day exceeds the agreed limit |
Business | 404 | any | 00 | Invalid Transaction Status | Invalid transaction status |
Business | 404 | any | 01 | Transaction Not Found | Transaction not found |
System | 404 | any | 02 | Invalid Routing | Invalid Routing |
System | 404 | any | 03 | Bank Not Supported By Switch | Bank not supported by switch |
Business | 404 | any | 04 | Transaction Cancelled | Transaction is cancelled by customer |
Business | 404 | any | 05 | Merchant Is Not Registered For Card Registration Services | Merchant is not registered for Card Registration services |
System | 404 | any | 06 | Need To Request OTP | Need to request OTP |
System | 404 | any | 07 | Journey Not Found | The journeyID cannot be found in the system |
Business | 404 | any | 08 | Invalid Merchant | Merchant does not exist or status abnormal |
Business | 404 | any | 09 | No Issuer | No issuer |
System | 404 | any | 10 | Invalid API Transition | Invalid API transition within a journey |
Business | 404 | any | 11 | Invalid Card/Account/Customer [info]/Virtual Account | Card information may be invalid, or the card account may be blacklisted, or Virtual Account number maybe invalid. |
Business | 404 | any | 12 | Invalid Bill/Virtual Account [Reason] | The bill is blocked/ suspended/not found. |
Virtual account is suspend/not found. | |||||
Business | 404 | any | 13 | Invalid Amount | The amount doesn't match with what supposed to |
Business | 404 | any | 14 | Paid Bill | The bill has been paid |
System | 404 | any | 15 | Invalid OTP | OTP is incorrect |
Business | 404 | any | 16 | Partner Not Found | Partner number can't be found |
Business | 404 | any | 17 | Invalid Terminal | Terminal does not exist in the system |
Business | 404 | any | 18 | Inconsistent Request | Inconsistent request parameter found for the same partner reference number/transaction id |
It can be considered as failed in transfer debit, but it should be considered as success in transfer credit. | |||||
Considered as success: | |||||
- Transfer credit = (i) Intrabank transfer; (ii) Interbank transfer; (iii) RTGS transfer; (iv) SKNBI transfer; | |||||
- Virtual account = (i) Payment VA; (ii) Payment to VA; | |||||
- Transfer debit = (i) Refund payment; (ii) Void; | |||||
Considered as failed: | |||||
- Transfer credit = (i) Transfer to OTC; | |||||
- Transfer debit = (i) Direct debit payment; (ii) QR CPM payment; (iii) Auth payment; (iv) Capture; | |||||
Business | 404 | any | 19 | Invalid Bill/Virtual Account | The bill is expired. |
Virtual account is expired. | |||||
System | 405 | any | 00 | Requested Function Is Not Supported | Requested function is not supported |
Business | 405 | any | 01 | Requested Opearation Is Not Allowed | Requested operation to cancel/refund transaction Is not allowed at this time. |
System | 409 | any | 00 | Conflict | Cannot use same X-EXTERNAL-ID in same day |
System | 409 | any | 01 | Duplicate partnerReferenceNo | Transaction has previously been processed indicates the same partnerReferenceNo already success |
System | 429 | any | 00 | Too Many Requests | Maximum transaction limit exceeded |
System | 500 | any | 00 | General Error | General Error |
System | 500 | Any | 01 | Internal Server Error | Unknown Internal Server Failure, Please retry the process again |
System | 500 | Any | 02 | External Server Error | Backend system failure, etc |
System | 504 | any | 00 | Timeout | timeout from the issuer |
APLIKASI PENGUJIAN
Akses Terbatas, Mohon Sign Up untuk Dapat Mengakses Halaman Ini