Customer Top Up Account Inquiry

This section will explain how merchants can initiate customer topup account inquiry using SNAP specification.

ServiceCodeMethodURLDescription
37POST/{version}/emoney/account-inquiryAPI Account Inquiry - Customer Top Up

Request

Header

The following table is a header of request parameter:

Field NameAttrib.DatatypeDescription
Content-TypeMStringRepresent media type of request e.g “application/json”
AuthorizationMBearer token obtained from Access Token API in the format Bearer
X-TIMESTAMPMString(25)Client's current local time in “yyyy-MM-ddTHH:mm:ssTZD” format
X-SIGNATUREMSee General API Symmetric Signature
X-PARTNER-IDMSee Credential Exchange
X-EXTERNAL-IDMString(max 36), NumericUnique request reference number from partner. Must be unique.
CHANNEL-IDMSee Credential Exchange

Body

The following table is a body of request parameter:

Field NameAttrib.DatatypeDescription
customerNumberMString(20)Customer account number
amount.valueMString(16,2)Send nominal value “1.00”
This nominal value will not be used for any operation in our side (will not deducted). But still mandatory to be sent due to the SNAP spec.
amount.currencyMString(3)Currency (should always be IDR)
additionalInfo.beneficiaryProviderMString(40)Beneficiary Provider, See Emoney Providers

Response

Header

The following table is a header of response parameter:

Field NameAttrib.DatatypeDescription
X-TIMESTAMPMString(25)“yyyy-MM-ddTHH:mm:ssTZD” format

Body

The following table is a body of response parameter:

Field NameAttrib.DatatypeDescription
responseCodeMString(7)Response code
responseMessageMString(150)Response description
referenceNoCString(64)Transaction identifier on service provider system. Must be filled upon successful transaction
customerNameMString(255)Customer account name
customerNumberMString(34)Customer account number
additionalInfo.beneficiaryProviderOString(8)Beneficiary provider

Sample

Request

The following section is a sample of request parameter:

curl --location --request POST 'https://merchants.midtrans.com/v1.0/emoney/account-inquiry \
--header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiIxMmUzODE4Mi00YjIxLTQ0YWMtOTVkNi1mMjFhMjEwZmIxZTAiLCJjbGllbnRJZCI6IjY2ODA1MmUzNGYxOTRhYThiZTc5ZTE1YTIxZTRmYzJmIiwibmJmIjoxNjYzODQwNTU5LCJleHAiOjE2NjM4NDE0NTksImlhdCI6MTY2Mzg0MDU1OX0.fEr0vIbB2kY8alZ-SROl3ftAFbfRd0uU-lGq9XuFi8M' \
--header 'Content-Type: application/json' \
--header 'X-TIMESTAMP: 2022-03-04T08:02:09+07:00' \
--header 'X-SIGNATURE: yqmBXZ3yV6NPG1LtwXMm3quXzJMRX5Ms+r9ebc5xWIZGSKbZL3Oy871GHb7WQUucLa5nxN/HcnZYoNHc+KkWTQ==' \
--header 'X-PARTNER-ID: 668052e34f194aa8be79e15a21e4fc2f' \
--header 'X-EXTERNAL-ID: 91919644194391346361915387229113' \
--header 'CHANNEL-ID: 95221' \
--data-raw '
{
      "customerNumber": "6287377388272",
      "amount": {
           "value": "1.00",
           "currency": "IDR",
       },
      "additionalInfo": {
           "beneficiaryProvider": "gopay"
       }
}'

Response

The following section is a sample of response parameter:

Content-Type : application/json
x-timestamp  : 2022-03-04T08:02:09+07:00
x-client-key : mpn6yhtxa0wfulz65p9pjjw8r0yot8oo
-------------------------------------------------------------------------------
{
   "responseCode": "2003700",
   "responseMessage": "Success",
   "referenceNo": "467314ff6bf84267a97f788917656eff",
   "customerNumber": "6287377388272",
   "customerName": "Jon Snow",
   "additionalInfo": {
        "beneficiaryProvider": "gopay"
    }
}
Content-Type : application/json
x-timestamp  : 2022-03-04T08:02:09+07:00
x-client-key : mpn6yhtxa0wfulz65p9pjjw8r0yot8oo
-------------------------------------------------------------------------------
{"responseCode": "4043711", "responseMessage": "Invalid Account"}

Migration

Request

The following table is a comparison of request parameter:

Payouts non-SNAP-based (current)Payouts SNAP-basedDescription
GET /api/v1/account_validation?bank=#{bank_name}&account=#{bank_account}POST /{version}/account-inquiry-external
bank_accountbeneficiaryAccountNoBeneficiary account number
beneficiaryBankCode3 digit BI Bank Code + 4 digit BI Branch Code for the beneficiary bank
Beneficiary bank nameBeneficiary bank name

Response

The following table is a comparison of response parameter:

Payouts non-SNAP-based (current)Payouts SNAP-basedDescription
responseCodeResponse code
responseMessageResponse description
idreferenceNoTransaction identifier on service provider system.
bank_nameBeneficiary bank name
account_namecustomerNameName of the customer
account_nocustomerNumberAccount number of the customer

Response Codes

Payouts non-SNAP-based (current)Payouts SNAP-basedDescription
2003700Successful
4003701Invalid Field Format [fieldName]
4003702Missing Mandatory Field [fieldName]
4013700Unauthorized
4013701Invalid Token (B2B)
Account does not exist4043711Invalid Account/Virtual Account
5003701Internal Server Error
5003702External Server Error