Query User Profile
POST/dana/member/query/queryUserProfile.htm
This API is used to query user profile such as DANA balance (unit in IDR), masked DANA phone number, KYC, One Time Token (OTT).
It is used also to get mini DANA (transaction history, voucher list), and top up URL for the specific user.
API Type
DANA Open API
Expected Timeout
8 second
SNAP Service Code
-
Accept
application/json
Content Type
application/json
This API is used for the following solution:
Seamlessly integrate DANA payments into merchant's platform, allowing customers to link their DANA accounts for faster, smoother transactions across all merchant's services.
version
string
1 - 8 charactersRequiredAPI version. As per the respective API reference
function
string
1 - 128 charactersRequiredAccording to specifications defined by each business domain.
Value:
Value:
dana.member.query.queryUserProfile
clientId
string
1 - 36 charactersRequiredClient identifier which provided by DANA and used to identify partner and application system
clientSecret
string
1 - 64 charactersRequiredAs a secret key of client. Assigned client secret during registration
reqTime
string
25 charactersRequiredRequest 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)
reqMsgId
string
1 - 64 charactersRequiredIdentify an unique system request. Each request will be assigned with a unique identifier (UUID)
accessToken
string
1 - 512 charactersRequiredContains customer token, which has been obtained from binding process
reserve
string
1 - 256 charactersReserved for future implementation (Key/Value)
userResources
array of string
RequiredThe resource type list that the merchant wants to get from DANA. Refer to UserResourceEnum for the detail of value.
Notes: If merchant want to fetch
Notes: If merchant want to fetch
USER_KYC
resource, make sure when doing binding to include MINI_DANA
in scopes parameter and UserResourceEnum depends on the merchant's resource scope during the onboarding process. If the resource doesn't exist, the ResultCode will return RESOURCE_NOT_DEFINED
BALANCE
string
Query balance of user in DANA
TOPUP_URL
string
Obtain the top up URL for merchant to redirect
TRANSACTION_URL
string
Obtain the transaction URL for merchant to redirect
OTT
string
Obtain the OTT of URLs including TOPUP/TRANSACTION/CASHIER/CHECKOUT_URL
MASK_DANA_ID
string
The masked identifier from DANA side
USER_KYC
string
KYC level.
- 00 = KYC level 0
- 02 = KYC level 2
LOGIN_ID
string
Login identifier of the user, currently it's only set to phone number
CLEAR_TEXT_DANA_ID
string
The unmasked identifier from DANA side
NICKNAME
string
Nickname of the user in DANA
FULLNAME
string
Full name of the user in DANA
KTP_NUMBER
string
KTP number of the user in DANA
KTP_PHOTO_DATA
string
KTP photo binary data in base64 of the user in DANA
SELFIE_PHOTO_DATA
string
Selfie photo binary data in base64 of the user in DANA
AVATAR_URL
string
Location of avatar photo of the user in DANA
MASKED_FULLNAME
string
Masked full name of the user in DANA
{
"request": {
"head": {
"version": "2.0",
"function": "dana.member.query.queryUserProfile",
"clientId": "2014000014442",
"clientSecret": "2014000014442",
"reqTime": "2001-07-04T12:08:56+07:00",
"reqMsgId": "1234567asdfasdf1123fda",
"accessToken": "xxxxx",
"reserve": "{}"
},
"body": {
"userResources": ["BALANCE", "TOPUP_URL", "OTT"]
}
},
"signature": "signature string"
}
version
string
1 - 8 charactersRequiredAPI version. As per the respective API reference
function
string
1 - 128 charactersRequiredAccording to specifications defined by each business domain.
Value:
Value:
dana.member.query.queryUserProfile
clientId
string
1 - 36 charactersRequiredClient identifier which provided by DANA and used to identify partner and application system
clientSecret
string
1 - 64 charactersRequiredAs a secret key of client. Assigned client secret during registration
respTime
string
25 charactersRequiredResponse 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)
reqMsgId
string
1 - 64 charactersRequiredIdentify an unique system request. Each request will be assigned with a unique identifier (UUID)
accessToken
string
1 - 512 charactersRequiredContains customer token, which has been obtained from binding process
reserve
string
1 - 256 charactersReserved for future implementation (Key/Value)
resultInfo
json object
RequiredDefine the detail of result information
resultStatus
string
1 charactersRequiredResult status, refer to result code list ResultStatus
The status of the request can be:
The status of the request can be:
S
: SuccessF
: FailureU
: Unknown
resultCodeId
string
1 - 16 charactersRequiredResult code identifier, refer to result code list ResultCodeId
resultCode
string
1 - 64 charactersRequiredResult code string, refer to ResultCode
resultMsg
string
1 - 256 charactersResult message, refer to result code list ResultMsg
userResourceInfos
array of json object
ConditionalThe user's information from querying resource value
Conditional Info
Y:= Successfully processed
resourceType
string
RequiredThe type of returned resource, refer to UserResourceEnum
Notes: UserResourceEnum depends on the merchant's resource scope during the onboarding process. If the resource doesn't exist, the ResultCode will return
Notes: UserResourceEnum depends on the merchant's resource scope during the onboarding process. If the resource doesn't exist, the ResultCode will return
RESOURCE_NOT_DEFINED
BALANCE
string
Query balance of user in DANA. Contains two sub-fields:
amount
: Value of amount. Need to provide the amount in the smallest common currency unit. For most, this is the amount in cents (or pence, or similarly named unit). For example: To create a charge for $1.00, set amount=100 (100 cents)currency
: Currency
TOPUP_URL
string
Obtain the top up URL for merchant to redirect
TRANSACTION_URL
string
Obtain the transaction URL for merchant to redirect
OTT
string
Obtain the OTT of URLs including TOPUP/TRANSACTION/CASHIER/CHECKOUT_URL
MASK_DANA_ID
string
The masked identifier from DANA side
USER_KYC
string
KYC level.
- 00 = KYC level 0
- 02 = KYC level 2
LOGIN_ID
string
Login identifier of the user, currently it's only set to phone number
CLEAR_TEXT_DANA_ID
string
The unmasked identifier from DANA side
NICKNAME
string
Nickname of the user in DANA
FULLNAME
string
Full name of the user in DANA
KTP_NUMBER
string
KTP number of the user in DANA
KTP_PHOTO_DATA
string
KTP photo binary data in base64 of the user in DANA
SELFIE_PHOTO_DATA
string
Selfie photo binary data in base64 of the user in DANA
AVATAR_URL
string
Location of avatar photo of the user in DANA
MASKED_FULLNAME
string
Masked full name of the user in DANA
value
string
ConditionalValue on resource type
Conditional Info
Y:= Value is exist
{
"response":{
"head":{
"version":"2.0",
"function":"dana.merchant.queryMerchantResource",
"clientId":"201xxxx",
"clientSecret":"201xxx",
"reqTime":"2019-09-18T10:21:53+07:00",
"reqMsgId":"1234567asdfasdf1123fda",
"reserve":"{}"
},
"body":{
"resultInfo":{
"resultStatus":"S",
"resultCodeId":"00000000",
"resultCode":"SUCCESS",
"resultMsg":"success"
},
"userResourceInfos":[
{"resourceType": "BALANCE",
"value": "{\"amount\":\"123\",\"currency\":\"IDR\"}"},
{"resourceType": "TOPUP_URL",
"value": "http://m.dana.xxx"},
{"resourceType": "OTT",
"value": "safsaerqwr"}
]
}
},
"signature":"signature string"
}
ResultStatus | ResultCodeId | ResultCode | ResultMessage | Partner Action |
---|---|---|---|---|
S | 00000000 | SUCCESS | Success | Mark Query User Profile process as Success |
F | 12002005 | USER_NOT_EXIST | User does not exist | Mark Query User Profile process as Failed. Retry request with proper parameter or can contact to DANA to check the user/account status |
F | 12002006 | USER_STATUS_ABNORMAL | User status is not normal | Mark Query User Profile process as Failed. Retry request with proper parameter or can contact to DANA to check the user/account status |
F | 12014201 | TOKEN_FORBIDDEN_ACCESS_RESOURCES | This accessToken can’t access all apply resources | Mark Query User Profile process as Failed. Retry request with proper parameter |
F | 12014202 | RESOURCE_NOT_DEFINE | Resource not define | Mark Query User Profile process as Failed. Retry request with proper parameter |
F | 12014203 | MERCHANT_NOT_EXIST | Merchant not exist | Mark Query User Profile process as Failed. Retry request with proper parameter or can contact to DANA to check merchant configuration |