
Marketplace B2B yang memberi tempo pembayaran ke merchant grosir perlu memastikan satu hal sebelum mengaktifkan limit kredit: NPWP yang didaftarkan mitra itu asli dan masih aktif. API verifikasi NPWP api.co.id menjawabnya lewat satu api call ke POST /npwp/verify. Kamu kirim npwp, name, dan address, lalu kami balas dengan kecocokan nama dan alamat plus status wajib pajak (status_wp) dan status SPT (status_spt). biayanya hanya Rp2.500 per verifikasi yang berhasil.
Cara kerja API verifikasi NPWP dalam satu panggilan
Kalo kamu cari di google hampir semua hasil pencarian soal NPWP mengarah ke cara cek NPWP milik sendiri lewat Coretax atau M-Pajak, dibuka satu per satu di browser dan cara ini tidak efektif. kami bisa membantu kamu mengeceknya secara otomatis melalui integrasi API. Itulah yang dikerjakan POST /npwp/verify. Kamu memberi nomor NPWP beserta nama dan alamat yang mitra isi di form, lalu kami kembalikan apakah keduanya cocok dan apakah wajib pajaknya aktif. Langkah ini melengkapi alur eKYC saat onboarding pengguna dan mitra baru, khusus untuk sisi badan usaha.
Yang disiapkan sebelum mulai
Ada tiga hal yang harus disiapkan sebelum panggilan pertamamu jalan, dan semuanya kamu urus di dashboard, tanpa api call:
- KYC Standar yang sudah disetujui
- Saldo hasil top up, minimal Rp50.000
- API key yang kamu ambil dari dashboard
Kamu bisa mulai dengan daftar atau masuk di dashboard.api.co.id, lalu isi saldo lewat menu top up. API key ini yang kamu pasang di header x-api-co-id pada setiap panggilan, jadi simpan nilainya di tempat yang aman.
Kenapa butuh KYC dulu
NPWP tergolong data pajak yang sensitif, jadi kami buka akses ke endpoint ini hanya untuk akun yang sudah lolos KYC Standar. NPWP dipakai sebagai salah satu dokumen bisnis saat pengajuan. Kami akan memeriksa dokumen KYC-mu dalam 1×24 jam, jadi siapkan berkas yang jelas supaya prosesnya tidak tertahan. Begitu status akunmu disetujui, /npwp/verify sudah bisa kamu panggil. Verifikasi pajak seperti ini sering jadi bagian dari kepatuhan KYC bisnis saat membuka akun korporat.
Memanggil POST /npwp/verify
Begitu akunmu siap, kamu tinggal mengirim tiga nilai ke endpoint: nomor NPWP mitra, nama terdaftar, dan alamatnya. Pasang header x-api-co-id berisi API key dan Content-Type: application/json, lalu POST ke host produksi use.api.co.id.
curl -X POST "https://use.api.co.id/npwp/verify" \
-H "x-api-co-id: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"npwp": "594032120444000",
"name": "John Doe",
"address": "Jl. Sesama"
}'
Nilai di name dan address yang kamu kirim adalah yang mitra klaim, dan API yang memutuskan cocok atau tidak dengan catatan pajak. Simpan dulu ketiga nilai ini di sisimu supaya hasilnya mudah kamu cocokkan dengan dokumen yang mitra unggah.
Alurnya satu arah dan pendek. Aplikasimu mengirim npwp, name, dan address ke api.co.id; kami teruskan ke sistem verifikasi dan sistem verifikasi akan mencocokkannya dengan catatan pajak, lalu kami kembalikan hasilnya ke aplikasimu dalam satu respons.

NPWP atau NIK, mana yang dikirim
Field npwp menerima nomor NPWP 15 atau 16 digit, dan juga NIK wajib pajak sejak integrasi NIK-NPWP. Direktorat Jenderal Pajak menetapkan NIK dipakai sebagai NPWP untuk wajib pajak orang pribadi dengan format 16 digit, yang bisa kamu baca di halaman resmi DJP (diakses 9 Oktober 2026). Karena NIK kini berfungsi sebagai NPWP orang pribadi, ada baiknya kamu pahami dulu validasi NIK 16 digit sebelum mengirimnya, supaya nomor yang jelas salah formatnya tidak ikut diproses.
Membaca respons dan mengambil keputusan
Begitu request terkirim, kami balas dengan is_success, message, dan data. Keputusan yang kamu butuhkan ada di dalam data.data.
{
"is_success": true,
"message": "Success",
"data": {
"transaction_id": "cfae96ab-92f7-4a16-bc51-93187a5fd8d0",
"data": {
"name": "verified",
"address": "verified",
"status_wp": "active",
"status_spt": "valid"
},
"message": "npwp verification successfully"
}
}
Ada empat sinyal yang kamu baca di sini. name dan address yang bernilai verified berarti nama dan alamat yang mitra daftarkan cocok dengan catatan pajak. status_wp menandakan wajib pajaknya aktif, dan status_spt menandakan status pelaporan SPT-nya. Kalau keempatnya cocok dengan harapanmu, onboarding bisa lanjut. Kalau nama atau alamat tidak cocok, arahkan pengajuan itu ke antrean review manual alih-alih langsung menolak, karena bisa jadi selisihnya cuma penulisan. Nilai yang paling perlu kamu simpan adalah transaction_id, karena itu yang kamu pakai sebagai jejak audit saat pemeriksaan compliance nanti. Karena data NPWP termasuk data pribadi, simpan hasilnya dan batasi siapa yang bisa membukanya untuk menutup titik rawan data. Daftar field selengkapnya ada di dokumentasi produk NPWP.
Biaya dan batas
Satu verifikasi yang berhasil memotong saldo Rp2.500. Modelnya bayar sesuai pemakaian (pay as you go) dengan free_tier_hits bernilai 0, jadi tidak ada kuota gratis untuk mencoba lebih dulu. Dasar tagihannya adalah verifikasi sukses, jadi yang kami hitung hanya panggilan yang diproses dan mengembalikan hasil. Dengan Rp2.500 per verifikasi kamu sudah bisa memastikan status pajak satu mitra, dan di skenario risk, biaya itu biasa dimasukkan ke ongkos akuisisi merchant.
NPWP vs verifikasi KTP/NIK ke Dukcapil
Kalau yang perlu kamu cek adalah identitas seseorang (NIK, nama, tanggal lahir, dan foto KTP ke Dukcapil), pakai API verifikasi identitas yang terpisah. Keduanya sama-sama diproses lewat mitra dan sama-sama Rp2.500 per hit, tapi bentuk request dan hasilnya berbeda.
| Endpoint | Guna | Catatan |
|---|---|---|
POST /id-verification/verify |
Verifikasi NIK, nama, tanggal lahir, dan foto KTP ke Dukcapil (via mitra) | Body multipart; hasil verified atau rejected, dan hasil rejected tetap ditagih Rp2.500. Pakai ini untuk cek KTP dan fotonya; untuk status pajak, gunakan /npwp/verify. |
Contoh alur onboarding mitra B2B
Ambil contoh kamu meng-onboarding “PT Sumber Rejeki” dengan NPWP badan 594032120444000, nama terdaftar John Doe, dan alamat Jl. Sesama. Setelah akunmu lolos KYC Standar dan saldo terisi, backend-mu memanggil POST /npwp/verify dengan ketiga nilai itu persis seperti contoh di atas. Respons balik dengan name dan address bernilai verified, status_wp active, status_spt valid, dan transaction_id cfae96ab-92f7-4a16-bc51-93187a5fd8d0. Karena data pajaknya cocok dan aktif, akun kredit mitra kamu aktifkan, lalu transaction_id tadi kamu simpan di catatan onboarding sebagai bukti compliance saat audit. Bila salah satu sinyal tidak cocok, pengajuan masuk antrean review manual sebelum limit kredit dibuka.
Pertanyaan yang sering muncul
Apakah verifikasi NPWP pihak lain lewat API ini legal, dan dari mana sumber datanya?
Verifikasi dijalankan atas data yang mitra daftarkan sendiri saat onboarding, jadi posisinya sama dengan pemeriksaan dokumen bisnis yang lazim di proses KYC korporat. Pencocokannya diproses lewat penyedia layanan verifikasi resmi, jadi kamu tidak mengakses sistem pajak langsung. Tetap perlakukan NPWP sebagai data pribadi: minta mitra mengisinya sendiri dan batasi akses ke hasilnya.
Kalau verifikasi gagal diproses, saldo saya tetap terpotong?
Tidak. Yang kami tagih hanya verifikasi yang berhasil diproses. Kalau panggilan ditolak lebih dulu dan membalas is_success bernilai false, misalnya karena request tidak lengkap atau ada gangguan di sisi penyedia, saldomu tidak kami potong.






