Skip to main content

Balance Inquiry

Specification

The Following tabel is spesification for this API :

API NameBalance Inquiry
FunctionThis API is used to query Paydia Bisnis and Paydia App's balance via merchant
Service Code11
MethodPOST
URL/snap/v1.0/balance-inquiry
Acceptapplication/json
Content Typeapplication/json
Related ServiceBalance Inquiry

Request

The following part will be describe about parameter of request in this API:

Request Parameter

The following table is a list of request parameter in this API:

The following table is Header of Request Parameters :

NoNameTypeLengthRequiredConditionRemarks
1Content-TypeStringVariable, 127 maxMandatory-Content type, value always application/json
2AuthorizationStringVariableMandatory-Contains B2B Bearer JWT Token, you've got it from Access Token B2B
3Authorization-CustomerStringVariable, 64 maxConditionalIf you want to check Paydia app's balance via merchantContains customer token, you've got it from Access Token B2B2C
4X-TIMESTAMPStringFixed, 25 maxMandatory-Transaction date time, in format YYYY-MM-DDTHH:mm:ss+07:00. Time must be in GMT+7 (Jakarta time)
5X-PARTNER-IDStringVariable, 36 maxMandatory-ID for partner was generated by Paydia. Unique ID for a partner
6X-EXTERNAL-IDStringVariable, 36 maxMandatory-Unique messaging reference ID generated by merchant. Numeric String. Reference number that should be unique in the same day
7CHANNEL-IDStringVariable, 5 maxMandatory-Device identification on which the API services is currently being accessed by the end user (customer)
8X-SIGNATUREStringVariableMandatory-Signature need to be generated with Symmetric Signature method

Body

The following table is a body of request parameter:

NoNameTypeLengthRequiredConditionRemarks
1partnerReferenceNoStringVariable, 64 maxMandatory-Unique transaction identifier on partner system which assigned to each transaction
2accountNoStringvariable, 16 maxConditionalMust be filled if Authorization-Customer is Null (query balance of Paydia Bisnis)Merchant identifier that is unique per each merchant
3balanceTypesArray of StringVariableOptional-Always have value of CASH

Request Sample

The following script is a request sample of this API:

POST /snap/v1.0/balance-inquiry
X-TIMESTAMP: 2024-08-02T16:17:17+07:00
X-PARTNER-ID: 4abbcb6ce30229994c76169006e0dc9c
X-SIGNATURE: /JEzrYoUSuSpNtdqkOMdJlLVnH/ih4JNa4X660dhGxEfvSNVJDePqzPffrJPE2838/Yj3UmkpA3gRzIKfCrUjA==
X-EXTERNAL-ID: 1722615445
CHANNEL-ID: 12345
Content-Type: application/json
Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJQYXlkaWEiLCJpYXQiOjE3MjI2MTQ4OTIsImV4cCI6MTcyMjcwMTI5MiwiZGF0YSI6eyJlbnYiOiJwcm9kdWN0aW9uIn19.l_To-VKXxMqP_fcls6D0JbaLeJX_a1Oq6h59EauNK1s

{
"partnerReferenceNo": "4f3b7b62-1b10-4b01-aac2-6267a82e8295",
"accountNo": "240327001000000",
"balanceTypes": ["Cash"]
}

Response

The following part will be describe about parameter of response in this API:

Response Parameter

The following table is a list of response parameter in this API:

Body

The following table is a body of response parameter:

NoNameTypeLengthRequiredConditionRemarks
1responseCodeStringFixed, 7 maxMandatory-Refer to response code list
2responseMessageStringVariable, 150 maxMandatory-Refer to response code list
3referenceNoStringVariable, 64 maxOptional-Transaction identifier on Paydia
4partnerReferenceNoStringVariable, 64 maxMandatory-Unique transaction identifier on partner system which assigned to each transaction
5accountNoStringVariable, 32 maxMandatory-Registered account number
6nameStringVariable, 140 maxMandatory-Customer account name
7accountInfoArray of ObjectVariableMandatory-List, e.g. BALANCE, CASH, QRIS, POINTS, etc
8accountInfo.balanceTypeStringVariable, 70 maxOptional-To specify which balance type expected to be returned. Will return all available balance type if this parameter empty
9accountInfo.amountMoneyVariableMandatory-List, net active amount, contains two sub-fields:
  • Value: Transaction amount, including the cents
  • Currency: Currency code based on ISO
10accountInfo.statusStringVariable, 4 maxOptional-Account status:
0001 = Active Account
0002 = Closed Account
0004 = New Account
0006 = Restricted Account
0007 = Frozen Account

Response Sample

The following script is a response sample of this API:

{
"responseCode": "2001100",
"responseMessage": "Successful",
"referenceNo": "dtFPlOFawRO0OLmr",
"partnerReferenceNo": "4f3b7b62-1b10-4b01-aac2-6267a82e8295",
"accountNo": "240327001000000",
"name": "Firman Zain",
"accountInfo": [
{
"balanceType": "Cash",
"amount": {
"value": "19787531.00",
"currency": "IDR"
},
"status": "0001"
}
]
}

Response Code and Message

The following table is the list response code and message of Balance Inquiry API:

NoResponse CodeResponse MessageRemarks
12001100SuccessfulSuccess to be processed
24001101Invalid Field FormatInvalid format for certain field
34001102Invalid Mandatory FieldMissing or invalid format on mandatory field
44011100Unauthorized. [reason]General unauthorized error
54011101Invalid Token (B2B)Invalid or Expired Access Token
64091100ConflictCannot use same X-EXTERNAL-ID in same day
74091101Duplicate partnerReferenceNoDuplicate partnerReferenceNo
85001102Backend system failure500 internal server error