Home NPWP Indonesia

Indonesia NPWP validator

How the NPWP format works

Format
15 digits (classic form): 8-digit taxpayer number + Luhn check digit + 3-digit tax office code + 3-digit branch code
Example
013121660091000

Things to watch for

  • Covers the classic 15-digit NPWP only — since 2024 Indonesia has been transitioning individuals to a 16-digit NIK-based NPWP, which uses a different checksum and isn't covered here
  • Only the first 9 digits carry a Luhn check digit; the trailing tax-office and branch digits are administrative, not checksummed
  • Checksum only — a pass doesn't confirm the number is currently active with the Direktorat Jenderal Pajak
Regex for NPWP
^[0-9]{15}$

An NPWP (Nomor Pokok Wajib Pajak), in its classic 15-digit form, is the taxpayer number Indonesia’s Direktorat Jenderal Pajak (DJP) issues to individuals and businesses registered for tax — for example 01.312.166.0-091.000 as printed on an NPWP card, or 013121660091000 without the formatting dots and dash. Anyone filing Indonesian tax returns, issuing a business invoice, or opening certain accounts is likely to need this number entered correctly, which is where a quick checksum check is useful before a form gets rejected.

Where the check digit actually sits

Only the first 9 digits are checksummed: an 8-digit taxpayer number followed by a Luhn check digit that catches a single mistyped digit in that block. The remaining 6 digits — a 3-digit tax office (KPP) code and a 3-digit branch code — are administrative routing information, not covered by the check digit, so a typo there won’t be flagged by this tool.

How this validator works

This tool accepts the number with or without the usual dots and dash, confirms 15 digits remain, and runs the standard Luhn algorithm against the first 9 — entirely in your browser. Nothing you enter is transmitted or stored anywhere.

What a pass doesn’t tell you

A pass confirms the taxpayer-number block is internally consistent — not that the NPWP is currently active with the DJP, or that the tax-office and branch digits are correct for that taxpayer.

Scope: classic 15-digit NPWP format and checksum validation only — not the newer 16-digit NIK-based NPWP, and not live registration status.

Content last reviewed 2026-08-09.

NPWP FAQ

What is an NPWP?

Nomor Pokok Wajib Pajak — Indonesia's taxpayer identification number, issued by the Direktorat Jenderal Pajak (DJP) to individuals and businesses registered for tax. It's printed on the taxpayer's NPWP card and used on invoices, tax filings, and many financial and government forms.

Does this tool support the new 16-digit NIK-based NPWP?

No — this covers the classic 15-digit NPWP only. Since 2024, Indonesia has been transitioning individual taxpayers to a 16-digit NPWP based on the person's national ID number (NIK), which uses different formatting and isn't covered by this validator.

Which part of the 15 digits actually carries a check digit?

Only the first 9: an 8-digit taxpayer number plus a Luhn check digit. The remaining 6 digits are the tax office (KPP) code and branch code — administrative information, not checksummed, so they can't catch a typo on their own.

← More NPWP validators