Transfer to Wallet
- Endpoint:
POST /v1.0/emoney/topup - Tags: Indonesia SNAP/Disbursement
Description
This API is used for wallet payments. When handling the response of this interface, please pay attention to the following points; otherwise, there may be a risk of financial loss:
When "responseCode": "2003800" , "responseMessage": "Success." , "additionalInfo.status": "PENDING" are returned, it means the order is successfully placed. Please refer to the callback or query interface status for the order status; When "responseCode": "4093801" , "responseMessage": "The order number repeat." , it means that the partnerReferenceNo has been ordered. Please wait for the callback or query interface to confirm the order status. Each order must be made to ensure that the partnerReferenceNo is unique; In other scenarios, please check the parameters and reinitiate without changing partnerReferenceNo, and pay attention to resetting X-TIMESTAMP;
Service Code=38
Parameters
| Field | In | Type | Required | Constraints | Description |
|---|---|---|---|---|---|
Content-Type | header | string | Yes | application/json | |
X-TIMESTAMP | header | string | Yes | Request time, compliant with rfc3339 specification, format: yyyy-MM-dd'T'HH:mm:ss.SSSXXX The time must be within two minutes of the current time | |
X-SIGNATURE | header | string | Yes | Represents signature of a request. | |
CHANNEL-ID | header | string | Yes | Device identification on which the API services is currently being accessed by the end user , like APP,WAP,WEB. | |
Authorization | header | string | Yes | Represents access_token of a request; string starts with keyword “Bearer ” followed by access_token | |
X-PARTNER-ID | header | string | Yes | Merchant Id, the unique identifier generated when the merchant signs the contract with PayerMax | |
sign | header | string | Yes | 签名信息请参考技术文档 |
Parameter Examples
Content-Type:""X-TIMESTAMP:""X-SIGNATURE:""CHANNEL-ID:""Authorization:""X-PARTNER-ID:""sign:"FPFVT3o227JrFRbqu19boZCpVVTF9KznxyRawUmxpfXilHV/0yK46haPhAjNu1hPUMy7Vw/ILXhfzffNm4Fj0apWknlTY9OJxnSoQxS9BTFtc61tn5yV1q69x/kkBl82/qwg+XTJ4fOzy7Mar3VaC1E2PlDA6RkkKBUyNE6RYgsdB+Su7an4+4HVTNAnoe74WyvBgxTLMNg28igBTdqxaO3w/UBY6ObVp7vkqkQGdL1Y+HgmMYaAVwrM3+ALWGId0sJ+YqTY4WJ+0xCRGhaSnybiIjZsQEYyID68WNUfuavDLDsEhaMm/HfQvf5p0R1Ltovp3wwJnEbQcjY458iX5A=="
Request Body
Required
Content-Type: application/json
| Field | Type | Required | Constraints | Description | Enum |
|---|---|---|---|---|---|
partnerReferenceNo | string | Yes | maxLength: 64 | Merchant Order Id, a unique identifier for a merchant transaction, must not be duplicated and can only contain letters, numbers, and underlines. | |
amount | object | Yes | |||
amount.value | string | Yes | maxLength: 12 | The transaction amount should be submitted according to the Decimal separator place supported by the currencies of each country. Note: Indonesia, Vietnam, South Korea, and Chile do not support decimal amounts in local currency. | |
amount.currency | string | Yes | maxLength: 3 | Transaction currency, uppercase letters. | |
additionalInfo | object | Yes | |||
additionalInfo.sourceAccount | string | No | maxLength: 3 | Currency code of the deduction account, in uppercase letters. | |
additionalInfo.destinationCurrency | string | No | maxLength: 3 | Specify the receiving currency by referring to the Payment Method Types List. If the receiving currency is indicated in the payment method, please specify it. If not indicated, the receiving currency is limited to the local currency and no specification is required. | |
additionalInfo.payeeInfo | object | Yes | |||
additionalInfo.payeeInfo.targetOrg | string | Yes | maxLength: 64 | Target organization. | |
additionalInfo.payeeInfo.payeeType | string | Yes | Payee type (PERSONAL/CORPORATION), default to PERSONAL | ||
additionalInfo.payeeInfo.name | object | Yes | |||
additionalInfo.payeeInfo.name.fullName | string | Yes | maxLength: 512 | Full name of payee. | |
additionalInfo.payeeInfo.address | object | No | Receiving address information. | ||
additionalInfo.payeeInfo.address.address | string | No | maxLength: 512 | Address of payee. | |
additionalInfo.payeeInfo.address.city | string | No | maxLength: 255 | City of payee. | |
additionalInfo.payeeInfo.address.state | string | No | maxLength: 255 | State. | |
additionalInfo.payeeInfo.address.postalCode | string | No | maxLength: 32 | Postal code of payee. | |
additionalInfo.payeeInfo.accountInfo | object | Yes | Payee account information. | ||
additionalInfo.payeeInfo.accountInfo.accountNo | string | Yes | maxLength: 128 | Payee account, fill in the corresponding account number according to the payment method. | |
additionalInfo.notifyUrl | string | Yes | maxLength: 255 | The backend callback address for merchants to receive payment results, starting with http/https. | |
additionalInfo.reference | string | No | maxLength: 255 | A pass-through parameter, which will be returned the same in the notification callback API. This field is primarily to hold customized data from merchant. | |
additionalInfo.purpose | string | No | Disbursement purpose,enumeration value, ISUBIL:Pay to utilities (i.e. water, electricity, gas bills); EPTOUR:Tourism; EPTKAG:Pay for travel tickets or travel agency fees; ISPAYR:Pay Salary; ISPAYRA:Pay Agent Salary; ISGDDS:Goods Trade; ISSCVE:Purchase and Sale of Services; ISSUPP:Supplier Payment; ISLOGS:Logistics and Transportation Service Payment; INCEN:Incentive/Promotion/User Acquisition Activity; GAME:Gaming Equipment, Game Coins, and Other Game Items; SAMENM:Same Name Business Account Transfer; PAYCMSN:Reimbursement/Benefit Distribution/Commission Distribution; SAMENMC:Legal Person/Shareholder/Director Personal Account; AGOPEXP:Agency operating expenses; ADEXP:Advertising expenses;RFND:Refund;SMCNTST:Sub merchant settlement;LGTEP:Logistics expenses;GOODPAY:Goods payment;SINVEST:Investment in shares;FINVEST:Fund investment;TAXPAY:Tax payment;LOANPAY:Payment of loans; OTHER:Other; | ||
additionalInfo.notifyEmail | string | No | maxLength: 64 | Recipient notification email. Currently, only certain payment methods, such as FAWRY, send withdrawal code emails. | |
additionalInfo.remark | string | No | maxLength: 100 | Postscript or remarks for disbursement, allows format of English, numbers, dash lines, spaces and dots; Due to channel constraints, this field may undergo special processing, such as ultra long truncation or filling in default values. |
Example
{
"partnerReferenceNo": "20260825154446623100190",
"amount": {
"value": "10000",
"currency": "IDR"
},
"additionalInfo": {
"payeeInfo": {
"targetOrg": "DANA",
"payeeType": "PERSONAL",
"accountInfo": {
"accountNo": "08123456789"
},
"name": {
"fullName": "test"
}
},
"notifyUrl": "https://merchant.example.com/snap/payout-notify"
}
}Responses
200
| Field | Type | Required | Constraints | Description | Enum |
|---|---|---|---|---|---|
responseCode | string | Yes | Response code, following the SNAP standard. | ||
responseMessage | string | Yes | Response description, following the SNAP standard. | ||
partnerReferenceNo | string | No | maxLength: 64 | Merchant Order Id. | |
referenceNo | string | No | PayerMax transaction serial Order Number. | ||
additionalInfo | object | No | |||
additionalInfo.status | string | No | maxLength: 2 | Transaction status: 00 - Success, 03 - Pending, 04 - Bounced Back, 06 - Failed. |
Response Example
{
"responseCode": "2003800",
"partnerReferenceNo": "20260825154446623100190",
"referenceNo": "20260825074448TD6338410703027366T08",
"responseMessage": "Success.",
"additionalInfo": {
"status": "PENDING"
}
}