API Reference

Format Validation

Structural validation for NIK, NPWP, phone numbers, and bank accounts — no lookup to official databases. Includes Indonesian bank code list.

Main endpoint
GET https://use.apiindonesia.id/api/v1/validasi/bank
Endpoints
3
Authentication
x-api-key header (create one free in the dashboard)
Price
2 credits (Rp2) per successful request; failed requests are free
Format
JSON (REST), with cURL, JavaScript and Python examples
Product Brief

What this API gives you

Structural validation for NIK, NPWP, phone numbers, and bank accounts — no lookup to official databases. Includes Indonesian bank code list.

Coverage
3

ready-to-use endpoints in this product, with JSON responses and consistent error handling.

Access
API key

Can be tried with the 3,000 credit signup bonus, then used in production through one API Indonesia key.

Sample resource
https://use.apiindonesia.id/api/v1/validasi/bank

Returns bank codes with valid account number lengths.

When should you use it?

The Validation API fits cleaning inputs before data enters your system: NIK, NPWP, phone numbers, and bank accounts. It focuses on structural validation, not identity checks against official databases.

Onboarding forms often fail because NIK, NPWP, phone, or bank-account formats are inconsistent.

The app wants to give immediate feedback before submission.

Teams need to reduce dirty data before KYC, billing, or disbursement workflows.

Structural validation does not prove that a number belongs to someone or is active at the related institution.

Example product scenarios

This section separates the product page from the docs. The docs explain how to call endpoints; this page explains why the endpoints make sense for your feature.

  • Fintech & e-commerce: validate NIK/NPWP/bank-account format on signup forms before submission.
  • HR-tech: check NIK/NPWP format validity during employee onboarding.
  • Form-builder apps: reduce identity/tax data entry errors in real time.

Example Usage

Request
curl "https://use.apiindonesia.id/api/v1/validasi/bank" \
  -H "x-api-key: YOUR_API_KEY"
Response · 200 OK
{
  "data": [
    { "code": "014", "name": "Bank BCA", "short_name": "BCA", "min_account_length": 10, "max_account_length": 10 }
  ]
}

Related Articles

Pricing 2 credits (Rp2) per successful request; failed requests are free. One-time 3,000 credit signup bonus, no credit card, no monthly allowance.

Format Validation API questions

Does this check a NIK against Dukcapil?

No. It only checks structure: 16-digit NIK and 15-digit NPWP, and extracts the region and birth-date codes from a NIK. There is no lookup against Dukcapil or DJP databases.

How do I validate a bank account number length?

GET /api/v1/validasi/bank returns bank codes with min_account_length and max_account_length for each bank.

When is format validation useful?

To reject obviously wrong input before processing, such as a mistyped NIK in a signup form, without paying for official verification.

Get Started

Start Integrating
Today

Sign up for free and get a 3,000 credit bonus (Rp3,000) once your email is verified, grab an API key, and call your first endpoint right away. No credit card, no tedious approval process.

Dot wave visualization