Access Documentation
Overseas ID Verification API
Indonesia
ID Verificaction
ID Verificaction

# ID Card Info Verification (Indonesia) NEW

# 1 Description

Verifies the authenticity and consistency of a user's name, document number, date of birth, and selfie.

Supported document scope: Indonesian ID card.

# 2 Usage

# 2.1 Invoke URL

Indonesia: https://api-idn.yljz.com/finauth/v5/oversea_validation

# 2.2 Invoke Method

Request method: POST

Request format: form-data

Description: The client generates the encrypted signature sign from the apikey and secret, and passes the document-related information together with a selfie. The API returns the document verification result.

# 3 Request Parameters

Parameter Name Required Type Description
sign Signature Yes String For the signature generation rules, see Authentication.
sign_version Signature algorithm version Yes String Fixed value: hmac_sha1
certificate_id Document type ID Yes String Indonesian ID card: ID_ID
biz_no Business serial number No String A custom unique serial number for this request.
id_no National document number Yes String For Indonesia, pass the NIK number.
name User name Yes String The user's complete full name.
dob Date of birth Yes String Format: DD-MM-YYYY.
selfie Selfie Yes String 1. Base64 encoded; 2. File size ≤ 2 MB; 3. Supported formats: JPG/JPEG/PNG; 4. Example: /9j/7DFKAeSLkgEQABAAD/
validate_auth Identity verification Yes String Fixed value; only true may be passed.

# 4 Response Parameters

Note: Different document types return only the applicable fields, not all fields.

Field Name Type Description
request_id Request ID String A unique string that identifies each request; always returned except for 404 and 403 errors.
time_used Time used Int The total time taken by the request, in milliseconds; always returned.
biz_no Business serial number String The business serial number passed in, returned unchanged.
certificate_id Document type ID String Returns the document type ID passed in by the client.
status Verification status String Overall verification result of the data: 0: all data verified as true; 1: part of the data verified as true; 2: all data verified as false.
validate_result Verification result JSON Field-level verification result, returns true / false.
--id_no National document number String Verification result for the document number.
--name User name String Verification result for the name.
--dob Date of birth String Verification result for the date of birth.
--selfie Selfie String Verification result for the face selfie.
error Error message String Returns the corresponding error code when the API encounters an exception.

# 5 Error Code Reference

HTTP Status Code Return Code Billable Description
200 SUCCESS Yes The API call succeeded.
400 MISSING_ARGUMENTS: No A required request parameter is missing.
400 BAD_ARGUMENTS: No A parameter parsing exception (type error, length exceeded, image cannot be parsed, etc.).
404 API_NOT_FOUND No The invoked API address does not exist.
403 AUTHORIZATION_ERROR No The signature is invalid.
403 AUTHORIZATION_ERROR: No The api_key is disabled, has no call permission, the IP is unauthorized, or the call limit is exceeded. 5001: api_key has no permission or is disabled; 5002: unauthorized IP (reserved); 5007: test key call limit reached.
403 CONCURRENCY_LIMIT_EXCEEDED No The API concurrency limit is exceeded.
500 INTERNAL_ERROR No Internal server error; the request can be retried. If the error persists, contact customer service.

# 6 Rsponse Example

# 6.1 All-True Example

{
  "request_id": "e6f9c3a5-8d2b-4e4a-9c7f-3b5d9e4c6f7a",
  "time_used": 1245,
  "biz_no": "202608070004",
  "certificate_id": "ID_ID",
  "status": "0",
  "validate_result": {
    "id_no": true,
    "name": true,
    "dob": true,
    "selfie": true
  }
}

# 6.2 Fail Response Example

{
  "request_id": "a8b2e5c7-0f4d-4a6c-9e3b-5d7f2b6e8a9c",
  "time_used": 98,
  "error": "MISSING_ARGUMENTS: name"
}