KYB and identity platforms
Verify a Japanese business and keep dated evidence you can still defend six months later.
Daichodo is the ledger API for Japanese regulatory registers. Company data and invoice registration live in separate government registers that do not reference each other, in Japanese, in formats built for people rather than programs. Daichodo holds them, keys them to one entity, and answers by number — including whether a registration was valid on the date of an invoice.
Free tier, no card. Sole traders included. Keys are issued instantly.
| T1180301018771 | トヨタ自動車株式会社 | Active | |
| T7010401022916 | 日本電気株式会社 | Active | |
| T8010001034014 | (example) Sample Shoji Co., Ltd. | Active | |
| T9010001008669 | 国際航業株式会社 | Active | |
| T5010001000010 | ニチバン株式会社 | Active |
Lapses and revocations are kept as history. Every diff we have ever retrieved is still here, so a record can be asked about as at a past date rather than only as at today.The changing row is illustrative and uses an unassigned number. The others are taken from the published register.
Register sizes measured 2026-08-31.
Verify a Japanese business and keep dated evidence you can still defend six months later.
Onboard a Japanese seller once, then hear about it when their invoice registration lapses.
A qualified invoice is deductible only if the issuer was registered on the invoice date.
Agencies, small businesses, sole traders and individual developers use the same free tier and the same endpoints. No company required, no sales call.
The NTA's own diff files are withdrawn after 40 business days. Every one published since we started is kept here, so the record does not thin out as that window moves. Date-range search across the change log is Premium, and Premium is not open yet.
Was this registration valid on the date of the invoice? Answered from the change log, sole traders included.
A maintenance window or a rate limit on the government side is not an outage here, and there is no application ID of yours to manage.
Company records and invoice registration are keyed to the same entity, so you are not matching them up yourself.
Field names, errors, docs and SDKs are English; the register data stays Japanese, exactly as published — no romanised company names. Gaiji records are flagged and the NTA's image ids kept, because that is the raw material cross-register name matching needs and it cannot be re-fetched later. The matching itself is what we are building next. It is not available today.
Two National Tax Agency registers, retrieved every business day and kept. Two more are planned.
Format and check-digit validation needs no API key and stays free at every tier. It proves the number is well-formed, not that it is registered.
npm install @daichodo/validate
import { isValid } from '@daichodo/validate';
isValid('T8000000000001'); // trueLooking a number up against the register needs a key. Test keys hit the same endpoints with test data, so you can wire the integration before you pay for anything.
curl https://api.daichodo.com/v1/invoice-issuers/T8000000000001 \
-H "Authorization: Bearer dc_test_..."The guides are about the problem rather than the API: the diff window that expires, the check digit that proves less than it looks, and why Japanese company names are hard to match.
The documentation is the reference, from your first API key to point-in-time validity and change-detection webhooks.
¥0 / mo
¥4,980 / mo (incl. tax)
¥4,527 before tax
¥29,800 / mo (incl. tax)
¥27,091 before tax