Document Check
Does this look like a genuine e-KTP?
Document integrity and data-consistency checks on a KTP photo, without returning personal data.
POST /v1/ktp/authenticity scope: document:check
Key points
Why teams use Document Check
Stops the obvious fakes
Images that are not an e-KTP are rejected; inconsistent cards go to review.
No personal data returned
Only check results — so it needs no personal-data scope.
The same checks as KYC Verify
Use it on its own when you already match faces elsewhere.
How it works
From request to result
- Send a KTP photo in a signed POST.
- Document integrity and consistency checks run.
- Receive PASS, REVIEW or FAIL with the checks performed.
Know the limits. Detection scope and limitations are documented for customers in the dashboard.
Billed per checked card. Unreadable or invalid images and errors are free.
Full API reference →request · examplePOST
POST /v1/ktp/authenticity
{ "document": { "image": "<base64 KTP>" } }response · example200
{
"data": {
"status": "PASS",
"checks": { "…": "PASS" },
"reasons": []
}
}FAQ
Questions
Does it read the card data?
It uses the text internally for its checks but never returns it. Use KTP OCR to get the fields.
Put Document Check into production.
Request access and our team activates your account, or talk to sales about volume.
Document Check · from Rp300Request API access