Use cases
NusaIndex fits any app that takes in data about people in Indonesia. A few examples.
Public services and local government sites
Sign-up forms that catch a mistyped NIK right away.
- Check NIK and NIP formats before a form is submitted, so staff do not reject files over typos.
- Fill province to village dropdowns from the latest Kepmendagri instead of a home-made region table.
- Old codes from the Papua and North Kalimantan splits resolve to the current codes.
Fintech, e-commerce and payments
Phone numbers for OTP, bank codes for transfers, amounts on invoices.
- Normalize phone numbers to E.164 before sending OTPs, and reject prefixes that were never allocated.
- Look up banks by 3-digit code or BIC for transfer forms.
- Print amounts as Rp1.500.000,50 and in words for receipts.
HR and payroll
Pay dates, collective leave and employee NPWP without manual counting.
- Count working days and due dates with national holidays and collective leave from the latest SKB.
- Convert old 15-digit NPWPs to the 16-digit format for tax reports.
- Read birth date, appointment date and sex from civil servant and PPPK NIPs.
Logistics and delivery
Addresses down to village level, delivery estimates and fleet plates.
- Pick addresses down to village level and search regions by name, such as "gambir".
- Estimate delivery dates in working days, skipping weekends and holidays.
- Check fleet plates and find the regencies behind a plate code.
Personal data protection
Keep NIKs and phone numbers out of your logs.
- Mask NIK, NPWP and phone numbers on admin screens and support tickets.
- Redact text and objects before they reach logs or observability tools, including through a Go slog handler.
Testing and QA
Valid test data without copying real customer records.
- Generate structurally valid NIK, NPWP, phone numbers and plates from a seed.
- The same seed gives the same values in Go and TypeScript, so fixtures can be shared.
- Reuse the same checks in Zod, Valibot or go-playground/validator schemas.
© 2026 Haikal Mumtaz