{"openapi":"3.1.0","info":{"title":"JP-Verify","description":"Clean English verification of a Japanese supplier's invoice T-number, 法人番号, status and (romaji) name/address — the JP-coverage layer KYB/ERP teams license instead of building.\n\nEnglish-first verification of a Japanese supplier's qualified-invoice (適格請求書) **T-number**,\noff the daily 国税庁 (National Tax Agency) register — 5M+ published register records, revoked/expired ones included.\n\n**Contract:** `/v1` is stable — new fields/endpoints ship without notice, nothing existing is\never renamed or removed; a documented key may be `null`, it is never absent — see the versioning policy (`docs/VERSIONING.md`, summarised at https://jp-verify.obolpay.xyz/llms.txt).\n\n### What a record tells you\n- **`status`** — `registered` / `not_yet_effective` / `expired` (失効) / `revoked` (取消) / `not_registered`. The NTA publishes 登録年月日 / 失効年月日 / 取消年月日 **in advance**, so status is those dates *evaluated on* the response's own `data_as_of.data_date` — lower bound inclusive, upper bounds exclusive — not a test for which date fields are filled in. A row carrying a future 失効年月日 is still `registered`; one carrying a future 登録年月日 is `not_yet_effective`, and `notes` names the date in both cases. Treat any value other than `registered` as \"cannot back a qualified invoice on that date\".\n- **`input_credit`** — whether the number can back a qualified consumption-tax invoice (`qualified_invoice_issuer`) — the fact AP/onboarding teams check. *Factual status only; NOT tax advice.*\n- **`summary`** — a one-line English summary of the record.\n- **`corporate_number`** (法人番号), registration / cancellation dates, `kind`.\n- **`corporate_number_published`** (1.6.1) — whether the number's 13 digits are a 法人番号 in the 法人番号 register this answer read (vintage: `english_name_register.data_date`): `true` / `false`; `null` on **every** result when that register could not be read for the answer. An individual's number (`kind` `individual`) reads `false` without being looked up there — an individual's registration number is never a 法人番号. A `not_registered` number that reads `true` belongs to an entity with a published 法人番号 that is not a qualified-invoice issuer as of `data_as_of` (its `corporate_number` stays `null`). `corporate_number` follows the invoice register's kind code alone, so it can hold 13 digits that are not a published 法人番号 — the NTA's register marks a 人格のない社団等 as 法人, and an association's number is a published 法人番号 only if it has one and its representative consented to publication; this key tells them apart. It rides inside each result, so it is part of any signed record.\n- **`name_en` / `address_en`** — the English rendering, always carrying its provenance in `name_en_source` / `address_en_source`: **`official-en`** = the English form the corporation itself filed with the 法人番号 register (authoritative, and the response then also carries `english_name_register` with that register's own `data_date` + attribution), **`generated`** = best-effort deterministic romaji (non-authoritative). Only **0.30%** of the 5,009,012 active Japanese corporations have filed an official English name (measured on the 20260831 法人番号 全件 file), so `generated` is the ordinary case — but where an official name exists you get it, not a machine guess (日本電気株式会社 → `NEC Corporation`, not `Nippondenki Co., Ltd.`). The authoritative fields remain the Japanese name/address.\n- **`registered_address`** — the corporation's 法人番号-register postal address (`prefecture`/`city`/`street`/`postal_code`, plus the raw JIS `jis_prefecture_code`/`jis_city_code`), and **`registry_closure`** (null unless the corporation carries a close_date) — `close_date`/`close_cause_code`/`close_cause` (label from the 4-value NTA code table; unrecognised code → null label, never a guess)/`successor_corporate_number`/`successor_t_number` (format-only join). Present whenever the houjin-bangou mirror is configured and the record's `corporate_number` resolves; **every field reads `null` when the mirror predates the 2026-09 rebuild** (or has not yet re-synced this corporation) — this is a data-freshness gap, not a claim the corporation has no such address/closure. **`corporate_number_assigned_on`** (with sibling `assigned_on_note`) is the register's own assignment date, **not** the date of incorporation — see the note for why. For the invoice-register row itself: **`country_classification`** (`code`/`label` — 国内外区分, kept for individuals and corporations alike, not identifying data) and **`invoice_address_jis`** (`prefecture_code`/`city_code` — **always null for an individual issuer, by construction**, exactly like `name_ja`/`address_ja`).\n- **`edinet`** (optional) — the corporation's entry on the Financial Services Agency's **EDINET code list** (the master list of securities-disclosure filers): `edinet_code`, `filer_type` (提出者種別, as published), `listed` (`true`/`false` derived from 上場区分 「上場」/「非上場」; `null` when that column is blank — never guessed), `listing_label` (as published), `securities_code` (as published — 5-digit EDINET form, not normalised), `list_date` (the date the list was taken as of, YYYYMMDD) and `edinet_candidates` (how many EDINET codes carry this 法人番号; when more than one, the object shows the preferred entry — a listed one first — chosen deterministically, so the same list always yields the same object). **Honest scope:** the key is present only on corporate/association records, and only where this deployment has the code-list sidecar provisioned (it is absent otherwise, and absent when the sidecar is unreadable — the verification itself never fails on it); **`null` means the 法人番号 is not on the list as of `list_date`, which is not a claim that the entity is not a filer**, and nothing here describes any filing. Individual (kind 1) issuers never carry it. A response carrying the key also carries **`edinet_register`** at the top level — the list's `list_date` plus the FSA source, PDL1.0 licence, attribution and processing note (**resellers must pass `attribution` / `processing_note` through** when the data is republished). The field rides inside each result, so it is part of any signed record.\n\n- **`major_shareholders`** (optional, 1.5.0) — the 「大株主の状況」 table this corporation's own 有価証券報告書 / 半期報告書 publishes on EDINET, or a structured statement of why none exists. `status` is `available` (rows held), `filing_without_table`, `not_yet_available` (a filer whose table this deployment has not ingested yet — our gap, and it says so) or **`no_public_disclosure`**. That last one is a certificate, not an empty answer: what is published about a company's owners depends on its legal form — a 株式会社's 株主名簿 is inspectable by its own shareholders and creditors on a stated reason (会社法125条2項; an outsider's route is a 親会社社員's, with a court's permission — 125条4項) and its shareholders are not registered items (会社法911条3項), while a 持分会社 keeps no 株主名簿 and its 業務執行社員・代表社員 ARE registered items (会社法914条六・七 for a 合同会社) in a record JP-Verify does not carry — so major-shareholder facts of this kind exist only for the 4,917 corporations (**0.098%** of the 5,009,012 active ones, measured on the 20260918 code list) that file one. The block then carries `reason`, `detail` (`not_on_code_list` / `no_report_obligation`), `edinet_code_list_date`, `checked_at`, a `basis[]` with those provisions — each carrying the legal form it holds for in `scope_en` — and a note — and **never says the corporation has no shareholders**. The compact object on each result is free and carries counts, totals and the filing's identity (including `legal_status_at_fetch`); `?include=shareholders` embeds `holders[]` and `filings[]` and costs **+1 unit per result that actually carries rows**. **Privacy:** a holder is named only when it is positively an organisation; every other holder is `unresolved` — or `unknown` where the filing's own name cell was empty — with rank, shares and ratio only; its published name and the address column of every row are discarded in memory at parse time and never stored, logged, signed or served, and per-row figures for holders served without a name need a key whose onboarding recorded the Terms Art. 7(3) representation (the sandbox is always aggregate). A response carrying the block also carries **`edinet_documents_register`** at the top level (source, terms, copyright basis, processing note, what is not included). Full route: `GET /v1/shareholders`. Absent where the feature is not enabled on this deployment.\n\nEvery answer also carries **`notice`** (1.6.1 — top level, outside any signed record, beside `attribution`): the NTA notice, verbatim — 「本サービスは国税庁公表データ（全件・差分ダウンロードファイル）を JP-Verify が加工して作成したものであり、国税庁が作成したものではなく、内容は国税庁によって保証されたものではありません。 Based on NTA-published bulk data, processed by JP-Verify; not produced or guaranteed by the NTA.」\n\n### Query\n- `GET /v1/verify?number=T…` · `?numbers=T…,T…` (batch) · **`?corporate_number=<13-digit 法人番号>`** (reverse lookup → its T-number)\n- `POST /v1/verify` with `{\"numbers\": [\"T…\", …]}`\n\n### Supplier sanctions screening (optional, advisory)\n`GET/POST /v1/screen?name=…` screens a supplier name/aliases/ID against public sanctions lists (OFAC / UN / EU / Japan 外為法 MOF, including the official 財務省 asset-freeze CSV). **Honest scope:** EXACT-match after Unicode normalization with deterministic rule-generated variant expansion (keyset v2) — still exact-match, NOT fuzzy: every added key (legal-form renderings, romaji folding, kanji readings, canonical date/ID forms) comes from an enumerable rule table, so it widens coverage but is **not fuzzy/phonetic**, **not zero-knowledge**, and **not a substitute for a regulated sanctions-compliance program**; a `clear` result is advisory and can miss spelling variants outside the rule set (`method` / `disclaimer` say so on every response). Hits carry advisory `matched_entities` attribution (list source/uid/name, matched-via route, and `quality` — `weak` when the match runs through a name the source list itself flags as low-quality). Returns **503** where lists are not configured — it never invents a \"clear\". Availability + loaded lists are reported under `sanctions_screening` in `/health`.\n\n### Alphabet names (法人番号 register, optional)\n`GET /v1/alphabet-names?corporate_number=<13-digit 法人番号>` (or `t_number=T…`) returns every alphabet rendering of a Japanese corporation's name, each labelled with its **provenance tier**: `official-en` — the English name the corporation itself registered with the NTA (authoritative-as-filed but **rare: 15,287 of 5,828,219 corporations = 0.26%; 99.70% of the 5,009,012 active JP corporations have no official alphabet name** — measured on the 20260831 houjin-bangou 全件 file (zip sha256 `36bd4b167409…`; active = not closed and not search-excluded; the same three counts and `data_date` are served live under `alphabet_names` in `GET /health`, and the method is summarised at https://jp-verify.obolpay.xyz/llms.txt); `official-reading` — deterministic romanisation of the officially registered furigana (pykakasi 2.3; same input, same output; 60.9% fill). Hepburn-style, not a certified Hepburn: the 内閣告示 (令和7年第4号) excludes 外来語-only sounds, and pykakasi's 外来語拗音 follow the 外務省 passport table for ティ/ウィ/ウェ/ウォ/シェ/ジェ/デュ but differ from it for ファ行/ディ/チェ/ヴ; 16 small-kana sequences fold onto the plain-kana reading (212,320 of 3,144,088 active furigana holders, 6.75% as of 20260831), so a second, collision-free rendering `jp-verify-yoon-v1` (JP-Verify's own fixed table) is also returned with its own matching keys — every `official-reading` entry names its `convention` (`pykakasi-2.3` / `jp-verify-yoon-v1`); `generated` — best-effort machine romanization (deterministic, **non-authoritative**). Also returns folded `matching_variants` for screening-system ingestion (exact-match keys, not display, NOT fuzzy; the keys of both readings). Also carries `registered_address` and `registry_closure` (same shape and null semantics as `/v1/verify` — see above), and `search_excluded` with its `search_excluded_note` (the register's 検索対象除外 item, `hihyoji`, リソース定義書 項番36 — quoted verbatim in the note: set for a 設立登記法人 whose registered address has been confirmed to be a rendering that no longer exists because it was abolished by 住居表示の実施 or 区画整理等, and which the NTA site therefore excludes from its own search; the item is a column of the download file, so the row is published data, not concealment; `suppressed` is the legacy name of the same boolean and stays). **Scope (APPI):** the houjin-bangou register covers corporations only — no individual proprietors — and all fields are public corporate data. The embedded `t_number` is a format-only join (registration status is `/v1/verify`'s job). Where the mirror is not configured the endpoint returns **503**. **Resellers:** every response carries the NTA open-data attribution 「出典：国税庁法人番号公表サイト（国税庁）（https://www.houjin-bangou.nta.go.jp/）を加工して作成」, which must be passed through when the data is republished.\n\nA found `result` also carries **`edinet`** — the same EDINET code-list object as `/v1/verify` (object when the 法人番号 is on the FSA's EDINET code list as of `list_date`, `null` when it is not — **not a claim that the entity is not a filer** — and absent where the sidecar is not provisioned or unreadable; a sidecar problem never turns this endpoint into a 503), with the top-level **`edinet_register`** attribution block (PDL1.0 — pass `attribution` / `processing_note` through on republication) whenever the field is present. A `found: false` body never carries it.\n\n### Name resolution (法人番号 register, optional)\n`GET /v1/resolve?name=<company name>&limit=<1..25>` resolves a company name — kanji, kana, romaji, or a registered English name — to candidate 法人番号 (corporate numbers) over the houjin-bangou mirror. **Honest scope: deterministic rule-based resolution, NOT fuzzy search** — a query matches only when one of its rule-enumerable folded variants (legal-form renderings, romaji folding, kana readings) is byte-equal to a folded key of a registered name/reading; there are no ML scores and no edit-distance, so a **non-match does NOT mean the company does not exist** (misspellings and readings outside the rule set are not found — the response says so). Candidates are ranked by **provenance tier** (`native` registered name > `official-en` registered English name > `official-reading` deterministic romanisation of the registered furigana (pykakasi 2.3 and, since keyset 3, the collision-free `jp-verify-yoon-v1` rendering — see `/v1/alphabet-names`) > `generated` best-effort machine romanization) plus an exact-form bonus (full registered name beats legal-form-stripped core), then corporate number — resolution is deterministic: same query + same index ⇒ identical candidates and ranking (metering fields like `remaining` naturally vary per call). **A name match is NOT entity identity**: same-name companies are common (dozens of active companies can share one name, e.g. 株式会社ヤマキ), so every candidate carries prefecture/city disambiguators (plus `registered_address` and `registry_closure`, same shape and null semantics as `/v1/verify`) and identity must be confirmed out of band (e.g. `/v1/verify` the joined T-number). **Scope (APPI):** corporations only — the houjin register has no individual proprietors. Closed (閉鎖) and search-excluded corporations are excluded (`search_excluded` on `/v1/alphabet-names` — the NTA 法人番号公表サイト's 検索対象除外 item, `hihyoji`, リソース定義書 項番36: a 設立登記法人 whose registered address has been confirmed to be a rendering that no longer exists because it was abolished by 住居表示の実施 or 区画整理等 is excluded from the site's own search; the row is still delivered in the download file — public information, not concealment; `suppressed` is the legacy name of the same field). Where the index is not configured the endpoint returns **503**. **Resellers:** every response carries the NTA open-data attribution 「出典：国税庁法人番号公表サイト（国税庁）（https://www.houjin-bangou.nta.go.jp/）を加工して作成」, which must be passed through when the data is republished.\n\n### LEI bridge (GLEIF, optional)\n`GET /v1/lei?corporate_number=<13-digit 法人番号>` (or `t_number=T…`, or `lei=<20-char LEI>`) joins a Japanese corporation to its Legal Entity Identifier (ISO 17442) off GLEIF's daily golden copy. **Honest scope:** only a measured **~20% of JP-jurisdiction LEIs** have a number-based (authoritative) or exact-name (non-authoritative, labelled `name_exact`) join to a 法人番号 today (re-measured on every refresh of the golden copy; the per-tier breakdown is available on request); a `null` `lei` is the ordinary, correctly-reported case, not a lookup failure. When more than one LEI maps to the same 法人番号, the response picks the `ISSUED`/most-recently-updated one and reports the total under `lei_candidates`. GLEIF publishes this data under **CC0 1.0** (no attribution required); a response that also carries houjin-bangou register data still owes the NTA attribution for that half. `/v1/verify` results for a corporate T-number also carry this same `lei` field (object or `null`) whenever the bridge is configured, and a `/v1/verify` response in which any result carries `lei` also carries a top-level **`lei_register`** block — `source`, the golden copy's `data_date`, `license` (`CC0-1.0`), `terms_url` (GLEIF's LEI data terms of use) and a `processing_note` stating that the 法人番号 mapping is JP-Verify's own derivation, not GLEIF's or an LOU's — outside the signed payload, like `edinet_register`. Where the bridge is not configured the endpoint returns **503**.\n\n### Register-change monitoring (optional)\n`/v1/monitor/*` is a **data-change notification service** over the two NTA mirrors — it tells you when a supplier you watch *changes* on the register, so you do not have to re-poll `/v1/verify` for every supplier every day. **Honest scope:** it reports a **public register fact** (\"this T-number is now 失効 / this corporation closed / merged / registered an English name, as of the diff's data date\") — it is **NOT tax advice, NOT legal advice, and NOT a compliance program**; the authoritative source is always the NTA register itself.\n\n- **Subscribe** the 法人番号 / T-numbers you care about: `POST /v1/monitor/watchlist {\"corporate_numbers\":[\"T…\", …]}` (each check-digit validated; a bad number is refused free). `GET` lists your watchlist, `DELETE` unsubscribes. Watchlists are isolated per caller.\n- **Event taxonomy** — invoice register: `invoice.registered` / `invoice.expired` (失効) / `invoice.revoked` (取消) / `invoice.reinstated` / `invoice.name_changed` / `invoice.address_changed` / `invoice.registration_scheduled` / `invoice.expiry_scheduled` / `invoice.revocation_scheduled` (a 登録 / 失効 / 取消 date published ahead of its day) / `invoice.deleted` (a 処理区分 99 removal with no replacement row); 法人番号 register: `houjin.assigned` (new incorporation) / `houjin.closed` / `houjin.reopened` / `houjin.merged` / `houjin.name_changed` / `houjin.address_changed` / `houjin.en_name_registered` / `houjin.furigana_registered`. The taxonomy is open-ended: `event_type` values may be added over time (four were added on 2026-09-15 with release 1.4.0); consumers must ignore an `event_type` they do not know, as `docs/VERSIONING.md` already requires for unknown enum values. Invoice status events are **evaluated as-of** (the row's dates on a date, the same bounds as `/v1/verify`) and their `new` carries `effective_date` and `trigger` (`register_change` — a row in the day's diff; `date_arrival` — a published date reaching its day, reported by the daily calendar scan since release 1.4.0). Each event carries `severity` (`critical` for a supplier losing standing / disappearing / merging / being removed, else `info`), `as_of_date` (the diff's own data date for a register change, the effective day itself for a date arrival — never a wall-clock read inside the extractor), and an Ed25519 `signature`.\n- **Two delivery paths.** **Poll**: `GET /v1/monitor/events?since=<cursor>&limit=<n>` returns your matched events plus a `next_cursor` to page forward. **Webhook (push)**: `POST /v1/monitor/webhook {\"url\":\"https://…\"}` registers a delivery endpoint (`GET`/`DELETE` manage it); the URL is SSRF-guarded (https only, no private/loopback/link-local/metadata targets). Every event is **signed** — verify it offline against `GET /pubkey`, so you (or your auditor) can confirm JP-Verify emitted exactly that event and it was not altered. Both paths (and the digest) carry the NTA open-data `attribution` for each register the batch draws from (the 出典 strings in `jpverify/attribution.py`) — **resellers must pass this through** when the event data is republished.\n- **Scope (APPI):** the 法人番号 register is corporations only (all public). The invoice register can contain individual proprietors (個人事業主); for those a status change is still a public fact tied to the T-number, so the event **carries the registration status only — never name/address**. Corporate name/address changes are public register facts and are included.\n- **Every `/v1/monitor/*` call requires an `X-API-Key`** (since release 1.4.0 — a key-less call receives **401** and is not charged; the key is the only identity a watchlist or webhook is owned by, so nothing depends on the client address; trial keys are free — see `/`; recorded as the security exception in `docs/VERSIONING.md`). Where the feature is not provisioned, `/v1/monitor/*` returns **503**. Availability + counts are reported under `monitor` in `/health`.\n\n### JP-Verify Invoice Facts (document-level, optional)\n`POST /v1/invoice/check` (the invoice's facts as JSON) and `POST /v1/invoice/check/pint` (a JP PINT UBL Invoice sent as `application/xml`) check **one invoice** and return four classes of output, each a numbered rule with a status and a primary-source id: **register facts** about the issuer's 登録番号 — the `/v1/verify` record plus `status_on_date` (registered on the transaction date / period, evaluated against every registration episode the NTA publishes for the number once the mirror's history table is complete — `status_on_date.episode_scope` says `all_published` or `current`); **document checks** — the statutory items of 消費税法57条の4 (six for a 適格請求書, five for a 適格簡易請求書) as presence checks, published-rate checks and **arithmetic on the document's own figures** (per-rate tax within one-yen rounding, sums, totals); the **published transitional-deduction schedule tier** for the evaluation date (80% → 70% on 2026-10-01 → 50% → 30% → 0%) with its NTA/MOF source URLs; and **explicit limitations**. `GET /v1/invoice/rules` publishes the rule catalog (free), and every response and signed record carries `rule_set_version`. **NOT tax advice; no deductibility determination** — there is no verdict field, only per-rule `pass` / `fail` / `unknown` / `not_applicable` and counts; no buyer-side input is accepted. **Invoice content is never stored, logged or echoed**: the response carries no names, descriptions, invoice numbers or amounts — only deltas, dates, codes, rates, the well-formed T-number and a digest (a sole-proprietor issuer's register record is number/status/dates only; a malformed 登録番号 is reported as a finding without its text). A missing or malformed 登録番号 is a metered document finding, not a refusal; request-level defects are refused free (400). Metered **1 unit per document** on every tier; `\"sign\": true` (JSON) / `?sign=1` (XML) returns an Ed25519-signed record (Growth+). A 適格返還請求書 (\"credit note\" in Peppol/UBL vocabulary) is checked as `document_type: return_invoice` (JSON) / `?document_type=return_invoice` on a negative JP PINT `Invoice` 380 (XML) — the caller declares it, the sign of the amounts is reported (`document.amount_sign`) and never used to infer it; a UBL `CreditNote` root is refused free (JP PINT binds only `ubl:Invoice`). A JP BIS Invoice for Non-tax Registered Businesses document (480) is classified (`extraction.bis`, `document_type: non_tax_invoice`) with the 登録番号-keyed rules `not_applicable`. **Batch** (1.4.0): `POST /v1/invoice/check/batch {\"documents\": [...], \"sign\": false, \"bundle\": false}` checks up to the caller's tier batch ceiling of documents in one call — one positional `results[i]` per document carrying exactly the single route's report (or a free `ok: false` reason), metered `checked` units all-or-nothing; on Growth+ `sign` returns a per-document signed record and `bundle` an RFC 6962 Merkle tree over the checked reports with one audit path per document under a signed root, so one document is verifiable without the batch (the stdlib verification recipe is in the batch operation's description below and in the field reference INVOICE_CHECK.md §2c, available on request). **PDF/OCR is not supported** in this release. Field reference: `GET /v1/invoice/rules` (the rule catalog, free) and the response examples below; the full field reference (INVOICE_CHECK.md) is available on request — the evaluation kit carries the integration guide and the demo script.\n\n### Auth & limits\nAnonymous **sandbox**: 50/day per IP — on every metered route **except `/v1/monitor/*`, which requires an `X-API-Key` since release 1.4.0** (a key-less monitor call receives 401 and is not charged; `docs/VERSIONING.md`, security exception). Higher **Starter / Growth / Reseller** tiers via the `X-API-Key` header. Every metered response carries `X-RateLimit-Limit` / `-Remaining` / `-Reset` (429 also sends `Retry-After`). **Batch ceilings** (`/v1/verify`, `/v1/transition-report`, `/v1/monitor/watchlist`): **100** numbers per request on Sandbox/Starter, **500** on Growth, **1000** on Reseller; `/v1/resolve`'s `limit=` caps at **25** (Sandbox/Starter) / **100** (Growth) / **100** (Reseller).\n\n**Idempotency-Key** (opt-in, on `/v1/verify`, `/v1/screen`, `/v1/transition-report`, `/v1/invoice/check`, `/v1/invoice/check/pint`, `/v1/invoice/check/batch`, `/v1/monitor/watchlist`, `/v1/monitor/webhook`): send the same header value on a retry of the identical request to replay the first response (`Idempotent-Replayed: true`, with the same `Cache-Control: no-store` / `Vary: X-API-Key` as the first response — the body is per-key) instead of being metered again; the same key with a **different** request body is refused (**422**) rather than replaying the wrong answer (on `/v1/invoice/check/pint` the fingerprint also covers the effective `transaction_date` / `document_type` / `sign` query parameters, so a different query is refused too). `/v1/invoice/check/batch` caches responses up to 4 MiB and marks a larger one `X-JPVerify-Idempotency: not-cached` (a retry would reprocess and re-meter).\n\n**Request-body caps** (refused free with **413** before the body is buffered or parsed): JSON bodies over 65,536 bytes (64 KiB) on every JSON route; a JP PINT XML document over 1 MiB on `/v1/invoice/check/pint`; a batch over 4 MiB on `/v1/invoice/check/batch`; a PDF over 4 MiB and an image over 6 MiB on the document route (where enabled); a signed record over 524,288 bytes (512 KiB) on `POST /v1/verify-record` — its own cap (env `JPVERIFY_VERIFY_RECORD_MAX_BYTES`), which holds a single-number `/v1/verify` record (≈ 5.9 KB), a signed JP PINT report (68–72 KB) and a signed `POST /v1/verify` batch record of up to ≈ 104–174 numbers depending on the record shape (measured 2026-09-30 on the 2026-09-02 register: 104 registered corporations with the houjin join → 521,337 bytes fit, 105 → 526,256 bytes are refused; individual proprietors 174 / 175); a larger signed batch — the Growth ceiling of 500 numbers is ≈ 2.5 MB, the Reseller ceiling of 1,000 is ≈ 5.0 MB, a 1,000-number transition report ≈ 3.3 MB — is verified **offline** instead: its `signature` against `GET /pubkey`, or its `jws` sibling against `/.well-known/jwks.json` (the same Ed25519 check, no size limit). Every operation that reads a body declares 413.\n\n**Freshness window**: the register is served while its `data_date` is within **10 days** of today (`store.MAX_AGE_DAYS`; both bounds — a date in the future is unhealthy too); in practice the mirror is usually within 1 business day (measured 2026-09-12: `data_date` 20260910, synced 2026-09-11); older → **503**, never silently old data. **Source-relative rule (since 1.4.1):** an older `data_date` is still served while the mirror **is the source's newest publication** — it **equals the newest 差分 the NTA 公表サイト lists as the sync's parser read the page** (or it is the 全件 vintage and that vintage is newer than every listed 差分) — the source has listed nothing newer for at most **15 publication days**, and the sync read that page within **48 hours** — the register cannot be fresher than its source (recorded 2026-09-19: the NTA 公表サイト listed no invoice-register diff dated 2026-09-14〜18 — five publication days — with no notice, while the 法人番号 site kept publishing); a source date the sync could not record — or could only partly read — never widens the window. `GET /health` says which rule applies (`data_as_of.freshness.rule`: `age` / `source-current` / `stale`) beside `source_latest_diff_date`, `source_checked_at` and `source_gap_business_days` (NTA publication days since `data_date` — weekends, national holidays and 12/29–1/3 excluded), and a register **503** body carries the same `data_as_of`, so a caller can tell \"the mirror is behind\" (`data_date` older than `source_latest_diff_date`) from \"the source has not published\" (equal) and from \"the 全件 vintage is newer than every listed 差分\" (`data_date` newer). Every response carries `data_as_of` (`data_date`, `synced_at`, `source`), so the vintage a record was read from is always in the record.\n\n### Privacy (APPI)\nIndividual (個人事業主) issuers return **number + status + dates only** — name/address are never stored or served.\n\n### Signed records (Growth+)\n`sign=1` returns an Ed25519-signed record; verify it offline against `GET /pubkey` or via `POST /v1/verify-record`. Every signed record also carries a compact `jws` (RFC 7515 EdDSA) sibling field over the same payload — verify it with any standard JOSE/JWT library against `GET /.well-known/jwks.json` instead of hand-rolling the bespoke envelope.\n\n_Example:_ `curl \"https://jp-verify.obolpay.xyz/v1/verify?number=T1180301018771\"`\n","contact":{"name":"JP-Verify","url":"https://jp-verify.obolpay.xyz/"},"license":{"name":"Proprietary — commercial terms on request"},"version":"1.0.0"},"paths":{"/":{"get":{"tags":["Meta"],"summary":"Landing page","operationId":"landing","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/health":{"get":{"tags":["Meta"],"summary":"Liveness + register freshness/counts","operationId":"health","responses":{"200":{"description":"Always 200 when the process is up — `register_available` carries the actual liveness fact.","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Health"},"example":{"ok":true,"service":"JP-Verify","version":"0.1.0","api_version":"1.0.0","register_available":true,"register_count":5003011,"register_history":{"complete":true,"rows":5435504,"missing_diff_dates":[]},"data_as_of":{"zenken_date":"20260831","last_diff_date":"20260911","synced_at":"2026-09-22T00:00:31+00:00","source":"https://www.invoice-kohyo.nta.go.jp/download/zenken","data_date":"20260911","source_latest_diff_date":"20260911","source_checked_at":"2026-09-22T00:00:30+00:00","source_gap_business_days":5,"freshness":{"rule":"source-current","max_age_days":10,"source_check_max_hours":48,"source_gap_max_business_days":15}},"romaji":true,"sanctions_screening":{"available":false},"alphabet_names":{"available":false},"resolve":{"available":false},"monitor":{"available":false},"edinet":{"available":false},"invoice_documents":{"enabled":false,"pdf":false,"ocr":false},"overage":{"enabled":false,"cap_multiplier":2,"notice_percent":80}}}}}}}},"/pubkey":{"get":{"tags":["Evidence"],"summary":"Ed25519 public key for verifying signed records","operationId":"pubkey","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Pubkey"}}}}}}},"/.well-known/jwks.json":{"get":{"tags":["Evidence"],"summary":"RFC 7517 JWKS document (verifies a signed record's `jws` sibling)","description":"RFC 7517 JWKS document for the SAME Ed25519 key as GET /pubkey (RFC 8037 OKP/Ed25519\nencoding) — verify a signed record's compact `jws` sibling field with any standard\nJOSE/JWT library instead of hand-rolling the bespoke signed_record envelope.","operationId":"jwks","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Jwks"}}}}}}},"/v1/verify":{"get":{"tags":["Verification"],"summary":"Verify one or many T-numbers","operationId":"verifyGet","parameters":[{"name":"number","in":"query","required":false,"schema":{"type":"string","description":"a single T-number","default":"","title":"Number"},"description":"a single T-number"},{"name":"numbers","in":"query","required":false,"schema":{"type":"string","description":"comma-separated T-numbers","default":"","title":"Numbers"},"description":"comma-separated T-numbers"},{"name":"corporate_number","in":"query","required":false,"schema":{"type":"string","description":"reverse lookup: a 13-digit 法人番号 (Corporate Number). A qualified-invoice number is T + the 法人番号 for corporations, so this resolves deterministically to its T-number and verifies it.","default":"","title":"Corporate Number"},"description":"reverse lookup: a 13-digit 法人番号 (Corporate Number). A qualified-invoice number is T + the 法人番号 for corporations, so this resolves deterministically to its T-number and verifies it."},{"name":"sign","in":"query","required":false,"schema":{"type":"integer","default":0,"title":"Sign"}},{"name":"include","in":"query","required":false,"schema":{"type":"string","description":"comma-separated add-ons. `shareholders` embeds each corporate result's full `major_shareholders` block (holders[] and filings[]) instead of the free compact object, and costs +1 unit per result that actually carries rows (`status: available`); a status-only answer costs nothing extra. Ignored where the feature is off.","default":"","title":"Include"},"description":"comma-separated add-ons. `shareholders` embeds each corporate result's full `major_shareholders` block (holders[] and filings[]) instead of the free compact object, and costs +1 unit per result that actually carries rows (`status: available`); a status-only answer costs nothing extra. Ignored where the feature is off."},{"name":"X-API-Key","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Api-Key"}}],"responses":{"200":{"description":"One record per well-formed input number (a `not_registered` or `invalid` record carries every documented key, null where the register has nothing to say — never an absent key); malformed inputs are listed under `invalid[]`, unmetered. The example is the real response of this code on a sample register.","content":{"application/json":{"schema":{},"example":{"count":2,"results":[{"number":"T8200012010001","valid_format":true,"status":"registered","status_ja":"有効","registration_date":"2023-10-01","update_date":"2023-09-05","expire_date":null,"disposal_date":null,"kind":"corporation","kind_code":"2","latest_history_flag":"1","process_code":"01","corporate_number":"8200012010001","name_ja":"株式会社サンプル","name_en":"Sample Co., Ltd.","name_en_source":"official-en","address_ja":"東京都千代田区丸の内1-1-1","address_en":"Tokyo, Chiyoda-ku, Marunouchi 1-1-1","address_en_source":"generated","input_credit":{"qualified_invoice_issuer":true,"note":"registered qualified-invoice issuer (適格請求書発行事業者): this number can back a consumption-tax qualified invoice as of 2026-09-01","disclaimer":"factual registration status from the 国税庁 register; NOT tax advice. A buyer's consumption-tax input-credit entitlement depends on their own facts and the transitional measures — consult NTA guidance or a tax adviser."},"summary":"Sample Co., Ltd. — registered qualified-invoice issuer (T8200012010001), registered 2023-10-01 (active)","country_classification":{"code":"1","label":"国内事業者"},"invoice_address_jis":{"prefecture_code":"13","city_code":"101"},"registered_address":{"prefecture":"東京都","city":"千代田区","street":"1-1-1","postal_code":"100-0005","jis_prefecture_code":"13","jis_city_code":"101","address_outside_japan":null},"registry_closure":null,"corporate_number_assigned_on":"2015-10-05","assigned_on_note":"corporate_number_assigned_on is the 法人番号 register's OWN assignment date (法人番号指定年月日) — it is DERIVED, not the entity's date of incorporation, and must never be labelled as one: a number assigned at the register's 2015-10 system launch reflects the launch date for every pre-existing corporation, not when that corporation was actually incorporated; a number assigned later (on/after a later incorporation or registration event) approximates the registration date more closely, but is still the register's assignment date, not a court/incorporation record.","corporate_number_published":true,"edinet":{"edinet_code":"E99999","filer_type":"内国法人・組合","listed":true,"listing_label":"上場","securities_code":"99990","list_date":"20260908","edinet_candidates":1}},{"number":"T7400012010007","valid_format":true,"status":"not_registered","status_ja":"未登録","registration_date":null,"update_date":null,"expire_date":null,"disposal_date":null,"kind":null,"kind_code":null,"latest_history_flag":null,"process_code":null,"corporate_number":null,"name_ja":null,"name_en":null,"name_en_source":null,"address_ja":null,"address_en":null,"address_en_source":null,"note":"well-formed number, but not present in the NTA register as of 2026-09-01","input_credit":{"qualified_invoice_issuer":false,"note":"not present in the qualified-invoice register as of 2026-09-01 — this number cannot back a qualified invoice","disclaimer":"factual registration status from the 国税庁 register; NOT tax advice. A buyer's consumption-tax input-credit entitlement depends on their own facts and the transitional measures — consult NTA guidance or a tax adviser."},"summary":"T7400012010007 — not a registered qualified-invoice issuer as of 2026-09-01","country_classification":null,"invoice_address_jis":null,"corporate_number_published":false}],"invalid":[{"number":"T1234","reason":"format: expected 'T' followed by 13 ASCII digits"}],"data_as_of":{"zenken_date":"20260831","last_diff_date":"20260901","synced_at":"2026-09-02T05:30:38+00:00","source":"https://www.invoice-kohyo.nta.go.jp/download/zenken","data_date":"20260901"},"source":"https://www.invoice-kohyo.nta.go.jp/download/zenken","tier":"sandbox","remaining":48,"romaji_note":"name_en / address_en carry name_en_source / address_en_source: 'official-en' = the English form the corporation itself filed with the 法人番号 register (authoritative); 'generated' = best-effort deterministic machine romanisation (NOT authoritative — only 0.30% of the 5,009,012 ACTIVE corporations in the 法人番号 register have filed an official English name, measured on the 20260831 全件 file, so this is the common case). Either way the authoritative fields remain name_ja / address_ja and the registration status/dates.","disclaimer":"a faithful mirror of NTA-published data; not tax advice","attribution":["出典：国税庁適格請求書発行事業者公表サイト（国税庁）（https://www.invoice-kohyo.nta.go.jp/）を加工して作成","出典：国税庁法人番号公表サイト（国税庁）（https://www.houjin-bangou.nta.go.jp/）を加工して作成","出典：EDINET閲覧（提出）サイト（https://disclosure2.edinet-fsa.go.jp/weee0010.aspx）、PDL1.0（https://www.digital.go.jp/resources/open_data/public_data_license_v1.0）"],"notice":"本サービスは国税庁公表データ（全件・差分ダウンロードファイル）を JP-Verify が加工して作成したものであり、国税庁が作成したものではなく、内容は国税庁によって保証されたものではありません。 Based on NTA-published bulk data, processed by JP-Verify; not produced or guaranteed by the NTA.","english_name_register":{"source":"https://www.houjin-bangou.nta.go.jp/","data_date":"20260831","attribution":"出典：国税庁法人番号公表サイト（国税庁）（https://www.houjin-bangou.nta.go.jp/）を加工して作成","note":"vintage of the 法人番号 register behind any name_en_source / address_en_source of 'official-en'"},"edinet_register":{"source":"EDINETコードリスト（EDINET閲覧（提出）サイト・金融庁）","source_url":"https://disclosure2.edinet-fsa.go.jp/weee0010.aspx","list_date":"20260908","license":"PDL1.0","license_url":"https://www.digital.go.jp/resources/open_data/public_data_license_v1.0","attribution":"出典：EDINET閲覧（提出）サイト（https://disclosure2.edinet-fsa.go.jp/weee0010.aspx）、PDL1.0（https://www.digital.go.jp/resources/open_data/public_data_license_v1.0）","processing_note":"EDINETコードリストをもとに株式会社ヤナギtheファースト（JP-Verify）が編集・加工して作成","note":"presence in the EDINET code list as of list_date; absence (edinet: null) means not on that list, not a claim about the entity"}}}}},"400":{"description":"Malformed input — refused before metering; nothing was charged.","content":{"application/json":{"example":{"error":"no well-formed numbers — nothing was charged","invalid":[]},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unknown, inactive, or expired API key.","content":{"application/json":{"example":{"error":"unknown or inactive API key","tier":"invalid","hint":"see / for pricing; set X-API-Key for higher limits"},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"429":{"description":"Quota exceeded for the caller's tier.","content":{"application/json":{"example":{"error":"sandbox daily quota exceeded","tier":"sandbox","hint":"see / for pricing; set X-API-Key for higher limits"},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"The register, or an optional feature, is unavailable or not configured on this deployment. A register 503 (since 1.4.1) also carries the mirror's `data_as_of` with the source fields — `source_latest_diff_date` (the newest 差分 the NTA 公表サイト listed when the sync last read it), `source_checked_at`, `source_gap_business_days` and `freshness.rule` (`stale` here) — so a caller can tell a mirror that is behind its source (`data_date` older than `source_latest_diff_date`) from a source that has not published (equal, but `source_checked_at` older than `freshness.source_check_max_hours`); `data_as_of` is null when the mirror is absent. Nothing was charged.","content":{"application/json":{"example":{"error":"register temporarily unavailable (not synced or stale beyond the freshness window)","data_as_of":{"zenken_date":"20260831","last_diff_date":"20260911","synced_at":"2026-09-20T13:27:04+00:00","source":"https://www.invoice-kohyo.nta.go.jp/download/zenken","data_date":"20260911","source_latest_diff_date":"20260911","source_checked_at":"2026-09-20T13:27:03+00:00","source_gap_business_days":6,"freshness":{"rule":"stale","max_age_days":10,"source_check_max_hours":48,"source_gap_max_business_days":15}}},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{},{"ApiKeyAuth":[]}]},"post":{"tags":["Verification"],"summary":"Verify one or many T-numbers (batch)","operationId":"verifyPost","parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Api-Key"}}],"responses":{"200":{"description":"One record per well-formed input number (a `not_registered` or `invalid` record carries every documented key, null where the register has nothing to say — never an absent key); malformed inputs are listed under `invalid[]`, unmetered. The example is the real response of this code on a sample register.","content":{"application/json":{"schema":{},"example":{"count":2,"results":[{"number":"T8200012010001","valid_format":true,"status":"registered","status_ja":"有効","registration_date":"2023-10-01","update_date":"2023-09-05","expire_date":null,"disposal_date":null,"kind":"corporation","kind_code":"2","latest_history_flag":"1","process_code":"01","corporate_number":"8200012010001","name_ja":"株式会社サンプル","name_en":"Sample Co., Ltd.","name_en_source":"official-en","address_ja":"東京都千代田区丸の内1-1-1","address_en":"Tokyo, Chiyoda-ku, Marunouchi 1-1-1","address_en_source":"generated","input_credit":{"qualified_invoice_issuer":true,"note":"registered qualified-invoice issuer (適格請求書発行事業者): this number can back a consumption-tax qualified invoice as of 2026-09-01","disclaimer":"factual registration status from the 国税庁 register; NOT tax advice. A buyer's consumption-tax input-credit entitlement depends on their own facts and the transitional measures — consult NTA guidance or a tax adviser."},"summary":"Sample Co., Ltd. — registered qualified-invoice issuer (T8200012010001), registered 2023-10-01 (active)","country_classification":{"code":"1","label":"国内事業者"},"invoice_address_jis":{"prefecture_code":"13","city_code":"101"},"registered_address":{"prefecture":"東京都","city":"千代田区","street":"1-1-1","postal_code":"100-0005","jis_prefecture_code":"13","jis_city_code":"101","address_outside_japan":null},"registry_closure":null,"corporate_number_assigned_on":"2015-10-05","assigned_on_note":"corporate_number_assigned_on is the 法人番号 register's OWN assignment date (法人番号指定年月日) — it is DERIVED, not the entity's date of incorporation, and must never be labelled as one: a number assigned at the register's 2015-10 system launch reflects the launch date for every pre-existing corporation, not when that corporation was actually incorporated; a number assigned later (on/after a later incorporation or registration event) approximates the registration date more closely, but is still the register's assignment date, not a court/incorporation record.","corporate_number_published":true,"edinet":{"edinet_code":"E99999","filer_type":"内国法人・組合","listed":true,"listing_label":"上場","securities_code":"99990","list_date":"20260908","edinet_candidates":1}},{"number":"T7300012010009","valid_format":true,"status":"registered","status_ja":"有効","registration_date":"2024-04-01","update_date":"2024-03-15","expire_date":null,"disposal_date":null,"kind":"individual","kind_code":"1","latest_history_flag":"1","process_code":"01","corporate_number":null,"name_ja":null,"name_en":null,"name_en_source":null,"address_ja":null,"address_en":null,"address_en_source":null,"notes":["individual issuers: only registration number, status and dates are returned — name/address are withheld by design (個人情報保護)"],"input_credit":{"qualified_invoice_issuer":true,"note":"registered qualified-invoice issuer (適格請求書発行事業者): this number can back a consumption-tax qualified invoice as of 2026-09-01","disclaimer":"factual registration status from the 国税庁 register; NOT tax advice. A buyer's consumption-tax input-credit entitlement depends on their own facts and the transitional measures — consult NTA guidance or a tax adviser."},"summary":"an individual issuer — registered qualified-invoice issuer (T7300012010009), registered 2024-04-01 (active)","country_classification":{"code":"1","label":"国内事業者"},"invoice_address_jis":{"prefecture_code":null,"city_code":null},"corporate_number_published":false}],"invalid":[],"data_as_of":{"zenken_date":"20260831","last_diff_date":"20260901","synced_at":"2026-09-02T05:30:38+00:00","source":"https://www.invoice-kohyo.nta.go.jp/download/zenken","data_date":"20260901"},"source":"https://www.invoice-kohyo.nta.go.jp/download/zenken","tier":"sandbox","remaining":48,"romaji_note":"name_en / address_en carry name_en_source / address_en_source: 'official-en' = the English form the corporation itself filed with the 法人番号 register (authoritative); 'generated' = best-effort deterministic machine romanisation (NOT authoritative — only 0.30% of the 5,009,012 ACTIVE corporations in the 法人番号 register have filed an official English name, measured on the 20260831 全件 file, so this is the common case). Either way the authoritative fields remain name_ja / address_ja and the registration status/dates.","disclaimer":"a faithful mirror of NTA-published data; not tax advice","attribution":["出典：国税庁適格請求書発行事業者公表サイト（国税庁）（https://www.invoice-kohyo.nta.go.jp/）を加工して作成","出典：国税庁法人番号公表サイト（国税庁）（https://www.houjin-bangou.nta.go.jp/）を加工して作成","出典：EDINET閲覧（提出）サイト（https://disclosure2.edinet-fsa.go.jp/weee0010.aspx）、PDL1.0（https://www.digital.go.jp/resources/open_data/public_data_license_v1.0）"],"notice":"本サービスは国税庁公表データ（全件・差分ダウンロードファイル）を JP-Verify が加工して作成したものであり、国税庁が作成したものではなく、内容は国税庁によって保証されたものではありません。 Based on NTA-published bulk data, processed by JP-Verify; not produced or guaranteed by the NTA.","english_name_register":{"source":"https://www.houjin-bangou.nta.go.jp/","data_date":"20260831","attribution":"出典：国税庁法人番号公表サイト（国税庁）（https://www.houjin-bangou.nta.go.jp/）を加工して作成","note":"vintage of the 法人番号 register behind any name_en_source / address_en_source of 'official-en'"},"edinet_register":{"source":"EDINETコードリスト（EDINET閲覧（提出）サイト・金融庁）","source_url":"https://disclosure2.edinet-fsa.go.jp/weee0010.aspx","list_date":"20260908","license":"PDL1.0","license_url":"https://www.digital.go.jp/resources/open_data/public_data_license_v1.0","attribution":"出典：EDINET閲覧（提出）サイト（https://disclosure2.edinet-fsa.go.jp/weee0010.aspx）、PDL1.0（https://www.digital.go.jp/resources/open_data/public_data_license_v1.0）","processing_note":"EDINETコードリストをもとに株式会社ヤナギtheファースト（JP-Verify）が編集・加工して作成","note":"presence in the EDINET code list as of list_date; absence (edinet: null) means not on that list, not a claim about the entity"}}}}},"413":{"description":"Request body over the size cap — refused before it was buffered or parsed; nothing was charged.","content":{"application/json":{"example":{"error":"request body too large (max 65536 bytes)"},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"400":{"description":"Malformed input — refused before metering; nothing was charged.","content":{"application/json":{"example":{"error":"no well-formed numbers — nothing was charged","invalid":[]},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unknown, inactive, or expired API key.","content":{"application/json":{"example":{"error":"unknown or inactive API key","tier":"invalid","hint":"see / for pricing; set X-API-Key for higher limits"},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"429":{"description":"Quota exceeded for the caller's tier.","content":{"application/json":{"example":{"error":"sandbox daily quota exceeded","tier":"sandbox","hint":"see / for pricing; set X-API-Key for higher limits"},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"The register, or an optional feature, is unavailable or not configured on this deployment. A register 503 (since 1.4.1) also carries the mirror's `data_as_of` with the source fields — `source_latest_diff_date` (the newest 差分 the NTA 公表サイト listed when the sync last read it), `source_checked_at`, `source_gap_business_days` and `freshness.rule` (`stale` here) — so a caller can tell a mirror that is behind its source (`data_date` older than `source_latest_diff_date`) from a source that has not published (equal, but `source_checked_at` older than `freshness.source_check_max_hours`); `data_as_of` is null when the mirror is absent. Nothing was charged.","content":{"application/json":{"example":{"error":"register temporarily unavailable (not synced or stale beyond the freshness window)","data_as_of":{"zenken_date":"20260831","last_diff_date":"20260911","synced_at":"2026-09-20T13:27:04+00:00","source":"https://www.invoice-kohyo.nta.go.jp/download/zenken","data_date":"20260911","source_latest_diff_date":"20260911","source_checked_at":"2026-09-20T13:27:03+00:00","source_gap_business_days":6,"freshness":{"rule":"stale","max_age_days":10,"source_check_max_hours":48,"source_gap_max_business_days":15}}},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{},{"ApiKeyAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"description":"``POST /v1/verify`` body.","properties":{"numbers":{"description":"T-numbers to verify (a comma-joined string is also accepted); up to the caller's tier batch ceiling — see the service description","items":{"type":"string"},"title":"Numbers","type":"array"},"sign":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":false,"description":"return an Ed25519-signed record (Growth/Reseller keys only; otherwise the response says so and signs nothing)","title":"Sign"},"include":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"description":"add-ons to embed in each result (1.5.0; a comma-separated string is also accepted). `shareholders` replaces the free compact `major_shareholders` object with the full block (holders[] and filings[]) and costs +1 unit per corporate result that actually carries rows; a status-only answer costs nothing extra. Unknown members are ignored.","title":"Include"}},"required":["numbers"],"title":"VerifyRequest","type":"object"},"example":{"numbers":["T8200012010001","T7300012010009"],"sign":false}}}}}},"/v1/transition-report":{"post":{"tags":["Compliance"],"summary":"2026-10 消費税経過措置 移行レポート(一括・署名可)","description":"One-shot supplier-list report for the 2026-10-01 transitional-deduction step-down.\n\nPOST ``{\"numbers\": [\"T…\", …], \"sign\": true, \"enroll\": true, \"as_of\": \"YYYY-MM-DD\"}``\n(up to the caller's tier batch ceiling — see /v1/verify). For every supplier:\nregistration status against the NTA qualified-invoice register and the FACTUAL\nconsequence for the buyer's transitional deduction (registered → qualified invoices\navailable; not registered/expired/revoked → the transitional deduction drops from 80% to\n**70% on 2026-10-01**, then 50%/30% stepping to 0% by 2031 — public schedule of 令和8年度\n税制改正). ``as_of`` (default: today) selects the reference date for the additive\n``applicable_deduction`` / ``next_change`` fields on each non-registered supplier and the\ntop-level ``upcoming_milestones`` list — the existing ``transitional_deduction`` table\n(the full published schedule) is unchanged either way. Every supplier also carries\n``counterparty`` (``{type, basis}`` — a register-kind classification, \"unknown\" when\nthe register carries no kind for that number; see\njpverify.transition.classify_counterparty). **NOT tax advice**: this reports the\nsupplier-side register facts and the published schedule only; the buyer's own entitlement\n(including the per-supplier 年1億円 cap on the transitional deduction for periods\nbeginning on/after 2026-10-01, which depends on the buyer's own purchase ledger that this\nservice does not hold) is for the buyer's tax adviser. ``sign:true`` returns an Ed25519\nsigned record (Growth/Reseller) with a sibling compact ``jws`` token (verify against\nGET /.well-known/jwks.json). ``enroll:true`` additionally subscribes every valid number\nto the caller's register-change watchlist (see /v1/monitor/*) so later 失効/取消 arrive\nas signed events. Metered per number like /v1/verify; malformed input is refused free.\nOpt-in ``Idempotency-Key`` request header: a retry with the same key + request body\nreplays the first response (``Idempotent-Replayed: true``) instead of being re-metered.","operationId":"transitionReport","parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Api-Key"}}],"responses":{"200":{"description":"Per-supplier transition-deduction report.","content":{"application/json":{"schema":{}}}},"413":{"description":"Request body over the size cap — refused before it was buffered or parsed; nothing was charged.","content":{"application/json":{"example":{"error":"request body too large (max 65536 bytes)"},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"400":{"description":"Malformed input — refused before metering; nothing was charged.","content":{"application/json":{"example":{"error":"no well-formed numbers — nothing was charged","invalid":[]},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unknown, inactive, or expired API key.","content":{"application/json":{"example":{"error":"unknown or inactive API key","tier":"invalid","hint":"see / for pricing; set X-API-Key for higher limits"},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"429":{"description":"Quota exceeded for the caller's tier.","content":{"application/json":{"example":{"error":"sandbox daily quota exceeded","tier":"sandbox","hint":"see / for pricing; set X-API-Key for higher limits"},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"The register, or an optional feature, is unavailable or not configured on this deployment. A register 503 (since 1.4.1) also carries the mirror's `data_as_of` with the source fields — `source_latest_diff_date` (the newest 差分 the NTA 公表サイト listed when the sync last read it), `source_checked_at`, `source_gap_business_days` and `freshness.rule` (`stale` here) — so a caller can tell a mirror that is behind its source (`data_date` older than `source_latest_diff_date`) from a source that has not published (equal, but `source_checked_at` older than `freshness.source_check_max_hours`); `data_as_of` is null when the mirror is absent. Nothing was charged.","content":{"application/json":{"example":{"error":"register temporarily unavailable (not synced or stale beyond the freshness window)","data_as_of":{"zenken_date":"20260831","last_diff_date":"20260911","synced_at":"2026-09-20T13:27:04+00:00","source":"https://www.invoice-kohyo.nta.go.jp/download/zenken","data_date":"20260911","source_latest_diff_date":"20260911","source_checked_at":"2026-09-20T13:27:03+00:00","source_gap_business_days":6,"freshness":{"rule":"stale","max_age_days":10,"source_check_max_hours":48,"source_gap_max_business_days":15}}},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{},{"ApiKeyAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"description":"``POST /v1/transition-report`` body.","properties":{"numbers":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"description":"T-numbers / 法人番号 to report on","title":"Numbers"},"corporate_numbers":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"description":"alternative field name for `numbers` (either works; provide one)","title":"Corporate Numbers"},"as_of":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"reference date 'YYYY-MM-DD' for the deduction-rate fields (default: today)","title":"As Of"},"sign":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":false,"description":"Ed25519-signed record (Growth/Reseller keys only)","title":"Sign"},"enroll":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":false,"description":"also subscribe every valid number to the caller's register-change watchlist (see /v1/monitor/*)","title":"Enroll"}},"title":"TransitionReportRequest","type":"object"},"example":{"as_of":"2026-10-01","enroll":false,"numbers":["T1180301018771"],"sign":false}}}}}},"/v1/invoice/check":{"post":{"tags":["Compliance"],"summary":"JP-Verify Invoice Facts — one invoice's register, statutory-item, arithmetic and schedule facts (JSON)","description":"Check ONE invoice from its facts (see ``InvoiceCheckRequest``). What is checked: the\nissuer's 登録番号 against the NTA register — well-formed (REG-01), present (REG-02) and\nregistered on the transaction date / period (REG-03, evaluated against every registration\nepisode the NTA publishes for the number once the mirror's history table is complete —\n``status_on_date.episode_scope`` says which); the statutory items of 消費税法57条の4 as\npresence checks (ITEM-01..06);\nthe printed rates (RATE-01..03); arithmetic on the document's own figures (ARITH-01..05 —\nper-rate tax within one-yen rounding, sums, totals); plus the published\ntransitional-deduction schedule tier for the evaluation date with its source URLs, and the\nregister/document-name comparison (``name_match``, never a verdict). Every rule carries a\nstatus (``pass`` / ``fail`` / ``unknown`` / ``not_applicable``), a detail and a source id;\n``rule_set_version`` names the rule set (catalog: GET /v1/invoice/rules).\n\n**NOT tax advice**: register facts, document checks and the published schedule only; no\ndetermination of any deduction, credit or entitlement — the buyer's consumption-tax\ntreatment is for the taxpayer and their 税理士. No buyer-side input is accepted.\n\nFree refusal (400, nothing charged) for request-level defects only: not an object, missing\nor malformed ``issue_date``, both ``transaction_date`` and ``transaction_period``, a bad\n``document_type`` / ``category`` / ``amount_basis`` / ``currency``, more than 10\n``tax_lines``, a non-numeric amount (negative amounts are accepted on every document type\nand reported as ``document.amount_sign``), ``return_date`` on a document type other than\n``return_invoice`` (適格返還請求書 — declared by the caller, never inferred), an over-long name, a\n``supplier_t_number`` that is not number-shaped (longer than 32 characters) or a string\nthat cannot be UTF-8 encoded. A missing or malformed 登録番号 is a document finding and is\nmetered — reported as a finding WITHOUT its text (``document.supplier_t_number`` is null,\n``document.supplier_t_number_state`` says ``malformed``). Metered 1 unit per document on\nevery tier. ``\"sign\": true`` returns an Ed25519-signed record with a sibling compact\n``jws`` (Growth / Reseller keys; other tiers get ``signed_record: null`` and a note).\nOpt-in ``Idempotency-Key`` request header: a retry with the same key + body replays the\nfirst response (``Idempotent-Replayed: true``) instead of being re-metered. Names and\namounts are consumed in memory only — never stored, logged or echoed; the digest carries\nno name.","operationId":"invoiceCheck","parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Api-Key"}}],"responses":{"200":{"description":"One document's register facts, document checks, published schedule tier and limitations — every rule with a status and a source; never a verdict. Two real responses on the sample register: a registered issuer, and a malformed 登録番号 reported as a finding whose `register` record is `invalid` with every key present (null) and the printed text never echoed.","content":{"application/json":{"schema":{},"examples":{"registered_issuer":{"summary":"a registered issuer's invoice","value":{"product":"JP-Verify Invoice Facts","rule_set_version":"2026-09-18.1","document":{"input":"facts","document_type":"qualified_invoice","digest":{"alg":"sha256","over":"canonical-facts-json","value":"0b33a862e532b19517beceba46d9728fdb437dbba79dfbf3824d75885ff79fcb"},"supplier_t_number":"T8200012010001","supplier_t_number_state":"well_formed","issue_date":"2026-10-05","transaction_date":"2026-09-28","transaction_period":null,"currency":"JPY","amount_sign":"positive","evaluation_dates":{"dates":["2026-09-28"],"basis":"transaction_date"}},"register":{"number":"T8200012010001","valid_format":true,"status":"registered","status_ja":"有効","registration_date":"2023-10-01","update_date":"2023-09-05","expire_date":null,"disposal_date":null,"kind":"corporation","kind_code":"2","latest_history_flag":"1","process_code":"01","corporate_number":"8200012010001","name_ja":"株式会社サンプル","name_en":"Sample Co., Ltd.","name_en_source":"official-en","address_ja":"東京都千代田区丸の内1-1-1","address_en":"Tokyo, Chiyoda-ku, Marunouchi 1-1-1","address_en_source":"generated","input_credit":{"qualified_invoice_issuer":true,"note":"registered qualified-invoice issuer (適格請求書発行事業者): this number can back a consumption-tax qualified invoice as of 2026-09-01","disclaimer":"factual registration status from the 国税庁 register; NOT tax advice. A buyer's consumption-tax input-credit entitlement depends on their own facts and the transitional measures — consult NTA guidance or a tax adviser."},"summary":"Sample Co., Ltd. — registered qualified-invoice issuer (T8200012010001), registered 2023-10-01 (active)"},"status_on_date":{"dates":["2026-09-28"],"basis":"transaction_date","registered":true,"per_date":[{"date":"2026-09-28","registered":true,"reason":"registration_date <= D < end (end = disposal_date / expire_date, or open)"}],"registration_date":"2023-10-01","disposal_date":null,"expire_date":null,"rule":"registered on D iff registration_date <= D and (disposal_date is null or D < disposal_date) and (expire_date is null or D < expire_date) — evaluated on the current registration episode","boundary_case":false,"after_data_as_of":true,"episode_scope":"current","note":null,"limitation_ids":["L1","L2","L4","L8"],"limitations":["Evaluated against the CURRENT registration episode only: the mirror stores the NTA latest-history row per number. If this number was cancelled or expired and later registered again, a date inside the earlier episode is reported as not registered — a false negative from this cause, not a false positive from it.","Dates are as currently published (data_as_of), including any later NTA corrections; what the site displayed on the evaluation date cannot be reconstructed. An evaluation date after data_as_of is judged on the current row — a later 失効/取消 cannot be known yet.","A new registration is posted the day after 登録簿 entry, and JP-Verify syncs on its own cadence; a number can be legally effective before it is visible here.","A 削除 (処理区分 99) row in the NTA daily diff file is applied to the mirror at the next diff sync (three times a day); until then a number the NTA has removed from the 登録簿 can read as registered here. The NTA may re-publish a deleted number later (measured: 45 of 238 bare deletions in 40 diff days re-appeared within the archive)."],"sources":["S-25","S-26","S-27","S-28","S-29","S-31","S-33"]},"name_match":{"level":"exact","reason":null,"compared_to":"name_ja","matched_field":"seller_name","method":"NFKC + whitespace/punctuation/legal-form normalisation, then jpverify.namevariants rule-enumerable variants — not fuzzy","note":"a name match is NOT entity identity; same-name companies are common; the NTA register holds no name history, so the comparison is against the name as currently published; a trade name (屋号) or abbreviation is permitted on the document when the issuer is otherwise identifiable (NTA Q&A 問55) — 'none' is a prompt to confirm with the supplier, not a finding"},"rules":[{"id":"REG-01","group":"register","title":"Registration number is well-formed (T + 13 ASCII digits, valid check digit)","subject":"document","status":"pass","detail":"well-formed","source":"S-64","sources":["S-64","S-46"]},{"id":"REG-02","group":"register","title":"Number present in the NTA register as of data_as_of","subject":"document","status":"pass","detail":"row present in the NTA register as of data_as_of (current status: registered)","source":"S-32","sources":["S-32"]},{"id":"REG-03","group":"register","title":"Registered on the evaluation date(s)","subject":"document","status":"pass","detail":"registered on every evaluation date: registration_date <= D, and D before any disposal_date / expire_date","source":"S-28","sources":["S-28","S-29","S-31","S-25","S-33","S-77"]},{"id":"ITEM-01","group":"statutory_items","title":"① 適格請求書発行事業者の氏名又は名称 及び 登録番号","subject":"document","status":"pass","detail":"issuer name present and 登録番号 well-formed","source":"S-01","sources":["S-01","S-04","S-15"]},{"id":"ITEM-02","group":"statutory_items","title":"② 課税資産の譲渡等を行った年月日 (or 一定の期間); return_invoice: 返還等を行う年月日 and the original 課税資産の譲渡等を行った年月日/期間 (57条の4③二)","subject":"document","status":"pass","detail":"transaction_date supplied","source":"S-01","sources":["S-01","S-04","S-79","S-80"]},{"id":"ITEM-03","group":"statutory_items","title":"③ 資産又は役務の内容 (+ 軽減対象である旨)","subject":"document","status":"pass","detail":"description stated and 軽減対象である旨 marked","source":"S-01","sources":["S-01","S-04","S-13"]},{"id":"ITEM-04","group":"statutory_items","title":"④ 税率ごとに区分した税抜/税込合計額 及び 適用税率","subject":"document","status":"pass","detail":"every taxable line states both its amount and 適用税率","source":"S-01","sources":["S-01","S-04"]},{"id":"ITEM-05","group":"statutory_items","title":"⑤ 税率ごとに区分した消費税額等","subject":"document","status":"pass","detail":"every taxable line states its 消費税額等","source":"S-01","sources":["S-01","S-04","S-05","S-77","S-78","S-79"]},{"id":"ITEM-06","group":"statutory_items","title":"⑥ 書類の交付を受ける事業者の氏名又は名称","subject":"document","status":"pass","detail":"recipient name present","source":"S-01","sources":["S-01","S-04"]},{"id":"RATE-01","group":"rates","title":"Rate value is a published consumption-tax rate","subject":"tax_lines[0]","status":"pass","detail":"10% is a published consumption-tax rate","source":"S-13","sources":["S-13"]},{"id":"RATE-01","group":"rates","title":"Rate value is a published consumption-tax rate","subject":"tax_lines[1]","status":"pass","detail":"8% is a published consumption-tax rate","source":"S-13","sources":["S-13"]},{"id":"RATE-02","group":"rates","title":"8% line is disambiguated (軽減税率 8% = 6.24 + 1.76 vs 経過措置 旧税率 8% = 6.3 + 1.7)","subject":"tax_lines[0]","status":"not_applicable","detail":"not an 8% line","source":"S-13","sources":["S-13"]},{"id":"RATE-02","group":"rates","title":"8% line is disambiguated (軽減税率 8% = 6.24 + 1.76 vs 経過措置 旧税率 8% = 6.3 + 1.7)","subject":"tax_lines[1]","status":"pass","detail":"8% line stated as reduced","source":"S-13","sources":["S-13"]},{"id":"RATE-03","group":"rates","title":"Category ↔ rate coherence","subject":"tax_lines[0]","status":"pass","detail":"standard ↔ 10%","source":"S-13","sources":["S-13"]},{"id":"RATE-03","group":"rates","title":"Category ↔ rate coherence","subject":"tax_lines[1]","status":"pass","detail":"reduced ↔ 8%","source":"S-13","sources":["S-13"]},{"id":"ARITH-01","group":"arithmetic","title":"Per-rate tax amount equals amount × rate within one-yen rounding","subject":"tax_lines[0]","status":"pass","detail":"10% line: tax amount is an integer inside [floor, ceiling] of the computed product ×10/100 (tax-exclusive basis)","source":"S-02","sources":["S-02","S-08","S-47"],"delta_yen":"0"},{"id":"ARITH-01","group":"arithmetic","title":"Per-rate tax amount equals amount × rate within one-yen rounding","subject":"tax_lines[1]","status":"pass","detail":"8% line: tax amount is an integer inside [floor, ceiling] of the computed product ×8/100 (tax-exclusive basis)","source":"S-02","sources":["S-02","S-08","S-47"],"delta_yen":"0"},{"id":"ARITH-02","group":"arithmetic","title":"JPY tax amounts are integers","subject":"document","status":"pass","detail":"every stated tax amount is a whole yen","source":"S-02","sources":["S-02","S-48"]},{"id":"ARITH-03","group":"arithmetic","title":"Σ line amounts = the matching total","subject":"totals","status":"pass","detail":"Σ line amounts = tax_exclusive_total","source":"S-01","sources":["S-01"],"delta_yen":"0"},{"id":"ARITH-04","group":"arithmetic","title":"Σ line tax amounts = totals.tax_total","subject":"totals","status":"pass","detail":"Σ line tax amounts = tax_total","source":"S-01","sources":["S-01"],"delta_yen":"0"},{"id":"ARITH-05","group":"arithmetic","title":"tax_exclusive_total + tax_total = tax_inclusive_total","subject":"totals","status":"pass","detail":"tax_exclusive_total + tax_total = tax_inclusive_total","source":"S-01","sources":["S-01"],"delta_yen":"0"}],"summary":{"pass":20,"fail":0,"unknown":0,"not_applicable":1,"failed_rule_ids":[],"unknown_rule_ids":[]},"schedule":{"basis":"transaction_date","per_date":[{"date":"2026-09-28","rate":0.8,"label":"80%","period_start":"2023-10-01","period_end":"2026-09-30","next_change_on":"2026-10-01","next_rate":0.7,"days_until_next_change":3}],"straddles_step_down":false,"applies_to":"purchases documented WITHOUT a 登録番号, or from a supplier not registered on the 課税仕入れ date — the published buyer-side transitional-deduction tier (NTA Q&A 問113-2: applies uniformly to a document lacking the number, even one from a registered issuer, provided the retained document meets the 区分記載請求書等の記載事項; 問113 also requires the 帳簿 entries listed under not_assessed)","keyed_on":"課税仕入れの時期 (goods: delivery date; services: completion date) per NTA Q&A 問113-3 — the document date is only a proxy when no transaction date is supplied","not_assessed":["per-supplier annual cap: 税込10億円 for 課税期間 beginning 2024-10-01..2026-09-30, 税込1億円 for 課税期間 beginning on/after 2026-10-01 (buyer-ledger fact)","buyer ledger wording 「80％控除対象」/「免」 (buyer bookkeeping requirement)","少額特例 (buyer's 基準期間/特定期間 sales and per-transaction unit)","短期前払費用 treatment","whether the buyer computes tax by 積上げ or 割戻し"],"sources":["S-14","S-15","S-16","S-17"]},"limitation_ids":["L1","L2","L3","L4","L6","L7","L8"],"limitations":["Evaluated against the CURRENT registration episode only: the mirror stores the NTA latest-history row per number. If this number was cancelled or expired and later registered again, a date inside the earlier episode is reported as not registered — a false negative from this cause, not a false positive from it.","Dates are as currently published (data_as_of), including any later NTA corrections; what the site displayed on the evaluation date cannot be reconstructed. An evaluation date after data_as_of is judged on the current row — a later 失効/取消 cannot be known yet.","The NTA holds no name/address history; the register name compared is today's name.","A new registration is posted the day after 登録簿 entry, and JP-Verify syncs on its own cadence; a number can be legally effective before it is visible here.","Presence checks reflect the fields the caller supplied (or the elements found in the XML); they do not verify what is printed on a paper document.","Not tax advice; no determination of any deduction, credit or entitlement (税理士法第2条の税務相談ではありません).","A 削除 (処理区分 99) row in the NTA daily diff file is applied to the mirror at the next diff sync (three times a day); until then a number the NTA has removed from the 登録簿 can read as registered here. The NTA may re-publish a deleted number later (measured: 45 of 238 bare deletions in 40 diff days re-appeared within the archive)."],"sources":[{"id":"S-01","cite":"消費税法57条の4 (e-Gov)","url":"https://laws.e-gov.go.jp/law/363AC0000000108#Mp-At_57_4","accessed":"2026-09-09"},{"id":"S-02","cite":"消費税法施行令70条の10 (e-Gov)","url":"https://laws.e-gov.go.jp/law/363CO0000000360#Mp-At_70_10","accessed":"2026-09-09"},{"id":"S-04","cite":"NTA インボイスQ&A 01-09 (問54, 55, 56, 57, 58, 60, 61, 64, 72, 73)","url":"https://www.nta.go.jp/taxes/shiraberu/zeimokubetsu/shohi/keigenzeiritsu/pdf/qa/01-09.pdf","accessed":"2026-09-15"},{"id":"S-05","cite":"NTA インボイスQ&A 01-01 (問1, 25, 26-2, 32, 73)","url":"https://www.nta.go.jp/taxes/shiraberu/zeimokubetsu/shohi/keigenzeiritsu/pdf/qa/01-01.pdf","accessed":"2026-09-15"},{"id":"S-08","cite":"NTA インボイスQ&A 問57 (端数処理)","url":"https://www.nta.go.jp/taxes/shiraberu/zeimokubetsu/shohi/keigenzeiritsu/pdf/qa/57.pdf","accessed":"2026-09-09"},{"id":"S-13","cite":"タックスアンサー No.6303 消費税及び地方消費税の税率","url":"https://www.nta.go.jp/taxes/shiraberu/taxanswer/shohi/6303.htm","accessed":"2026-09-15"},{"id":"S-14","cite":"NTA インボイスQ&A 問113 (令和8年4月改訂)","url":"https://www.nta.go.jp/taxes/shiraberu/zeimokubetsu/shohi/keigenzeiritsu/pdf/qa/113.pdf","accessed":"2026-09-15"},{"id":"S-15","cite":"NTA インボイスQ&A 01-15 (問113-2 / 113-3 / 113-4)","url":"https://www.nta.go.jp/taxes/shiraberu/zeimokubetsu/shohi/keigenzeiritsu/pdf/qa/01-15.pdf","accessed":"2026-09-15"},{"id":"S-16","cite":"財務省 令和8年度税制改正の大綱の概要","url":"https://www.mof.go.jp/tax_policy/tax_reform/outline/fy2026/08taikou_gaiyou.htm","accessed":"2026-09-15"},{"id":"S-17","cite":"NTA 令和8年度税制改正特集 (インボイス)","url":"https://www.nta.go.jp/taxes/shiraberu/zeimokubetsu/shohi/keigenzeiritsu/invoice-review/index.htm","accessed":"2026-09-15"},{"id":"S-25","cite":"公表サイト リソース定義書 k-resource-dl.pdf (1.5版 令和6年5月; 項番7 sort key, 項番9 処理区分 99, 項番13 最新履歴)","url":"https://www.invoice-kohyo.nta.go.jp/files/k-resource-dl.pdf","accessed":"2026-09-15"},{"id":"S-26","cite":"公表サイト Web-API 利用手続 k-web-api-tetuduki.pdf (§2.1 history fields; 【参考1】 overwrite table)","url":"https://www.invoice-kohyo.nta.go.jp/files/k-web-api-tetuduki.pdf","accessed":"2026-09-15"},{"id":"S-27","cite":"公表サイト サンプルデータ説明 k-sample-explain-r0310.pdf (p.18 差分データの概要)","url":"https://www.invoice-kohyo.nta.go.jp/download/index.files/k-sample-explain-r0310.pdf","accessed":"2026-09-15"},{"id":"S-28","cite":"消費税法基本通達 1-7-3 (登録の効力) / 1-7-7 (事業の廃止による登録の失効)","url":"https://www.nta.go.jp/law/tsutatsu/kihon/shohi/01/07.htm","accessed":"2026-09-15"},{"id":"S-29","cite":"NTA インボイスQ&A 01-04 (問5, 13, 14, 15)","url":"https://www.nta.go.jp/taxes/shiraberu/zeimokubetsu/shohi/keigenzeiritsu/pdf/qa/01-04.pdf","accessed":"2026-09-15"},{"id":"S-31","cite":"NTA インボイスQ&A 問13 (登録取消届出書と失効日)","url":"https://www.nta.go.jp/taxes/shiraberu/zeimokubetsu/shohi/keigenzeiritsu/pdf/qa/13.pdf","accessed":"2026-09-15"},{"id":"S-32","cite":"公表サイト 利用規約 (purpose; attribution examples)","url":"https://www.invoice-kohyo.nta.go.jp/terms-of-use.html","accessed":"2026-09-09"},{"id":"S-33","cite":"公表サイト 運営方針 invoice-houshin.pdf (§4 next-day posting; §5 7-year deletion; §6(3) 全件データファイル = 前月末時点の最新情報, 差分データファイル = 日次の異動情報)","url":"https://www.invoice-kohyo.nta.go.jp/files/invoice-houshin.pdf","accessed":"2026-09-15"},{"id":"S-35","cite":"公表サイト ダウンロード (全件データファイルは毎月初日(休日を除く)に前月末時点で作成、差分データファイルは日次で作成 — いずれも原則作成日の翌日午前6時以降に公開)","url":"https://www.invoice-kohyo.nta.go.jp/download/index.html","accessed":"2026-09-15"},{"id":"S-46","cite":"aligned-ibr-jp-01","url":"https://docs.peppol.eu/poac/jp/pint-jp/trn-invoice/rule/aligned-ibr-jp-01/","accessed":"2026-09-09"},{"id":"S-47","cite":"aligned-ibrp-051-jp","url":"https://docs.peppol.eu/poac/jp/pint-jp/trn-invoice/rule/aligned-ibrp-051-jp/","accessed":"2026-09-09"},{"id":"S-48","cite":"aligned-ibr-jp-06","url":"https://docs.peppol.eu/poac/jp/pint-jp/trn-invoice/rule/aligned-ibr-jp-06/","accessed":"2026-09-09"},{"id":"S-64","cite":"国税庁 法人番号 check-digit worksheet (repo-verified 2026-09-02, jpverify/checkdigit.py validated on 787,566 NTA numbers)","url":"https://www.houjin-bangou.nta.go.jp/documents/checkdigit.pdf","accessed":"2026-09-09"},{"id":"S-77","cite":"消費税法基本通達 第1章第8節 1-8-1〜1-8-21 (1-8-15 端数処理, 1-8-16 外貨, 1-8-17 1万円の判定単位, 1-8-18/1-8-19 返還請求書の交付時期, 1-8-20 一の書類, 1-8-21 修正)","url":"https://www.nta.go.jp/law/tsutatsu/kihon/shohi/01/08.htm","accessed":"2026-09-15"},{"id":"S-78","cite":"NTA インボイスQ&A 問68 (外貨建取引 — 消費税額等は円換算した金額; 外貨建ての Tax amount は参考)","url":"https://www.nta.go.jp/taxes/shiraberu/zeimokubetsu/shohi/keigenzeiritsu/pdf/qa/68.pdf","accessed":"2026-09-15"},{"id":"S-79","cite":"NTA インボイスQ&A 問60 (適格返還請求書の記載事項 — ⑤ 消費税額等 又は 適用税率)","url":"https://www.nta.go.jp/taxes/shiraberu/zeimokubetsu/shohi/keigenzeiritsu/pdf/qa/60.pdf","accessed":"2026-09-15"},{"id":"S-80","cite":"NTA インボイスQ&A 問61 (課税資産の譲渡等を行った年月日 — 一定の期間 / 継続 convention dates)","url":"https://www.nta.go.jp/taxes/shiraberu/zeimokubetsu/shohi/keigenzeiritsu/pdf/qa/61.pdf","accessed":"2026-09-15"}],"data_as_of":{"zenken_date":"20260831","last_diff_date":"20260901","synced_at":"2026-09-02T05:30:38+00:00","source":"https://www.invoice-kohyo.nta.go.jp/download/zenken","data_date":"20260901"},"source":"https://www.invoice-kohyo.nta.go.jp/download/zenken","attribution":"出典：国税庁適格請求書発行事業者公表サイト（国税庁）（https://www.invoice-kohyo.nta.go.jp/）を加工して作成","nta_notice":"本サービスは国税庁公表データ（全件・差分ダウンロードファイル）を JP-Verify が加工して作成したものであり、国税庁が作成したものではなく、内容は国税庁によって保証されたものではありません。 Based on NTA-published bulk data, processed by JP-Verify; not produced or guaranteed by the NTA.","disclaimer":{"en":"Register facts, document-format checks and arithmetic on the document's own figures, plus the published statutory schedule with its source — NOT tax advice and not a determination of any deduction, credit or entitlement; the buyer's consumption-tax treatment is for the taxpayer and their tax adviser (税理士).","ja":"本結果は国税庁公表データに基づく登録事実・書類の記載事項チェック・書類自身の数値の計算整合性・公表されている経過措置の適用区分(出典URL付き)のみを示すものです。税務相談・仕入税額控除の可否や控除額の判定ではありません。買手側の消費税の取扱いは納税者ご自身および税理士にご確認ください。"},"tier":"sandbox","remaining":49,"english_name_register":{"source":"https://www.houjin-bangou.nta.go.jp/","data_date":"20260831","attribution":"出典：国税庁法人番号公表サイト（国税庁）（https://www.houjin-bangou.nta.go.jp/）を加工して作成","note":"vintage of the 法人番号 register behind any name_en_source / address_en_source of 'official-en'"}}},"malformed_number":{"summary":"the document's 登録番号 is malformed (metered finding, text redacted)","value":{"product":"JP-Verify Invoice Facts","rule_set_version":"2026-09-18.1","document":{"input":"facts","document_type":"qualified_invoice","digest":{"alg":"sha256","over":"canonical-facts-json","value":"df1b5c568e965c0452ce778b3c68a1a91403ad7d4488b4a05d28e0567ecaecc3"},"supplier_t_number":null,"supplier_t_number_state":"malformed","issue_date":"2026-10-05","transaction_date":"2026-09-28","transaction_period":null,"currency":"JPY","amount_sign":"positive","evaluation_dates":{"dates":["2026-09-28"],"basis":"transaction_date"}},"register":{"number":null,"valid_format":false,"status":"invalid","status_ja":null,"registration_date":null,"update_date":null,"expire_date":null,"disposal_date":null,"kind":null,"kind_code":null,"latest_history_flag":null,"process_code":null,"corporate_number":null,"name_ja":null,"name_en":null,"name_en_source":null,"address_ja":null,"address_en":null,"address_en_source":null,"reason":"format: expected 'T' followed by 13 ASCII digits","input_credit":{"qualified_invoice_issuer":false,"note":"not a well-formed qualified-invoice number","disclaimer":"factual registration status from the 国税庁 register; NOT tax advice. A buyer's consumption-tax input-credit entitlement depends on their own facts and the transitional measures — consult NTA guidance or a tax adviser."},"summary":"the document's 登録番号 is not a well-formed qualified-invoice number"},"status_on_date":{"dates":["2026-09-28"],"basis":"transaction_date","registered":null,"per_date":[{"date":"2026-09-28","registered":null,"reason":"no well-formed number on the document"}],"registration_date":null,"disposal_date":null,"expire_date":null,"rule":"registered on D iff registration_date <= D and (disposal_date is null or D < disposal_date) and (expire_date is null or D < expire_date) — evaluated on the current registration episode","boundary_case":false,"after_data_as_of":true,"episode_scope":"current","note":null,"limitation_ids":[],"limitations":[],"sources":["S-25","S-26","S-27","S-28","S-29","S-31","S-33"]},"name_match":{"level":"not_compared","reason":"no_register_row","compared_to":null,"matched_field":null,"method":"NFKC + whitespace/punctuation/legal-form normalisation, then jpverify.namevariants rule-enumerable variants — not fuzzy","note":"a name match is NOT entity identity; same-name companies are common; the NTA register holds no name history, so the comparison is against the name as currently published; a trade name (屋号) or abbreviation is permitted on the document when the issuer is otherwise identifiable (NTA Q&A 問55) — 'none' is a prompt to confirm with the supplier, not a finding"},"rules":[{"id":"REG-01","group":"register","title":"Registration number is well-formed (T + 13 ASCII digits, valid check digit)","subject":"document","status":"fail","detail":"format: expected 'T' followed by 13 ASCII digits","source":"S-64","sources":["S-64","S-46"]},{"id":"REG-02","group":"register","title":"Number present in the NTA register as of data_as_of","subject":"document","status":"not_applicable","detail":"no well-formed 登録番号 to look up (REG-01)","source":"S-32","sources":["S-32"]},{"id":"REG-03","group":"register","title":"Registered on the evaluation date(s)","subject":"document","status":"not_applicable","detail":"no register row to evaluate (REG-02)","source":"S-28","sources":["S-28","S-29","S-31","S-25","S-33","S-77"]},{"id":"ITEM-01","group":"statutory_items","title":"① 適格請求書発行事業者の氏名又は名称 及び 登録番号","subject":"document","status":"fail","detail":"登録番号 is malformed (REG-01); NTA's own framing for a document that lacks a statutory item: 適格請求書の記載事項を満たさない (問26-2, S-05) — a fact about the document, not a determination","source":"S-01","sources":["S-01","S-04","S-15"]},{"id":"ITEM-02","group":"statutory_items","title":"② 課税資産の譲渡等を行った年月日 (or 一定の期間); return_invoice: 返還等を行う年月日 and the original 課税資産の譲渡等を行った年月日/期間 (57条の4③二)","subject":"document","status":"pass","detail":"transaction_date supplied","source":"S-01","sources":["S-01","S-04","S-79","S-80"]},{"id":"ITEM-03","group":"statutory_items","title":"③ 資産又は役務の内容 (+ 軽減対象である旨)","subject":"document","status":"pass","detail":"description stated and 軽減対象である旨 marked","source":"S-01","sources":["S-01","S-04","S-13"]},{"id":"ITEM-04","group":"statutory_items","title":"④ 税率ごとに区分した税抜/税込合計額 及び 適用税率","subject":"document","status":"pass","detail":"every taxable line states both its amount and 適用税率","source":"S-01","sources":["S-01","S-04"]},{"id":"ITEM-05","group":"statutory_items","title":"⑤ 税率ごとに区分した消費税額等","subject":"document","status":"pass","detail":"every taxable line states its 消費税額等","source":"S-01","sources":["S-01","S-04","S-05","S-77","S-78","S-79"]},{"id":"ITEM-06","group":"statutory_items","title":"⑥ 書類の交付を受ける事業者の氏名又は名称","subject":"document","status":"pass","detail":"recipient name present","source":"S-01","sources":["S-01","S-04"]},{"id":"RATE-01","group":"rates","title":"Rate value is a published consumption-tax rate","subject":"tax_lines[0]","status":"pass","detail":"10% is a published consumption-tax rate","source":"S-13","sources":["S-13"]},{"id":"RATE-01","group":"rates","title":"Rate value is a published consumption-tax rate","subject":"tax_lines[1]","status":"pass","detail":"8% is a published consumption-tax rate","source":"S-13","sources":["S-13"]},{"id":"RATE-02","group":"rates","title":"8% line is disambiguated (軽減税率 8% = 6.24 + 1.76 vs 経過措置 旧税率 8% = 6.3 + 1.7)","subject":"tax_lines[0]","status":"not_applicable","detail":"not an 8% line","source":"S-13","sources":["S-13"]},{"id":"RATE-02","group":"rates","title":"8% line is disambiguated (軽減税率 8% = 6.24 + 1.76 vs 経過措置 旧税率 8% = 6.3 + 1.7)","subject":"tax_lines[1]","status":"pass","detail":"8% line stated as reduced","source":"S-13","sources":["S-13"]},{"id":"RATE-03","group":"rates","title":"Category ↔ rate coherence","subject":"tax_lines[0]","status":"pass","detail":"standard ↔ 10%","source":"S-13","sources":["S-13"]},{"id":"RATE-03","group":"rates","title":"Category ↔ rate coherence","subject":"tax_lines[1]","status":"pass","detail":"reduced ↔ 8%","source":"S-13","sources":["S-13"]},{"id":"ARITH-01","group":"arithmetic","title":"Per-rate tax amount equals amount × rate within one-yen rounding","subject":"tax_lines[0]","status":"pass","detail":"10% line: tax amount is an integer inside [floor, ceiling] of the computed product ×10/100 (tax-exclusive basis)","source":"S-02","sources":["S-02","S-08","S-47"],"delta_yen":"0"},{"id":"ARITH-01","group":"arithmetic","title":"Per-rate tax amount equals amount × rate within one-yen rounding","subject":"tax_lines[1]","status":"pass","detail":"8% line: tax amount is an integer inside [floor, ceiling] of the computed product ×8/100 (tax-exclusive basis)","source":"S-02","sources":["S-02","S-08","S-47"],"delta_yen":"0"},{"id":"ARITH-02","group":"arithmetic","title":"JPY tax amounts are integers","subject":"document","status":"pass","detail":"every stated tax amount is a whole yen","source":"S-02","sources":["S-02","S-48"]},{"id":"ARITH-03","group":"arithmetic","title":"Σ line amounts = the matching total","subject":"totals","status":"pass","detail":"Σ line amounts = tax_exclusive_total","source":"S-01","sources":["S-01"],"delta_yen":"0"},{"id":"ARITH-04","group":"arithmetic","title":"Σ line tax amounts = totals.tax_total","subject":"totals","status":"pass","detail":"Σ line tax amounts = tax_total","source":"S-01","sources":["S-01"],"delta_yen":"0"},{"id":"ARITH-05","group":"arithmetic","title":"tax_exclusive_total + tax_total = tax_inclusive_total","subject":"totals","status":"pass","detail":"tax_exclusive_total + tax_total = tax_inclusive_total","source":"S-01","sources":["S-01"],"delta_yen":"0"}],"summary":{"pass":16,"fail":2,"unknown":0,"not_applicable":3,"failed_rule_ids":["REG-01","ITEM-01"],"unknown_rule_ids":[]},"schedule":{"basis":"transaction_date","per_date":[{"date":"2026-09-28","rate":0.8,"label":"80%","period_start":"2023-10-01","period_end":"2026-09-30","next_change_on":"2026-10-01","next_rate":0.7,"days_until_next_change":3}],"straddles_step_down":false,"applies_to":"purchases documented WITHOUT a 登録番号, or from a supplier not registered on the 課税仕入れ date — the published buyer-side transitional-deduction tier (NTA Q&A 問113-2: applies uniformly to a document lacking the number, even one from a registered issuer, provided the retained document meets the 区分記載請求書等の記載事項; 問113 also requires the 帳簿 entries listed under not_assessed)","keyed_on":"課税仕入れの時期 (goods: delivery date; services: completion date) per NTA Q&A 問113-3 — the document date is only a proxy when no transaction date is supplied","not_assessed":["per-supplier annual cap: 税込10億円 for 課税期間 beginning 2024-10-01..2026-09-30, 税込1億円 for 課税期間 beginning on/after 2026-10-01 (buyer-ledger fact)","buyer ledger wording 「80％控除対象」/「免」 (buyer bookkeeping requirement)","少額特例 (buyer's 基準期間/特定期間 sales and per-transaction unit)","短期前払費用 treatment","whether the buyer computes tax by 積上げ or 割戻し"],"sources":["S-14","S-15","S-16","S-17"]},"limitation_ids":["L6","L7"],"limitations":["Presence checks reflect the fields the caller supplied (or the elements found in the XML); they do not verify what is printed on a paper document.","Not tax advice; no determination of any deduction, credit or entitlement (税理士法第2条の税務相談ではありません)."],"sources":[{"id":"S-01","cite":"消費税法57条の4 (e-Gov)","url":"https://laws.e-gov.go.jp/law/363AC0000000108#Mp-At_57_4","accessed":"2026-09-09"},{"id":"S-02","cite":"消費税法施行令70条の10 (e-Gov)","url":"https://laws.e-gov.go.jp/law/363CO0000000360#Mp-At_70_10","accessed":"2026-09-09"},{"id":"S-04","cite":"NTA インボイスQ&A 01-09 (問54, 55, 56, 57, 58, 60, 61, 64, 72, 73)","url":"https://www.nta.go.jp/taxes/shiraberu/zeimokubetsu/shohi/keigenzeiritsu/pdf/qa/01-09.pdf","accessed":"2026-09-15"},{"id":"S-05","cite":"NTA インボイスQ&A 01-01 (問1, 25, 26-2, 32, 73)","url":"https://www.nta.go.jp/taxes/shiraberu/zeimokubetsu/shohi/keigenzeiritsu/pdf/qa/01-01.pdf","accessed":"2026-09-15"},{"id":"S-08","cite":"NTA インボイスQ&A 問57 (端数処理)","url":"https://www.nta.go.jp/taxes/shiraberu/zeimokubetsu/shohi/keigenzeiritsu/pdf/qa/57.pdf","accessed":"2026-09-09"},{"id":"S-13","cite":"タックスアンサー No.6303 消費税及び地方消費税の税率","url":"https://www.nta.go.jp/taxes/shiraberu/taxanswer/shohi/6303.htm","accessed":"2026-09-15"},{"id":"S-14","cite":"NTA インボイスQ&A 問113 (令和8年4月改訂)","url":"https://www.nta.go.jp/taxes/shiraberu/zeimokubetsu/shohi/keigenzeiritsu/pdf/qa/113.pdf","accessed":"2026-09-15"},{"id":"S-15","cite":"NTA インボイスQ&A 01-15 (問113-2 / 113-3 / 113-4)","url":"https://www.nta.go.jp/taxes/shiraberu/zeimokubetsu/shohi/keigenzeiritsu/pdf/qa/01-15.pdf","accessed":"2026-09-15"},{"id":"S-16","cite":"財務省 令和8年度税制改正の大綱の概要","url":"https://www.mof.go.jp/tax_policy/tax_reform/outline/fy2026/08taikou_gaiyou.htm","accessed":"2026-09-15"},{"id":"S-17","cite":"NTA 令和8年度税制改正特集 (インボイス)","url":"https://www.nta.go.jp/taxes/shiraberu/zeimokubetsu/shohi/keigenzeiritsu/invoice-review/index.htm","accessed":"2026-09-15"},{"id":"S-25","cite":"公表サイト リソース定義書 k-resource-dl.pdf (1.5版 令和6年5月; 項番7 sort key, 項番9 処理区分 99, 項番13 最新履歴)","url":"https://www.invoice-kohyo.nta.go.jp/files/k-resource-dl.pdf","accessed":"2026-09-15"},{"id":"S-26","cite":"公表サイト Web-API 利用手続 k-web-api-tetuduki.pdf (§2.1 history fields; 【参考1】 overwrite table)","url":"https://www.invoice-kohyo.nta.go.jp/files/k-web-api-tetuduki.pdf","accessed":"2026-09-15"},{"id":"S-27","cite":"公表サイト サンプルデータ説明 k-sample-explain-r0310.pdf (p.18 差分データの概要)","url":"https://www.invoice-kohyo.nta.go.jp/download/index.files/k-sample-explain-r0310.pdf","accessed":"2026-09-15"},{"id":"S-28","cite":"消費税法基本通達 1-7-3 (登録の効力) / 1-7-7 (事業の廃止による登録の失効)","url":"https://www.nta.go.jp/law/tsutatsu/kihon/shohi/01/07.htm","accessed":"2026-09-15"},{"id":"S-29","cite":"NTA インボイスQ&A 01-04 (問5, 13, 14, 15)","url":"https://www.nta.go.jp/taxes/shiraberu/zeimokubetsu/shohi/keigenzeiritsu/pdf/qa/01-04.pdf","accessed":"2026-09-15"},{"id":"S-31","cite":"NTA インボイスQ&A 問13 (登録取消届出書と失効日)","url":"https://www.nta.go.jp/taxes/shiraberu/zeimokubetsu/shohi/keigenzeiritsu/pdf/qa/13.pdf","accessed":"2026-09-15"},{"id":"S-32","cite":"公表サイト 利用規約 (purpose; attribution examples)","url":"https://www.invoice-kohyo.nta.go.jp/terms-of-use.html","accessed":"2026-09-09"},{"id":"S-33","cite":"公表サイト 運営方針 invoice-houshin.pdf (§4 next-day posting; §5 7-year deletion; §6(3) 全件データファイル = 前月末時点の最新情報, 差分データファイル = 日次の異動情報)","url":"https://www.invoice-kohyo.nta.go.jp/files/invoice-houshin.pdf","accessed":"2026-09-15"},{"id":"S-46","cite":"aligned-ibr-jp-01","url":"https://docs.peppol.eu/poac/jp/pint-jp/trn-invoice/rule/aligned-ibr-jp-01/","accessed":"2026-09-09"},{"id":"S-47","cite":"aligned-ibrp-051-jp","url":"https://docs.peppol.eu/poac/jp/pint-jp/trn-invoice/rule/aligned-ibrp-051-jp/","accessed":"2026-09-09"},{"id":"S-48","cite":"aligned-ibr-jp-06","url":"https://docs.peppol.eu/poac/jp/pint-jp/trn-invoice/rule/aligned-ibr-jp-06/","accessed":"2026-09-09"},{"id":"S-64","cite":"国税庁 法人番号 check-digit worksheet (repo-verified 2026-09-02, jpverify/checkdigit.py validated on 787,566 NTA numbers)","url":"https://www.houjin-bangou.nta.go.jp/documents/checkdigit.pdf","accessed":"2026-09-09"},{"id":"S-77","cite":"消費税法基本通達 第1章第8節 1-8-1〜1-8-21 (1-8-15 端数処理, 1-8-16 外貨, 1-8-17 1万円の判定単位, 1-8-18/1-8-19 返還請求書の交付時期, 1-8-20 一の書類, 1-8-21 修正)","url":"https://www.nta.go.jp/law/tsutatsu/kihon/shohi/01/08.htm","accessed":"2026-09-15"},{"id":"S-78","cite":"NTA インボイスQ&A 問68 (外貨建取引 — 消費税額等は円換算した金額; 外貨建ての Tax amount は参考)","url":"https://www.nta.go.jp/taxes/shiraberu/zeimokubetsu/shohi/keigenzeiritsu/pdf/qa/68.pdf","accessed":"2026-09-15"},{"id":"S-79","cite":"NTA インボイスQ&A 問60 (適格返還請求書の記載事項 — ⑤ 消費税額等 又は 適用税率)","url":"https://www.nta.go.jp/taxes/shiraberu/zeimokubetsu/shohi/keigenzeiritsu/pdf/qa/60.pdf","accessed":"2026-09-15"},{"id":"S-80","cite":"NTA インボイスQ&A 問61 (課税資産の譲渡等を行った年月日 — 一定の期間 / 継続 convention dates)","url":"https://www.nta.go.jp/taxes/shiraberu/zeimokubetsu/shohi/keigenzeiritsu/pdf/qa/61.pdf","accessed":"2026-09-15"}],"data_as_of":{"zenken_date":"20260831","last_diff_date":"20260901","synced_at":"2026-09-02T05:30:38+00:00","source":"https://www.invoice-kohyo.nta.go.jp/download/zenken","data_date":"20260901"},"source":"https://www.invoice-kohyo.nta.go.jp/download/zenken","attribution":"出典：国税庁適格請求書発行事業者公表サイト（国税庁）（https://www.invoice-kohyo.nta.go.jp/）を加工して作成","nta_notice":"本サービスは国税庁公表データ（全件・差分ダウンロードファイル）を JP-Verify が加工して作成したものであり、国税庁が作成したものではなく、内容は国税庁によって保証されたものではありません。 Based on NTA-published bulk data, processed by JP-Verify; not produced or guaranteed by the NTA.","disclaimer":{"en":"Register facts, document-format checks and arithmetic on the document's own figures, plus the published statutory schedule with its source — NOT tax advice and not a determination of any deduction, credit or entitlement; the buyer's consumption-tax treatment is for the taxpayer and their tax adviser (税理士).","ja":"本結果は国税庁公表データに基づく登録事実・書類の記載事項チェック・書類自身の数値の計算整合性・公表されている経過措置の適用区分(出典URL付き)のみを示すものです。税務相談・仕入税額控除の可否や控除額の判定ではありません。買手側の消費税の取扱いは納税者ご自身および税理士にご確認ください。"},"tier":"sandbox","remaining":49}}}}}},"413":{"description":"Request body over the size cap — refused before it was buffered or parsed; nothing was charged.","content":{"application/json":{"example":{"error":"request body too large (max 65536 bytes)"},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"400":{"description":"Malformed input — refused before metering; nothing was charged.","content":{"application/json":{"example":{"error":"no well-formed numbers — nothing was charged","invalid":[]},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unknown, inactive, or expired API key.","content":{"application/json":{"example":{"error":"unknown or inactive API key","tier":"invalid","hint":"see / for pricing; set X-API-Key for higher limits"},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"429":{"description":"Quota exceeded for the caller's tier.","content":{"application/json":{"example":{"error":"sandbox daily quota exceeded","tier":"sandbox","hint":"see / for pricing; set X-API-Key for higher limits"},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"The register, or an optional feature, is unavailable or not configured on this deployment. A register 503 (since 1.4.1) also carries the mirror's `data_as_of` with the source fields — `source_latest_diff_date` (the newest 差分 the NTA 公表サイト listed when the sync last read it), `source_checked_at`, `source_gap_business_days` and `freshness.rule` (`stale` here) — so a caller can tell a mirror that is behind its source (`data_date` older than `source_latest_diff_date`) from a source that has not published (equal, but `source_checked_at` older than `freshness.source_check_max_hours`); `data_as_of` is null when the mirror is absent. Nothing was charged.","content":{"application/json":{"example":{"error":"register temporarily unavailable (not synced or stale beyond the freshness window)","data_as_of":{"zenken_date":"20260831","last_diff_date":"20260911","synced_at":"2026-09-20T13:27:04+00:00","source":"https://www.invoice-kohyo.nta.go.jp/download/zenken","data_date":"20260911","source_latest_diff_date":"20260911","source_checked_at":"2026-09-20T13:27:03+00:00","source_gap_business_days":6,"freshness":{"rule":"stale","max_age_days":10,"source_check_max_hours":48,"source_gap_max_business_days":15}}},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{},{"ApiKeyAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"description":"``POST /v1/invoice/check`` body — the facts of ONE invoice, as printed. Names and amounts\nare consumed in memory only and never stored, logged or echoed. A missing or malformed\n``supplier_t_number`` is a document finding (metered), not a request error.","properties":{"document_type":{"anyOf":[{"type":"string"},{"type":"null"}],"default":"qualified_invoice","description":"qualified_invoice (適格請求書, default) | simplified_qualified_invoice (適格簡易請求書) | return_invoice (適格返還請求書 — 'credit note' in Peppol/UBL vocabulary; JP PINT models it as a negative Invoice (380)) — as claimed by the caller, never inferred from the sign of the amounts; industry eligibility is not checked","title":"Document Type"},"supplier_t_number":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"the 登録番号 AS PRINTED (NFKC-folded, whitespace removed); absent = the document shows no number; a malformed value is a metered finding reported WITHOUT its text; longer than 32 characters (not number-shaped) or not UTF-8 encodable = free 400","title":"Supplier T Number"},"seller_name":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"issuer name as printed (<= 200 chars after NFKC/strip); compared with the register name, never echoed","title":"Seller Name"},"buyer_name":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"recipient name as printed; only its presence is used, never echoed","title":"Buyer Name"},"buyer_name_present":{"anyOf":[{"type":"boolean"},{"type":"null"}],"description":"alternative to buyer_name: whether the recipient's name is printed","title":"Buyer Name Present"},"issue_date":{"description":"REQUIRED — the date printed on the document ('YYYY-MM-DD', ibt-002)","title":"Issue Date","type":"string"},"transaction_date":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"課税資産の譲渡等を行った年月日 (goods: delivery; services: completion) — the evaluation date; mutually exclusive with transaction_period. On a return_invoice: the ORIGINAL supply (57条の4③二's second date), which is the register date of record (基通1-8-18/1-8-19)","title":"Transaction Date"},"transaction_period":{"anyOf":[{"description":"``transaction_period`` for ``POST /v1/invoice/check`` (まとめ請求 — 一定の期間).","properties":{"start":{"description":"'YYYY-MM-DD' — evaluated as one of the two dates","title":"Start","type":"string"},"end":{"description":"'YYYY-MM-DD' (>= start) — evaluated as the other date","title":"End","type":"string"}},"required":["start","end"],"title":"InvoicePeriod","type":"object"},{"type":"null"}],"description":"一定の期間 (まとめ請求) — both ends are evaluated (on a return_invoice: the original supply period — 問61 allows 一定の期間)"},"return_date":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"return_invoice only — 売上げに係る対価の返還等を行う年月日 (57条の4③二's first date), 'YYYY-MM-DD'; optional (ITEM-02 reports unknown without it); informational for the register status (基通1-8-19); a free 400 on any other document_type","title":"Return Date"},"preceding_invoice_reference_present":{"anyOf":[{"type":"boolean"},{"type":"null"}],"description":"return_invoice — a reference to the original invoice is printed (presence only; the reference itself is never sent)","title":"Preceding Invoice Reference Present"},"currency":{"anyOf":[{"type":"string"},{"type":"null"}],"default":"JPY","description":"ISO 4217 (default JPY)","title":"Currency"},"description_present":{"anyOf":[{"type":"boolean"},{"type":"null"}],"description":"資産又は役務の内容 is stated (null = not supplied)","title":"Description Present"},"reduced_rate_marked":{"anyOf":[{"type":"boolean"},{"type":"null"}],"description":"軽減対象である旨 is marked, in any form per 基通1-8-4 (null = not supplied)","title":"Reduced Rate Marked"},"rate_only_stated":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":false,"description":"適格簡易請求書 printing 適用税率 but no 消費税額等","title":"Rate Only Stated"},"tax_lines":{"anyOf":[{"items":{"description":"One ``tax_lines[]`` entry for ``POST /v1/invoice/check`` — one per rate/category on the\ndocument. Amounts: JSON integer, JSON number, or a decimal string ``^-?\\d{1,15}(\\.\\d{1,4})?$``,\n|x| <= 10^15; signed on every document type (a 値引き line, the negative form of a\n適格返還請求書) — the sign is reported as ``document.amount_sign``, never used to infer the\ndocument type.","properties":{"rate_percent":{"anyOf":[{"type":"integer"},{"type":"number"},{"type":"string"},{"type":"null"}],"description":"適用税率 in percent (10, 8, or 0); null when the document prints none","title":"Rate Percent"},"category":{"anyOf":[{"type":"string"},{"type":"null"}],"default":"unknown","description":"standard | reduced | old_rate_8 | exempt | out_of_scope | export | unknown (8% alone does not say which 8% — supply reduced or old_rate_8)","title":"Category"},"amount_basis":{"anyOf":[{"type":"string"},{"type":"null"}],"default":"tax_exclusive","description":"tax_exclusive (税抜) | tax_inclusive (税込) — which figure `amount` is","title":"Amount Basis"},"amount":{"anyOf":[{"type":"integer"},{"type":"number"},{"type":"string"},{"type":"null"}],"description":"税率ごとに区分した合計額 for this rate/category (signed)","title":"Amount"},"tax_amount":{"anyOf":[{"type":"integer"},{"type":"number"},{"type":"string"},{"type":"null"}],"description":"消費税額等 for this rate/category (yen, whole; signed)","title":"Tax Amount"},"tax_amount_jpy":{"anyOf":[{"type":"integer"},{"type":"number"},{"type":"string"},{"type":"null"}],"description":"the 消費税額等 in yen for this rate/category on a non-JPY document (基通1-8-16 / 問68: the statutory figure is the yen amount; a foreign-currency tax_amount alone is 参考) — ignored when currency is JPY","title":"Tax Amount Jpy"}},"title":"InvoiceTaxLine","type":"object"},"type":"array"},{"type":"null"}],"description":"0..10 entries, one per rate/category on the document","title":"Tax Lines"},"totals":{"anyOf":[{"description":"``totals`` for ``POST /v1/invoice/check`` — every key optional.","properties":{"tax_exclusive_total":{"anyOf":[{"type":"integer"},{"type":"number"},{"type":"string"},{"type":"null"}],"description":"税抜合計","title":"Tax Exclusive Total"},"tax_total":{"anyOf":[{"type":"integer"},{"type":"number"},{"type":"string"},{"type":"null"}],"description":"消費税額等の合計","title":"Tax Total"},"tax_inclusive_total":{"anyOf":[{"type":"integer"},{"type":"number"},{"type":"string"},{"type":"null"}],"description":"税込合計","title":"Tax Inclusive Total"},"payable_amount":{"anyOf":[{"type":"integer"},{"type":"number"},{"type":"string"},{"type":"null"}],"description":"請求金額 (not reconciled — prepaid/rounding amounts legitimately differ)","title":"Payable Amount"}},"title":"InvoiceTotals","type":"object"},{"type":"null"}],"description":"document totals (every key optional)"},"sign":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":false,"description":"return an Ed25519-signed record (Growth/Reseller keys only; otherwise the response says so and signs nothing)","title":"Sign"}},"required":["issue_date"],"title":"InvoiceCheckRequest","type":"object"},"example":{"buyer_name":"Example K.K.","currency":"JPY","description_present":true,"document_type":"qualified_invoice","issue_date":"2026-10-05","reduced_rate_marked":true,"seller_name":"株式会社サンプル","sign":false,"supplier_t_number":"T8200012010001","tax_lines":[{"amount":60000,"amount_basis":"tax_exclusive","category":"standard","rate_percent":10,"tax_amount":6000},{"amount":40000,"amount_basis":"tax_exclusive","category":"reduced","rate_percent":8,"tax_amount":3200}],"totals":{"payable_amount":109200,"tax_exclusive_total":100000,"tax_inclusive_total":109200,"tax_total":9200},"transaction_date":"2026-09-28"}}}}}},"/v1/invoice/check/pint":{"post":{"tags":["Compliance"],"summary":"JP-Verify Invoice Facts — the same facts read from a JP PINT UBL Invoice (XML)","description":"The same check as ``POST /v1/invoice/check``, with the facts read from a JP PINT UBL\n``Invoice`` (``Content-Type: application/xml`` or ``text/xml``): the seller's VAT\n``CompanyID`` (ibt-031) is the 登録番号, ``ActualDeliveryDate`` (ibt-072) or the\n``InvoicePeriod`` (ibg-14) is the evaluation date, the document-currency ``TaxTotal``'s\nsubtotals are the per-rate lines, and the PINT-01..15 structural rules are added (checks\nagainst the published JP PINT 1.1.3 rule ids — NOT a Schematron validation; no OpenPeppol\nfiles are redistributed). The ``document.digest`` is sha256 over the exact bytes received.\n\n**NOT tax advice**: register facts, document checks and the published schedule only; no\ndetermination of any deduction, credit or entitlement — the buyer's consumption-tax\ntreatment is for the taxpayer and their 税理士.\n\nFree refusal, nothing charged: 413 over ``INVOICE_XML_MAX_BYTES`` (1 MiB by default); 415\nfor a media type other than XML; 400 for a document that cannot be read (not UTF-8 — NUL\nbytes, i.e. a BOM-less UTF-16/UTF-32 document, included; a DOCTYPE / entity declaration;\nan entity reference other than the five predefined / numeric ones, or a bare ``&`` anywhere\nin the document, CDATA sections and comments included — encode it as ``&amp;``; not\nwell-formed; element or depth caps; a root other than ``Invoice`` — a UBL ``CreditNote``\nis not a JP PINT document: JP PINT models a 適格返還請求書 as a negative ``Invoice`` 380,\nchecked with ``?document_type=return_invoice``; a JP BIS Self Billing Invoice (389); a\nmissing ``IssueDate`` / ``DocumentCurrencyCode``; more than 10 tax subtotals) or a malformed\n``?transaction_date=`` / ``?document_type=`` / ``?sign=``. A missing or malformed 登録番号\nin the document is a metered finding, reported WITHOUT its text. Metered 1 unit per\ndocument; ``?sign=1`` (or ``true``; ``0`` / ``false`` / empty = unsigned, any other value\na free 400) as on the JSON route; opt-in ``Idempotency-Key`` (fingerprint = method + path + the\neffective ``transaction_date`` / ``document_type`` / ``sign`` query parameters + the\ndocument bytes — the same key with a different query is refused, 422). The media type is\nchecked before the body is read and an invalid / exhausted key is refused before the\ndocument is parsed. Nothing from the document is stored, logged or echoed beyond dates,\ncounts, the well-formed T-number, and identifiers / codes that match a bounded identifier\nshape (otherwise null, presence in ``extraction.fields_found``).","operationId":"invoiceCheckPint","parameters":[{"name":"sign","in":"query","required":false,"schema":{"type":"string","description":"1 or true = return an Ed25519-signed record (Growth+); 0, false or empty (default) = unsigned; any other value is a free 400","default":"0","title":"Sign"},"description":"1 or true = return an Ed25519-signed record (Growth+); 0, false or empty (default) = unsigned; any other value is a free 400"},{"name":"transaction_date","in":"query","required":false,"schema":{"type":"string","description":"'YYYY-MM-DD' — overrides the document's own Delivery/ActualDeliveryDate (ibt-072) / InvoicePeriod (ibg-14) as the evaluation date","default":"","title":"Transaction Date"},"description":"'YYYY-MM-DD' — overrides the document's own Delivery/ActualDeliveryDate (ibt-072) / InvoicePeriod (ibg-14) as the evaluation date"},{"name":"document_type","in":"query","required":false,"schema":{"type":"string","description":"qualified_invoice (default) | simplified_qualified_invoice | return_invoice (適格返還請求書 — a negative JP PINT Invoice 380; the original supply date comes only from ?transaction_date=) — as claimed by the caller; ignored, with a note, for a JP BIS Invoice for Non-tax Registered Businesses document (document_type is derived as non_tax_invoice)","default":"qualified_invoice","title":"Document Type"},"description":"qualified_invoice (default) | simplified_qualified_invoice | return_invoice (適格返還請求書 — a negative JP PINT Invoice 380; the original supply date comes only from ?transaction_date=) — as claimed by the caller; ignored, with a note, for a JP BIS Invoice for Non-tax Registered Businesses document (document_type is derived as non_tax_invoice)"},{"name":"X-API-Key","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Api-Key"}}],"responses":{"200":{"description":"One document's register facts, document checks, published schedule tier and limitations — every rule with a status and a source; never a verdict. Two real responses on the sample register: a registered issuer, and a malformed 登録番号 reported as a finding whose `register` record is `invalid` with every key present (null) and the printed text never echoed.","content":{"application/json":{"schema":{},"examples":{"registered_issuer":{"summary":"a registered issuer's invoice","value":{"product":"JP-Verify Invoice Facts","rule_set_version":"2026-09-18.1","document":{"input":"facts","document_type":"qualified_invoice","digest":{"alg":"sha256","over":"canonical-facts-json","value":"0b33a862e532b19517beceba46d9728fdb437dbba79dfbf3824d75885ff79fcb"},"supplier_t_number":"T8200012010001","supplier_t_number_state":"well_formed","issue_date":"2026-10-05","transaction_date":"2026-09-28","transaction_period":null,"currency":"JPY","amount_sign":"positive","evaluation_dates":{"dates":["2026-09-28"],"basis":"transaction_date"}},"register":{"number":"T8200012010001","valid_format":true,"status":"registered","status_ja":"有効","registration_date":"2023-10-01","update_date":"2023-09-05","expire_date":null,"disposal_date":null,"kind":"corporation","kind_code":"2","latest_history_flag":"1","process_code":"01","corporate_number":"8200012010001","name_ja":"株式会社サンプル","name_en":"Sample Co., Ltd.","name_en_source":"official-en","address_ja":"東京都千代田区丸の内1-1-1","address_en":"Tokyo, Chiyoda-ku, Marunouchi 1-1-1","address_en_source":"generated","input_credit":{"qualified_invoice_issuer":true,"note":"registered qualified-invoice issuer (適格請求書発行事業者): this number can back a consumption-tax qualified invoice as of 2026-09-01","disclaimer":"factual registration status from the 国税庁 register; NOT tax advice. A buyer's consumption-tax input-credit entitlement depends on their own facts and the transitional measures — consult NTA guidance or a tax adviser."},"summary":"Sample Co., Ltd. — registered qualified-invoice issuer (T8200012010001), registered 2023-10-01 (active)"},"status_on_date":{"dates":["2026-09-28"],"basis":"transaction_date","registered":true,"per_date":[{"date":"2026-09-28","registered":true,"reason":"registration_date <= D < end (end = disposal_date / expire_date, or open)"}],"registration_date":"2023-10-01","disposal_date":null,"expire_date":null,"rule":"registered on D iff registration_date <= D and (disposal_date is null or D < disposal_date) and (expire_date is null or D < expire_date) — evaluated on the current registration episode","boundary_case":false,"after_data_as_of":true,"episode_scope":"current","note":null,"limitation_ids":["L1","L2","L4","L8"],"limitations":["Evaluated against the CURRENT registration episode only: the mirror stores the NTA latest-history row per number. If this number was cancelled or expired and later registered again, a date inside the earlier episode is reported as not registered — a false negative from this cause, not a false positive from it.","Dates are as currently published (data_as_of), including any later NTA corrections; what the site displayed on the evaluation date cannot be reconstructed. An evaluation date after data_as_of is judged on the current row — a later 失効/取消 cannot be known yet.","A new registration is posted the day after 登録簿 entry, and JP-Verify syncs on its own cadence; a number can be legally effective before it is visible here.","A 削除 (処理区分 99) row in the NTA daily diff file is applied to the mirror at the next diff sync (three times a day); until then a number the NTA has removed from the 登録簿 can read as registered here. The NTA may re-publish a deleted number later (measured: 45 of 238 bare deletions in 40 diff days re-appeared within the archive)."],"sources":["S-25","S-26","S-27","S-28","S-29","S-31","S-33"]},"name_match":{"level":"exact","reason":null,"compared_to":"name_ja","matched_field":"seller_name","method":"NFKC + whitespace/punctuation/legal-form normalisation, then jpverify.namevariants rule-enumerable variants — not fuzzy","note":"a name match is NOT entity identity; same-name companies are common; the NTA register holds no name history, so the comparison is against the name as currently published; a trade name (屋号) or abbreviation is permitted on the document when the issuer is otherwise identifiable (NTA Q&A 問55) — 'none' is a prompt to confirm with the supplier, not a finding"},"rules":[{"id":"REG-01","group":"register","title":"Registration number is well-formed (T + 13 ASCII digits, valid check digit)","subject":"document","status":"pass","detail":"well-formed","source":"S-64","sources":["S-64","S-46"]},{"id":"REG-02","group":"register","title":"Number present in the NTA register as of data_as_of","subject":"document","status":"pass","detail":"row present in the NTA register as of data_as_of (current status: registered)","source":"S-32","sources":["S-32"]},{"id":"REG-03","group":"register","title":"Registered on the evaluation date(s)","subject":"document","status":"pass","detail":"registered on every evaluation date: registration_date <= D, and D before any disposal_date / expire_date","source":"S-28","sources":["S-28","S-29","S-31","S-25","S-33","S-77"]},{"id":"ITEM-01","group":"statutory_items","title":"① 適格請求書発行事業者の氏名又は名称 及び 登録番号","subject":"document","status":"pass","detail":"issuer name present and 登録番号 well-formed","source":"S-01","sources":["S-01","S-04","S-15"]},{"id":"ITEM-02","group":"statutory_items","title":"② 課税資産の譲渡等を行った年月日 (or 一定の期間); return_invoice: 返還等を行う年月日 and the original 課税資産の譲渡等を行った年月日/期間 (57条の4③二)","subject":"document","status":"pass","detail":"transaction_date supplied","source":"S-01","sources":["S-01","S-04","S-79","S-80"]},{"id":"ITEM-03","group":"statutory_items","title":"③ 資産又は役務の内容 (+ 軽減対象である旨)","subject":"document","status":"pass","detail":"description stated and 軽減対象である旨 marked","source":"S-01","sources":["S-01","S-04","S-13"]},{"id":"ITEM-04","group":"statutory_items","title":"④ 税率ごとに区分した税抜/税込合計額 及び 適用税率","subject":"document","status":"pass","detail":"every taxable line states both its amount and 適用税率","source":"S-01","sources":["S-01","S-04"]},{"id":"ITEM-05","group":"statutory_items","title":"⑤ 税率ごとに区分した消費税額等","subject":"document","status":"pass","detail":"every taxable line states its 消費税額等","source":"S-01","sources":["S-01","S-04","S-05","S-77","S-78","S-79"]},{"id":"ITEM-06","group":"statutory_items","title":"⑥ 書類の交付を受ける事業者の氏名又は名称","subject":"document","status":"pass","detail":"recipient name present","source":"S-01","sources":["S-01","S-04"]},{"id":"RATE-01","group":"rates","title":"Rate value is a published consumption-tax rate","subject":"tax_lines[0]","status":"pass","detail":"10% is a published consumption-tax rate","source":"S-13","sources":["S-13"]},{"id":"RATE-01","group":"rates","title":"Rate value is a published consumption-tax rate","subject":"tax_lines[1]","status":"pass","detail":"8% is a published consumption-tax rate","source":"S-13","sources":["S-13"]},{"id":"RATE-02","group":"rates","title":"8% line is disambiguated (軽減税率 8% = 6.24 + 1.76 vs 経過措置 旧税率 8% = 6.3 + 1.7)","subject":"tax_lines[0]","status":"not_applicable","detail":"not an 8% line","source":"S-13","sources":["S-13"]},{"id":"RATE-02","group":"rates","title":"8% line is disambiguated (軽減税率 8% = 6.24 + 1.76 vs 経過措置 旧税率 8% = 6.3 + 1.7)","subject":"tax_lines[1]","status":"pass","detail":"8% line stated as reduced","source":"S-13","sources":["S-13"]},{"id":"RATE-03","group":"rates","title":"Category ↔ rate coherence","subject":"tax_lines[0]","status":"pass","detail":"standard ↔ 10%","source":"S-13","sources":["S-13"]},{"id":"RATE-03","group":"rates","title":"Category ↔ rate coherence","subject":"tax_lines[1]","status":"pass","detail":"reduced ↔ 8%","source":"S-13","sources":["S-13"]},{"id":"ARITH-01","group":"arithmetic","title":"Per-rate tax amount equals amount × rate within one-yen rounding","subject":"tax_lines[0]","status":"pass","detail":"10% line: tax amount is an integer inside [floor, ceiling] of the computed product ×10/100 (tax-exclusive basis)","source":"S-02","sources":["S-02","S-08","S-47"],"delta_yen":"0"},{"id":"ARITH-01","group":"arithmetic","title":"Per-rate tax amount equals amount × rate within one-yen rounding","subject":"tax_lines[1]","status":"pass","detail":"8% line: tax amount is an integer inside [floor, ceiling] of the computed product ×8/100 (tax-exclusive basis)","source":"S-02","sources":["S-02","S-08","S-47"],"delta_yen":"0"},{"id":"ARITH-02","group":"arithmetic","title":"JPY tax amounts are integers","subject":"document","status":"pass","detail":"every stated tax amount is a whole yen","source":"S-02","sources":["S-02","S-48"]},{"id":"ARITH-03","group":"arithmetic","title":"Σ line amounts = the matching total","subject":"totals","status":"pass","detail":"Σ line amounts = tax_exclusive_total","source":"S-01","sources":["S-01"],"delta_yen":"0"},{"id":"ARITH-04","group":"arithmetic","title":"Σ line tax amounts = totals.tax_total","subject":"totals","status":"pass","detail":"Σ line tax amounts = tax_total","source":"S-01","sources":["S-01"],"delta_yen":"0"},{"id":"ARITH-05","group":"arithmetic","title":"tax_exclusive_total + tax_total = tax_inclusive_total","subject":"totals","status":"pass","detail":"tax_exclusive_total + tax_total = tax_inclusive_total","source":"S-01","sources":["S-01"],"delta_yen":"0"}],"summary":{"pass":20,"fail":0,"unknown":0,"not_applicable":1,"failed_rule_ids":[],"unknown_rule_ids":[]},"schedule":{"basis":"transaction_date","per_date":[{"date":"2026-09-28","rate":0.8,"label":"80%","period_start":"2023-10-01","period_end":"2026-09-30","next_change_on":"2026-10-01","next_rate":0.7,"days_until_next_change":3}],"straddles_step_down":false,"applies_to":"purchases documented WITHOUT a 登録番号, or from a supplier not registered on the 課税仕入れ date — the published buyer-side transitional-deduction tier (NTA Q&A 問113-2: applies uniformly to a document lacking the number, even one from a registered issuer, provided the retained document meets the 区分記載請求書等の記載事項; 問113 also requires the 帳簿 entries listed under not_assessed)","keyed_on":"課税仕入れの時期 (goods: delivery date; services: completion date) per NTA Q&A 問113-3 — the document date is only a proxy when no transaction date is supplied","not_assessed":["per-supplier annual cap: 税込10億円 for 課税期間 beginning 2024-10-01..2026-09-30, 税込1億円 for 課税期間 beginning on/after 2026-10-01 (buyer-ledger fact)","buyer ledger wording 「80％控除対象」/「免」 (buyer bookkeeping requirement)","少額特例 (buyer's 基準期間/特定期間 sales and per-transaction unit)","短期前払費用 treatment","whether the buyer computes tax by 積上げ or 割戻し"],"sources":["S-14","S-15","S-16","S-17"]},"limitation_ids":["L1","L2","L3","L4","L6","L7","L8"],"limitations":["Evaluated against the CURRENT registration episode only: the mirror stores the NTA latest-history row per number. If this number was cancelled or expired and later registered again, a date inside the earlier episode is reported as not registered — a false negative from this cause, not a false positive from it.","Dates are as currently published (data_as_of), including any later NTA corrections; what the site displayed on the evaluation date cannot be reconstructed. An evaluation date after data_as_of is judged on the current row — a later 失効/取消 cannot be known yet.","The NTA holds no name/address history; the register name compared is today's name.","A new registration is posted the day after 登録簿 entry, and JP-Verify syncs on its own cadence; a number can be legally effective before it is visible here.","Presence checks reflect the fields the caller supplied (or the elements found in the XML); they do not verify what is printed on a paper document.","Not tax advice; no determination of any deduction, credit or entitlement (税理士法第2条の税務相談ではありません).","A 削除 (処理区分 99) row in the NTA daily diff file is applied to the mirror at the next diff sync (three times a day); until then a number the NTA has removed from the 登録簿 can read as registered here. The NTA may re-publish a deleted number later (measured: 45 of 238 bare deletions in 40 diff days re-appeared within the archive)."],"sources":[{"id":"S-01","cite":"消費税法57条の4 (e-Gov)","url":"https://laws.e-gov.go.jp/law/363AC0000000108#Mp-At_57_4","accessed":"2026-09-09"},{"id":"S-02","cite":"消費税法施行令70条の10 (e-Gov)","url":"https://laws.e-gov.go.jp/law/363CO0000000360#Mp-At_70_10","accessed":"2026-09-09"},{"id":"S-04","cite":"NTA インボイスQ&A 01-09 (問54, 55, 56, 57, 58, 60, 61, 64, 72, 73)","url":"https://www.nta.go.jp/taxes/shiraberu/zeimokubetsu/shohi/keigenzeiritsu/pdf/qa/01-09.pdf","accessed":"2026-09-15"},{"id":"S-05","cite":"NTA インボイスQ&A 01-01 (問1, 25, 26-2, 32, 73)","url":"https://www.nta.go.jp/taxes/shiraberu/zeimokubetsu/shohi/keigenzeiritsu/pdf/qa/01-01.pdf","accessed":"2026-09-15"},{"id":"S-08","cite":"NTA インボイスQ&A 問57 (端数処理)","url":"https://www.nta.go.jp/taxes/shiraberu/zeimokubetsu/shohi/keigenzeiritsu/pdf/qa/57.pdf","accessed":"2026-09-09"},{"id":"S-13","cite":"タックスアンサー No.6303 消費税及び地方消費税の税率","url":"https://www.nta.go.jp/taxes/shiraberu/taxanswer/shohi/6303.htm","accessed":"2026-09-15"},{"id":"S-14","cite":"NTA インボイスQ&A 問113 (令和8年4月改訂)","url":"https://www.nta.go.jp/taxes/shiraberu/zeimokubetsu/shohi/keigenzeiritsu/pdf/qa/113.pdf","accessed":"2026-09-15"},{"id":"S-15","cite":"NTA インボイスQ&A 01-15 (問113-2 / 113-3 / 113-4)","url":"https://www.nta.go.jp/taxes/shiraberu/zeimokubetsu/shohi/keigenzeiritsu/pdf/qa/01-15.pdf","accessed":"2026-09-15"},{"id":"S-16","cite":"財務省 令和8年度税制改正の大綱の概要","url":"https://www.mof.go.jp/tax_policy/tax_reform/outline/fy2026/08taikou_gaiyou.htm","accessed":"2026-09-15"},{"id":"S-17","cite":"NTA 令和8年度税制改正特集 (インボイス)","url":"https://www.nta.go.jp/taxes/shiraberu/zeimokubetsu/shohi/keigenzeiritsu/invoice-review/index.htm","accessed":"2026-09-15"},{"id":"S-25","cite":"公表サイト リソース定義書 k-resource-dl.pdf (1.5版 令和6年5月; 項番7 sort key, 項番9 処理区分 99, 項番13 最新履歴)","url":"https://www.invoice-kohyo.nta.go.jp/files/k-resource-dl.pdf","accessed":"2026-09-15"},{"id":"S-26","cite":"公表サイト Web-API 利用手続 k-web-api-tetuduki.pdf (§2.1 history fields; 【参考1】 overwrite table)","url":"https://www.invoice-kohyo.nta.go.jp/files/k-web-api-tetuduki.pdf","accessed":"2026-09-15"},{"id":"S-27","cite":"公表サイト サンプルデータ説明 k-sample-explain-r0310.pdf (p.18 差分データの概要)","url":"https://www.invoice-kohyo.nta.go.jp/download/index.files/k-sample-explain-r0310.pdf","accessed":"2026-09-15"},{"id":"S-28","cite":"消費税法基本通達 1-7-3 (登録の効力) / 1-7-7 (事業の廃止による登録の失効)","url":"https://www.nta.go.jp/law/tsutatsu/kihon/shohi/01/07.htm","accessed":"2026-09-15"},{"id":"S-29","cite":"NTA インボイスQ&A 01-04 (問5, 13, 14, 15)","url":"https://www.nta.go.jp/taxes/shiraberu/zeimokubetsu/shohi/keigenzeiritsu/pdf/qa/01-04.pdf","accessed":"2026-09-15"},{"id":"S-31","cite":"NTA インボイスQ&A 問13 (登録取消届出書と失効日)","url":"https://www.nta.go.jp/taxes/shiraberu/zeimokubetsu/shohi/keigenzeiritsu/pdf/qa/13.pdf","accessed":"2026-09-15"},{"id":"S-32","cite":"公表サイト 利用規約 (purpose; attribution examples)","url":"https://www.invoice-kohyo.nta.go.jp/terms-of-use.html","accessed":"2026-09-09"},{"id":"S-33","cite":"公表サイト 運営方針 invoice-houshin.pdf (§4 next-day posting; §5 7-year deletion; §6(3) 全件データファイル = 前月末時点の最新情報, 差分データファイル = 日次の異動情報)","url":"https://www.invoice-kohyo.nta.go.jp/files/invoice-houshin.pdf","accessed":"2026-09-15"},{"id":"S-35","cite":"公表サイト ダウンロード (全件データファイルは毎月初日(休日を除く)に前月末時点で作成、差分データファイルは日次で作成 — いずれも原則作成日の翌日午前6時以降に公開)","url":"https://www.invoice-kohyo.nta.go.jp/download/index.html","accessed":"2026-09-15"},{"id":"S-46","cite":"aligned-ibr-jp-01","url":"https://docs.peppol.eu/poac/jp/pint-jp/trn-invoice/rule/aligned-ibr-jp-01/","accessed":"2026-09-09"},{"id":"S-47","cite":"aligned-ibrp-051-jp","url":"https://docs.peppol.eu/poac/jp/pint-jp/trn-invoice/rule/aligned-ibrp-051-jp/","accessed":"2026-09-09"},{"id":"S-48","cite":"aligned-ibr-jp-06","url":"https://docs.peppol.eu/poac/jp/pint-jp/trn-invoice/rule/aligned-ibr-jp-06/","accessed":"2026-09-09"},{"id":"S-64","cite":"国税庁 法人番号 check-digit worksheet (repo-verified 2026-09-02, jpverify/checkdigit.py validated on 787,566 NTA numbers)","url":"https://www.houjin-bangou.nta.go.jp/documents/checkdigit.pdf","accessed":"2026-09-09"},{"id":"S-77","cite":"消費税法基本通達 第1章第8節 1-8-1〜1-8-21 (1-8-15 端数処理, 1-8-16 外貨, 1-8-17 1万円の判定単位, 1-8-18/1-8-19 返還請求書の交付時期, 1-8-20 一の書類, 1-8-21 修正)","url":"https://www.nta.go.jp/law/tsutatsu/kihon/shohi/01/08.htm","accessed":"2026-09-15"},{"id":"S-78","cite":"NTA インボイスQ&A 問68 (外貨建取引 — 消費税額等は円換算した金額; 外貨建ての Tax amount は参考)","url":"https://www.nta.go.jp/taxes/shiraberu/zeimokubetsu/shohi/keigenzeiritsu/pdf/qa/68.pdf","accessed":"2026-09-15"},{"id":"S-79","cite":"NTA インボイスQ&A 問60 (適格返還請求書の記載事項 — ⑤ 消費税額等 又は 適用税率)","url":"https://www.nta.go.jp/taxes/shiraberu/zeimokubetsu/shohi/keigenzeiritsu/pdf/qa/60.pdf","accessed":"2026-09-15"},{"id":"S-80","cite":"NTA インボイスQ&A 問61 (課税資産の譲渡等を行った年月日 — 一定の期間 / 継続 convention dates)","url":"https://www.nta.go.jp/taxes/shiraberu/zeimokubetsu/shohi/keigenzeiritsu/pdf/qa/61.pdf","accessed":"2026-09-15"}],"data_as_of":{"zenken_date":"20260831","last_diff_date":"20260901","synced_at":"2026-09-02T05:30:38+00:00","source":"https://www.invoice-kohyo.nta.go.jp/download/zenken","data_date":"20260901"},"source":"https://www.invoice-kohyo.nta.go.jp/download/zenken","attribution":"出典：国税庁適格請求書発行事業者公表サイト（国税庁）（https://www.invoice-kohyo.nta.go.jp/）を加工して作成","nta_notice":"本サービスは国税庁公表データ（全件・差分ダウンロードファイル）を JP-Verify が加工して作成したものであり、国税庁が作成したものではなく、内容は国税庁によって保証されたものではありません。 Based on NTA-published bulk data, processed by JP-Verify; not produced or guaranteed by the NTA.","disclaimer":{"en":"Register facts, document-format checks and arithmetic on the document's own figures, plus the published statutory schedule with its source — NOT tax advice and not a determination of any deduction, credit or entitlement; the buyer's consumption-tax treatment is for the taxpayer and their tax adviser (税理士).","ja":"本結果は国税庁公表データに基づく登録事実・書類の記載事項チェック・書類自身の数値の計算整合性・公表されている経過措置の適用区分(出典URL付き)のみを示すものです。税務相談・仕入税額控除の可否や控除額の判定ではありません。買手側の消費税の取扱いは納税者ご自身および税理士にご確認ください。"},"tier":"sandbox","remaining":49,"english_name_register":{"source":"https://www.houjin-bangou.nta.go.jp/","data_date":"20260831","attribution":"出典：国税庁法人番号公表サイト（国税庁）（https://www.houjin-bangou.nta.go.jp/）を加工して作成","note":"vintage of the 法人番号 register behind any name_en_source / address_en_source of 'official-en'"}}},"malformed_number":{"summary":"the document's 登録番号 is malformed (metered finding, text redacted)","value":{"product":"JP-Verify Invoice Facts","rule_set_version":"2026-09-18.1","document":{"input":"facts","document_type":"qualified_invoice","digest":{"alg":"sha256","over":"canonical-facts-json","value":"df1b5c568e965c0452ce778b3c68a1a91403ad7d4488b4a05d28e0567ecaecc3"},"supplier_t_number":null,"supplier_t_number_state":"malformed","issue_date":"2026-10-05","transaction_date":"2026-09-28","transaction_period":null,"currency":"JPY","amount_sign":"positive","evaluation_dates":{"dates":["2026-09-28"],"basis":"transaction_date"}},"register":{"number":null,"valid_format":false,"status":"invalid","status_ja":null,"registration_date":null,"update_date":null,"expire_date":null,"disposal_date":null,"kind":null,"kind_code":null,"latest_history_flag":null,"process_code":null,"corporate_number":null,"name_ja":null,"name_en":null,"name_en_source":null,"address_ja":null,"address_en":null,"address_en_source":null,"reason":"format: expected 'T' followed by 13 ASCII digits","input_credit":{"qualified_invoice_issuer":false,"note":"not a well-formed qualified-invoice number","disclaimer":"factual registration status from the 国税庁 register; NOT tax advice. A buyer's consumption-tax input-credit entitlement depends on their own facts and the transitional measures — consult NTA guidance or a tax adviser."},"summary":"the document's 登録番号 is not a well-formed qualified-invoice number"},"status_on_date":{"dates":["2026-09-28"],"basis":"transaction_date","registered":null,"per_date":[{"date":"2026-09-28","registered":null,"reason":"no well-formed number on the document"}],"registration_date":null,"disposal_date":null,"expire_date":null,"rule":"registered on D iff registration_date <= D and (disposal_date is null or D < disposal_date) and (expire_date is null or D < expire_date) — evaluated on the current registration episode","boundary_case":false,"after_data_as_of":true,"episode_scope":"current","note":null,"limitation_ids":[],"limitations":[],"sources":["S-25","S-26","S-27","S-28","S-29","S-31","S-33"]},"name_match":{"level":"not_compared","reason":"no_register_row","compared_to":null,"matched_field":null,"method":"NFKC + whitespace/punctuation/legal-form normalisation, then jpverify.namevariants rule-enumerable variants — not fuzzy","note":"a name match is NOT entity identity; same-name companies are common; the NTA register holds no name history, so the comparison is against the name as currently published; a trade name (屋号) or abbreviation is permitted on the document when the issuer is otherwise identifiable (NTA Q&A 問55) — 'none' is a prompt to confirm with the supplier, not a finding"},"rules":[{"id":"REG-01","group":"register","title":"Registration number is well-formed (T + 13 ASCII digits, valid check digit)","subject":"document","status":"fail","detail":"format: expected 'T' followed by 13 ASCII digits","source":"S-64","sources":["S-64","S-46"]},{"id":"REG-02","group":"register","title":"Number present in the NTA register as of data_as_of","subject":"document","status":"not_applicable","detail":"no well-formed 登録番号 to look up (REG-01)","source":"S-32","sources":["S-32"]},{"id":"REG-03","group":"register","title":"Registered on the evaluation date(s)","subject":"document","status":"not_applicable","detail":"no register row to evaluate (REG-02)","source":"S-28","sources":["S-28","S-29","S-31","S-25","S-33","S-77"]},{"id":"ITEM-01","group":"statutory_items","title":"① 適格請求書発行事業者の氏名又は名称 及び 登録番号","subject":"document","status":"fail","detail":"登録番号 is malformed (REG-01); NTA's own framing for a document that lacks a statutory item: 適格請求書の記載事項を満たさない (問26-2, S-05) — a fact about the document, not a determination","source":"S-01","sources":["S-01","S-04","S-15"]},{"id":"ITEM-02","group":"statutory_items","title":"② 課税資産の譲渡等を行った年月日 (or 一定の期間); return_invoice: 返還等を行う年月日 and the original 課税資産の譲渡等を行った年月日/期間 (57条の4③二)","subject":"document","status":"pass","detail":"transaction_date supplied","source":"S-01","sources":["S-01","S-04","S-79","S-80"]},{"id":"ITEM-03","group":"statutory_items","title":"③ 資産又は役務の内容 (+ 軽減対象である旨)","subject":"document","status":"pass","detail":"description stated and 軽減対象である旨 marked","source":"S-01","sources":["S-01","S-04","S-13"]},{"id":"ITEM-04","group":"statutory_items","title":"④ 税率ごとに区分した税抜/税込合計額 及び 適用税率","subject":"document","status":"pass","detail":"every taxable line states both its amount and 適用税率","source":"S-01","sources":["S-01","S-04"]},{"id":"ITEM-05","group":"statutory_items","title":"⑤ 税率ごとに区分した消費税額等","subject":"document","status":"pass","detail":"every taxable line states its 消費税額等","source":"S-01","sources":["S-01","S-04","S-05","S-77","S-78","S-79"]},{"id":"ITEM-06","group":"statutory_items","title":"⑥ 書類の交付を受ける事業者の氏名又は名称","subject":"document","status":"pass","detail":"recipient name present","source":"S-01","sources":["S-01","S-04"]},{"id":"RATE-01","group":"rates","title":"Rate value is a published consumption-tax rate","subject":"tax_lines[0]","status":"pass","detail":"10% is a published consumption-tax rate","source":"S-13","sources":["S-13"]},{"id":"RATE-01","group":"rates","title":"Rate value is a published consumption-tax rate","subject":"tax_lines[1]","status":"pass","detail":"8% is a published consumption-tax rate","source":"S-13","sources":["S-13"]},{"id":"RATE-02","group":"rates","title":"8% line is disambiguated (軽減税率 8% = 6.24 + 1.76 vs 経過措置 旧税率 8% = 6.3 + 1.7)","subject":"tax_lines[0]","status":"not_applicable","detail":"not an 8% line","source":"S-13","sources":["S-13"]},{"id":"RATE-02","group":"rates","title":"8% line is disambiguated (軽減税率 8% = 6.24 + 1.76 vs 経過措置 旧税率 8% = 6.3 + 1.7)","subject":"tax_lines[1]","status":"pass","detail":"8% line stated as reduced","source":"S-13","sources":["S-13"]},{"id":"RATE-03","group":"rates","title":"Category ↔ rate coherence","subject":"tax_lines[0]","status":"pass","detail":"standard ↔ 10%","source":"S-13","sources":["S-13"]},{"id":"RATE-03","group":"rates","title":"Category ↔ rate coherence","subject":"tax_lines[1]","status":"pass","detail":"reduced ↔ 8%","source":"S-13","sources":["S-13"]},{"id":"ARITH-01","group":"arithmetic","title":"Per-rate tax amount equals amount × rate within one-yen rounding","subject":"tax_lines[0]","status":"pass","detail":"10% line: tax amount is an integer inside [floor, ceiling] of the computed product ×10/100 (tax-exclusive basis)","source":"S-02","sources":["S-02","S-08","S-47"],"delta_yen":"0"},{"id":"ARITH-01","group":"arithmetic","title":"Per-rate tax amount equals amount × rate within one-yen rounding","subject":"tax_lines[1]","status":"pass","detail":"8% line: tax amount is an integer inside [floor, ceiling] of the computed product ×8/100 (tax-exclusive basis)","source":"S-02","sources":["S-02","S-08","S-47"],"delta_yen":"0"},{"id":"ARITH-02","group":"arithmetic","title":"JPY tax amounts are integers","subject":"document","status":"pass","detail":"every stated tax amount is a whole yen","source":"S-02","sources":["S-02","S-48"]},{"id":"ARITH-03","group":"arithmetic","title":"Σ line amounts = the matching total","subject":"totals","status":"pass","detail":"Σ line amounts = tax_exclusive_total","source":"S-01","sources":["S-01"],"delta_yen":"0"},{"id":"ARITH-04","group":"arithmetic","title":"Σ line tax amounts = totals.tax_total","subject":"totals","status":"pass","detail":"Σ line tax amounts = tax_total","source":"S-01","sources":["S-01"],"delta_yen":"0"},{"id":"ARITH-05","group":"arithmetic","title":"tax_exclusive_total + tax_total = tax_inclusive_total","subject":"totals","status":"pass","detail":"tax_exclusive_total + tax_total = tax_inclusive_total","source":"S-01","sources":["S-01"],"delta_yen":"0"}],"summary":{"pass":16,"fail":2,"unknown":0,"not_applicable":3,"failed_rule_ids":["REG-01","ITEM-01"],"unknown_rule_ids":[]},"schedule":{"basis":"transaction_date","per_date":[{"date":"2026-09-28","rate":0.8,"label":"80%","period_start":"2023-10-01","period_end":"2026-09-30","next_change_on":"2026-10-01","next_rate":0.7,"days_until_next_change":3}],"straddles_step_down":false,"applies_to":"purchases documented WITHOUT a 登録番号, or from a supplier not registered on the 課税仕入れ date — the published buyer-side transitional-deduction tier (NTA Q&A 問113-2: applies uniformly to a document lacking the number, even one from a registered issuer, provided the retained document meets the 区分記載請求書等の記載事項; 問113 also requires the 帳簿 entries listed under not_assessed)","keyed_on":"課税仕入れの時期 (goods: delivery date; services: completion date) per NTA Q&A 問113-3 — the document date is only a proxy when no transaction date is supplied","not_assessed":["per-supplier annual cap: 税込10億円 for 課税期間 beginning 2024-10-01..2026-09-30, 税込1億円 for 課税期間 beginning on/after 2026-10-01 (buyer-ledger fact)","buyer ledger wording 「80％控除対象」/「免」 (buyer bookkeeping requirement)","少額特例 (buyer's 基準期間/特定期間 sales and per-transaction unit)","短期前払費用 treatment","whether the buyer computes tax by 積上げ or 割戻し"],"sources":["S-14","S-15","S-16","S-17"]},"limitation_ids":["L6","L7"],"limitations":["Presence checks reflect the fields the caller supplied (or the elements found in the XML); they do not verify what is printed on a paper document.","Not tax advice; no determination of any deduction, credit or entitlement (税理士法第2条の税務相談ではありません)."],"sources":[{"id":"S-01","cite":"消費税法57条の4 (e-Gov)","url":"https://laws.e-gov.go.jp/law/363AC0000000108#Mp-At_57_4","accessed":"2026-09-09"},{"id":"S-02","cite":"消費税法施行令70条の10 (e-Gov)","url":"https://laws.e-gov.go.jp/law/363CO0000000360#Mp-At_70_10","accessed":"2026-09-09"},{"id":"S-04","cite":"NTA インボイスQ&A 01-09 (問54, 55, 56, 57, 58, 60, 61, 64, 72, 73)","url":"https://www.nta.go.jp/taxes/shiraberu/zeimokubetsu/shohi/keigenzeiritsu/pdf/qa/01-09.pdf","accessed":"2026-09-15"},{"id":"S-05","cite":"NTA インボイスQ&A 01-01 (問1, 25, 26-2, 32, 73)","url":"https://www.nta.go.jp/taxes/shiraberu/zeimokubetsu/shohi/keigenzeiritsu/pdf/qa/01-01.pdf","accessed":"2026-09-15"},{"id":"S-08","cite":"NTA インボイスQ&A 問57 (端数処理)","url":"https://www.nta.go.jp/taxes/shiraberu/zeimokubetsu/shohi/keigenzeiritsu/pdf/qa/57.pdf","accessed":"2026-09-09"},{"id":"S-13","cite":"タックスアンサー No.6303 消費税及び地方消費税の税率","url":"https://www.nta.go.jp/taxes/shiraberu/taxanswer/shohi/6303.htm","accessed":"2026-09-15"},{"id":"S-14","cite":"NTA インボイスQ&A 問113 (令和8年4月改訂)","url":"https://www.nta.go.jp/taxes/shiraberu/zeimokubetsu/shohi/keigenzeiritsu/pdf/qa/113.pdf","accessed":"2026-09-15"},{"id":"S-15","cite":"NTA インボイスQ&A 01-15 (問113-2 / 113-3 / 113-4)","url":"https://www.nta.go.jp/taxes/shiraberu/zeimokubetsu/shohi/keigenzeiritsu/pdf/qa/01-15.pdf","accessed":"2026-09-15"},{"id":"S-16","cite":"財務省 令和8年度税制改正の大綱の概要","url":"https://www.mof.go.jp/tax_policy/tax_reform/outline/fy2026/08taikou_gaiyou.htm","accessed":"2026-09-15"},{"id":"S-17","cite":"NTA 令和8年度税制改正特集 (インボイス)","url":"https://www.nta.go.jp/taxes/shiraberu/zeimokubetsu/shohi/keigenzeiritsu/invoice-review/index.htm","accessed":"2026-09-15"},{"id":"S-25","cite":"公表サイト リソース定義書 k-resource-dl.pdf (1.5版 令和6年5月; 項番7 sort key, 項番9 処理区分 99, 項番13 最新履歴)","url":"https://www.invoice-kohyo.nta.go.jp/files/k-resource-dl.pdf","accessed":"2026-09-15"},{"id":"S-26","cite":"公表サイト Web-API 利用手続 k-web-api-tetuduki.pdf (§2.1 history fields; 【参考1】 overwrite table)","url":"https://www.invoice-kohyo.nta.go.jp/files/k-web-api-tetuduki.pdf","accessed":"2026-09-15"},{"id":"S-27","cite":"公表サイト サンプルデータ説明 k-sample-explain-r0310.pdf (p.18 差分データの概要)","url":"https://www.invoice-kohyo.nta.go.jp/download/index.files/k-sample-explain-r0310.pdf","accessed":"2026-09-15"},{"id":"S-28","cite":"消費税法基本通達 1-7-3 (登録の効力) / 1-7-7 (事業の廃止による登録の失効)","url":"https://www.nta.go.jp/law/tsutatsu/kihon/shohi/01/07.htm","accessed":"2026-09-15"},{"id":"S-29","cite":"NTA インボイスQ&A 01-04 (問5, 13, 14, 15)","url":"https://www.nta.go.jp/taxes/shiraberu/zeimokubetsu/shohi/keigenzeiritsu/pdf/qa/01-04.pdf","accessed":"2026-09-15"},{"id":"S-31","cite":"NTA インボイスQ&A 問13 (登録取消届出書と失効日)","url":"https://www.nta.go.jp/taxes/shiraberu/zeimokubetsu/shohi/keigenzeiritsu/pdf/qa/13.pdf","accessed":"2026-09-15"},{"id":"S-32","cite":"公表サイト 利用規約 (purpose; attribution examples)","url":"https://www.invoice-kohyo.nta.go.jp/terms-of-use.html","accessed":"2026-09-09"},{"id":"S-33","cite":"公表サイト 運営方針 invoice-houshin.pdf (§4 next-day posting; §5 7-year deletion; §6(3) 全件データファイル = 前月末時点の最新情報, 差分データファイル = 日次の異動情報)","url":"https://www.invoice-kohyo.nta.go.jp/files/invoice-houshin.pdf","accessed":"2026-09-15"},{"id":"S-46","cite":"aligned-ibr-jp-01","url":"https://docs.peppol.eu/poac/jp/pint-jp/trn-invoice/rule/aligned-ibr-jp-01/","accessed":"2026-09-09"},{"id":"S-47","cite":"aligned-ibrp-051-jp","url":"https://docs.peppol.eu/poac/jp/pint-jp/trn-invoice/rule/aligned-ibrp-051-jp/","accessed":"2026-09-09"},{"id":"S-48","cite":"aligned-ibr-jp-06","url":"https://docs.peppol.eu/poac/jp/pint-jp/trn-invoice/rule/aligned-ibr-jp-06/","accessed":"2026-09-09"},{"id":"S-64","cite":"国税庁 法人番号 check-digit worksheet (repo-verified 2026-09-02, jpverify/checkdigit.py validated on 787,566 NTA numbers)","url":"https://www.houjin-bangou.nta.go.jp/documents/checkdigit.pdf","accessed":"2026-09-09"},{"id":"S-77","cite":"消費税法基本通達 第1章第8節 1-8-1〜1-8-21 (1-8-15 端数処理, 1-8-16 外貨, 1-8-17 1万円の判定単位, 1-8-18/1-8-19 返還請求書の交付時期, 1-8-20 一の書類, 1-8-21 修正)","url":"https://www.nta.go.jp/law/tsutatsu/kihon/shohi/01/08.htm","accessed":"2026-09-15"},{"id":"S-78","cite":"NTA インボイスQ&A 問68 (外貨建取引 — 消費税額等は円換算した金額; 外貨建ての Tax amount は参考)","url":"https://www.nta.go.jp/taxes/shiraberu/zeimokubetsu/shohi/keigenzeiritsu/pdf/qa/68.pdf","accessed":"2026-09-15"},{"id":"S-79","cite":"NTA インボイスQ&A 問60 (適格返還請求書の記載事項 — ⑤ 消費税額等 又は 適用税率)","url":"https://www.nta.go.jp/taxes/shiraberu/zeimokubetsu/shohi/keigenzeiritsu/pdf/qa/60.pdf","accessed":"2026-09-15"},{"id":"S-80","cite":"NTA インボイスQ&A 問61 (課税資産の譲渡等を行った年月日 — 一定の期間 / 継続 convention dates)","url":"https://www.nta.go.jp/taxes/shiraberu/zeimokubetsu/shohi/keigenzeiritsu/pdf/qa/61.pdf","accessed":"2026-09-15"}],"data_as_of":{"zenken_date":"20260831","last_diff_date":"20260901","synced_at":"2026-09-02T05:30:38+00:00","source":"https://www.invoice-kohyo.nta.go.jp/download/zenken","data_date":"20260901"},"source":"https://www.invoice-kohyo.nta.go.jp/download/zenken","attribution":"出典：国税庁適格請求書発行事業者公表サイト（国税庁）（https://www.invoice-kohyo.nta.go.jp/）を加工して作成","nta_notice":"本サービスは国税庁公表データ（全件・差分ダウンロードファイル）を JP-Verify が加工して作成したものであり、国税庁が作成したものではなく、内容は国税庁によって保証されたものではありません。 Based on NTA-published bulk data, processed by JP-Verify; not produced or guaranteed by the NTA.","disclaimer":{"en":"Register facts, document-format checks and arithmetic on the document's own figures, plus the published statutory schedule with its source — NOT tax advice and not a determination of any deduction, credit or entitlement; the buyer's consumption-tax treatment is for the taxpayer and their tax adviser (税理士).","ja":"本結果は国税庁公表データに基づく登録事実・書類の記載事項チェック・書類自身の数値の計算整合性・公表されている経過措置の適用区分(出典URL付き)のみを示すものです。税務相談・仕入税額控除の可否や控除額の判定ではありません。買手側の消費税の取扱いは納税者ご自身および税理士にご確認ください。"},"tier":"sandbox","remaining":49}}}}}},"413":{"description":"Request body over the size cap — refused before it was buffered or parsed; nothing was charged.","content":{"application/json":{"example":{"error":"request body too large (max 65536 bytes)"},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"415":{"description":"The XML route needs a JP PINT UBL document sent as application/xml or text/xml; nothing was charged.","content":{"application/json":{"example":{"error":"send the JP PINT UBL document as application/xml; nothing was charged"},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"400":{"description":"Malformed input — refused before metering; nothing was charged.","content":{"application/json":{"example":{"error":"no well-formed numbers — nothing was charged","invalid":[]},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unknown, inactive, or expired API key.","content":{"application/json":{"example":{"error":"unknown or inactive API key","tier":"invalid","hint":"see / for pricing; set X-API-Key for higher limits"},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"429":{"description":"Quota exceeded for the caller's tier.","content":{"application/json":{"example":{"error":"sandbox daily quota exceeded","tier":"sandbox","hint":"see / for pricing; set X-API-Key for higher limits"},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"The register, or an optional feature, is unavailable or not configured on this deployment. A register 503 (since 1.4.1) also carries the mirror's `data_as_of` with the source fields — `source_latest_diff_date` (the newest 差分 the NTA 公表サイト listed when the sync last read it), `source_checked_at`, `source_gap_business_days` and `freshness.rule` (`stale` here) — so a caller can tell a mirror that is behind its source (`data_date` older than `source_latest_diff_date`) from a source that has not published (equal, but `source_checked_at` older than `freshness.source_check_max_hours`); `data_as_of` is null when the mirror is absent. Nothing was charged.","content":{"application/json":{"example":{"error":"register temporarily unavailable (not synced or stale beyond the freshness window)","data_as_of":{"zenken_date":"20260831","last_diff_date":"20260911","synced_at":"2026-09-20T13:27:04+00:00","source":"https://www.invoice-kohyo.nta.go.jp/download/zenken","data_date":"20260911","source_latest_diff_date":"20260911","source_checked_at":"2026-09-20T13:27:03+00:00","source_gap_business_days":6,"freshness":{"rule":"stale","max_age_days":10,"source_check_max_hours":48,"source_gap_max_business_days":15}}},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{},{"ApiKeyAuth":[]}],"requestBody":{"required":true,"description":"JP PINT UBL Invoice XML (Peppol BIS Standard Invoice JP PINT 1.1.3)","content":{"application/xml":{"schema":{"type":"string","format":"xml"}}}}}},"/v1/invoice/check/batch":{"post":{"tags":["Compliance"],"summary":"JP-Verify Invoice Facts — many invoices' facts in one call (JSON), optionally under one signed RFC 6962 Merkle root","description":"Check MANY invoices from their facts — ``{\"documents\": [<InvoiceCheckRequest without\n\"sign\">, …], \"sign\": false, \"bundle\": false}`` — and get one positional entry per\ndocument: ``results[i]`` is ``{\"index\": i, \"ok\": true, \"report\": …}`` with exactly the\nreport ``POST /v1/invoice/check`` returns for that document (byte-identical for the same\nfacts — the same rules, sources, limitations and ``rule_set_version``), or ``{\"index\": i,\n\"ok\": false, \"error\": …, \"invalid\": [...]}`` for a document that fails request-level\nvalidation (the single route's free-400 reasons, free here too). ``summary`` counts\n``pass`` / ``fail`` / ``unknown`` / ``not_applicable`` over the checked reports; ``count``\n/ ``checked`` / ``invalid_count`` say how many were submitted, checked and refused. One\nregister snapshot serves the whole batch (one ``data_as_of``).\n\n**NOT tax advice** — the same register facts, document checks and published schedule as the\nsingle route, per document; no verdict, no deductibility determination, no buyer-side\ninput.\n\nCeilings, refused FREE before any document is parsed: the body over 4 MiB (413); more\ndocuments than the caller's tier batch ceiling — 100 Sandbox/Starter, 500 Growth, 1,000\nReseller — (400 naming the count); ``documents`` missing or not a list (400); nothing\ncheckable (400 with the per-document reasons). Metered ``checked`` units, all-or-nothing:\n``limiter.precheck`` refuses an exhausted caller before the work with a 429 that names the\nshortfall (``N documents need N units; M remaining — nothing was charged``), and the\natomic consume after the work charges nothing when it denies. A stale or unreadable\nregister is a free 503 for the whole batch.\n\n``\"sign\": true`` (Growth / Reseller): every checked entry carries ``signed_record`` — the\nsingle route's Ed25519 envelope over ``{\"invoice_check\": report}`` with a compact ``jws``\nsibling, so one document is verifiable on its own. ``\"bundle\": true`` (Growth / Reseller):\n``bundle`` is an RFC 6962 §2.1 Merkle tree over the checked reports in ``results`` order —\n``leaf = SHA-256(0x00 ‖ canonical JSON of {\"invoice_check\": report})`` (sorted keys, no\nwhitespace, UTF-8), interior nodes ``SHA-256(0x01 ‖ left ‖ right)``, the split at the\nlargest power of two below the size — with one §2.1.1 audit path per leaf\n(``proofs[j]``: ``index`` = leaf position, ``document_index`` = the ``results`` index,\n``tree_size``, ``path`` leaf-level sibling first) and a signed record over\n``{\"invoice_check_batch\": {root, count, rule_set_version, data_as_of}}`` (also at the top\nlevel as ``signed_record``); verify a document with 15 lines of stdlib: leaf =\nsha256(0x00 ‖ canonical JSON of ``{\"invoice_check\": report}`` — sorted keys, no spaces),\nnode = sha256(0x01 ‖ left ‖ right) (RFC 6962 §2.1), fold the document's ``path`` from its\nleaf up to ``root``, then verify the signed record over ``{root, count,\nrule_set_version, data_as_of}`` against ``GET /pubkey`` — the worked recipe is in the\nfield reference INVOICE_CHECK.md §2c, available on request. Other tiers get ``null`` and\na note for either flag.\n\nOpt-in ``Idempotency-Key``: a retry with the same key + body replays the first response\n(``Idempotent-Replayed: true``) instead of being re-metered; this route caches bodies up\nto 4 MiB (``JPVERIFY_IDEMPOTENCY_BATCH_MAX_CACHED_BYTES``) and a larger response is served\nwith ``X-JPVerify-Idempotency: not-cached`` — a retry would reprocess and re-meter, so\nkeep a batch to about 200 documents when replay protection matters. Names and amounts are\nconsumed in memory only — never stored, logged or echoed; the bundle hashes the reports,\nnot the documents.","operationId":"invoiceCheckBatch","parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Api-Key"}}],"responses":{"200":{"description":"One positional entry per submitted document: `ok: true` with the single route's report (byte-identical for the same document), or `ok: false` with the request-level reason (free). `summary` counts rule statuses over the checked reports; `bundle` / `signed_record` are null unless requested on a Growth/Reseller key. Metered `checked` units, all-or-nothing. The example is the real response on the sample register (Growth key, `sign` + `bundle`) to the request example's first document plus a second document whose `issue_date` is malformed — refused free as `ok: false`.","content":{"application/json":{"schema":{},"example":{"count":2,"checked":1,"invalid_count":1,"results":[{"index":0,"ok":true,"report":{"product":"JP-Verify Invoice Facts","rule_set_version":"2026-09-18.1","document":{"input":"facts","document_type":"qualified_invoice","digest":{"alg":"sha256","over":"canonical-facts-json","value":"0b33a862e532b19517beceba46d9728fdb437dbba79dfbf3824d75885ff79fcb"},"supplier_t_number":"T8200012010001","supplier_t_number_state":"well_formed","issue_date":"2026-10-05","transaction_date":"2026-09-28","transaction_period":null,"currency":"JPY","amount_sign":"positive","evaluation_dates":{"dates":["2026-09-28"],"basis":"transaction_date"}},"register":{"number":"T8200012010001","valid_format":true,"status":"registered","status_ja":"有効","registration_date":"2023-10-01","update_date":"2023-09-05","expire_date":null,"disposal_date":null,"kind":"corporation","kind_code":"2","latest_history_flag":"1","process_code":"01","corporate_number":"8200012010001","name_ja":"株式会社サンプル","name_en":"Sample Co., Ltd.","name_en_source":"official-en","address_ja":"東京都千代田区丸の内1-1-1","address_en":"Tokyo, Chiyoda-ku, Marunouchi 1-1-1","address_en_source":"generated","input_credit":{"qualified_invoice_issuer":true,"note":"registered qualified-invoice issuer (適格請求書発行事業者): this number can back a consumption-tax qualified invoice as of 2026-09-01","disclaimer":"factual registration status from the 国税庁 register; NOT tax advice. A buyer's consumption-tax input-credit entitlement depends on their own facts and the transitional measures — consult NTA guidance or a tax adviser."},"summary":"Sample Co., Ltd. — registered qualified-invoice issuer (T8200012010001), registered 2023-10-01 (active)"},"status_on_date":{"dates":["2026-09-28"],"basis":"transaction_date","registered":true,"per_date":[{"date":"2026-09-28","registered":true,"reason":"registration_date <= D < end (end = disposal_date / expire_date, or open)"}],"registration_date":"2023-10-01","disposal_date":null,"expire_date":null,"rule":"registered on D iff registration_date <= D and (disposal_date is null or D < disposal_date) and (expire_date is null or D < expire_date) — evaluated on the current registration episode","boundary_case":false,"after_data_as_of":true,"episode_scope":"current","note":null,"limitation_ids":["L1","L2","L4","L8"],"limitations":["Evaluated against the CURRENT registration episode only: the mirror stores the NTA latest-history row per number. If this number was cancelled or expired and later registered again, a date inside the earlier episode is reported as not registered — a false negative from this cause, not a false positive from it.","Dates are as currently published (data_as_of), including any later NTA corrections; what the site displayed on the evaluation date cannot be reconstructed. An evaluation date after data_as_of is judged on the current row — a later 失効/取消 cannot be known yet.","A new registration is posted the day after 登録簿 entry, and JP-Verify syncs on its own cadence; a number can be legally effective before it is visible here.","A 削除 (処理区分 99) row in the NTA daily diff file is applied to the mirror at the next diff sync (three times a day); until then a number the NTA has removed from the 登録簿 can read as registered here. The NTA may re-publish a deleted number later (measured: 45 of 238 bare deletions in 40 diff days re-appeared within the archive)."],"sources":["S-25","S-26","S-27","S-28","S-29","S-31","S-33"]},"name_match":{"level":"exact","reason":null,"compared_to":"name_ja","matched_field":"seller_name","method":"NFKC + whitespace/punctuation/legal-form normalisation, then jpverify.namevariants rule-enumerable variants — not fuzzy","note":"a name match is NOT entity identity; same-name companies are common; the NTA register holds no name history, so the comparison is against the name as currently published; a trade name (屋号) or abbreviation is permitted on the document when the issuer is otherwise identifiable (NTA Q&A 問55) — 'none' is a prompt to confirm with the supplier, not a finding"},"rules":[{"id":"REG-01","group":"register","title":"Registration number is well-formed (T + 13 ASCII digits, valid check digit)","subject":"document","status":"pass","detail":"well-formed","source":"S-64","sources":["S-64","S-46"]},{"id":"REG-02","group":"register","title":"Number present in the NTA register as of data_as_of","subject":"document","status":"pass","detail":"row present in the NTA register as of data_as_of (current status: registered)","source":"S-32","sources":["S-32"]},{"id":"REG-03","group":"register","title":"Registered on the evaluation date(s)","subject":"document","status":"pass","detail":"registered on every evaluation date: registration_date <= D, and D before any disposal_date / expire_date","source":"S-28","sources":["S-28","S-29","S-31","S-25","S-33","S-77"]},{"id":"ITEM-01","group":"statutory_items","title":"① 適格請求書発行事業者の氏名又は名称 及び 登録番号","subject":"document","status":"pass","detail":"issuer name present and 登録番号 well-formed","source":"S-01","sources":["S-01","S-04","S-15"]},{"id":"ITEM-02","group":"statutory_items","title":"② 課税資産の譲渡等を行った年月日 (or 一定の期間); return_invoice: 返還等を行う年月日 and the original 課税資産の譲渡等を行った年月日/期間 (57条の4③二)","subject":"document","status":"pass","detail":"transaction_date supplied","source":"S-01","sources":["S-01","S-04","S-79","S-80"]},{"id":"ITEM-03","group":"statutory_items","title":"③ 資産又は役務の内容 (+ 軽減対象である旨)","subject":"document","status":"pass","detail":"description stated and 軽減対象である旨 marked","source":"S-01","sources":["S-01","S-04","S-13"]},{"id":"ITEM-04","group":"statutory_items","title":"④ 税率ごとに区分した税抜/税込合計額 及び 適用税率","subject":"document","status":"pass","detail":"every taxable line states both its amount and 適用税率","source":"S-01","sources":["S-01","S-04"]},{"id":"ITEM-05","group":"statutory_items","title":"⑤ 税率ごとに区分した消費税額等","subject":"document","status":"pass","detail":"every taxable line states its 消費税額等","source":"S-01","sources":["S-01","S-04","S-05","S-77","S-78","S-79"]},{"id":"ITEM-06","group":"statutory_items","title":"⑥ 書類の交付を受ける事業者の氏名又は名称","subject":"document","status":"pass","detail":"recipient name present","source":"S-01","sources":["S-01","S-04"]},{"id":"RATE-01","group":"rates","title":"Rate value is a published consumption-tax rate","subject":"tax_lines[0]","status":"pass","detail":"10% is a published consumption-tax rate","source":"S-13","sources":["S-13"]},{"id":"RATE-01","group":"rates","title":"Rate value is a published consumption-tax rate","subject":"tax_lines[1]","status":"pass","detail":"8% is a published consumption-tax rate","source":"S-13","sources":["S-13"]},{"id":"RATE-02","group":"rates","title":"8% line is disambiguated (軽減税率 8% = 6.24 + 1.76 vs 経過措置 旧税率 8% = 6.3 + 1.7)","subject":"tax_lines[0]","status":"not_applicable","detail":"not an 8% line","source":"S-13","sources":["S-13"]},{"id":"RATE-02","group":"rates","title":"8% line is disambiguated (軽減税率 8% = 6.24 + 1.76 vs 経過措置 旧税率 8% = 6.3 + 1.7)","subject":"tax_lines[1]","status":"pass","detail":"8% line stated as reduced","source":"S-13","sources":["S-13"]},{"id":"RATE-03","group":"rates","title":"Category ↔ rate coherence","subject":"tax_lines[0]","status":"pass","detail":"standard ↔ 10%","source":"S-13","sources":["S-13"]},{"id":"RATE-03","group":"rates","title":"Category ↔ rate coherence","subject":"tax_lines[1]","status":"pass","detail":"reduced ↔ 8%","source":"S-13","sources":["S-13"]},{"id":"ARITH-01","group":"arithmetic","title":"Per-rate tax amount equals amount × rate within one-yen rounding","subject":"tax_lines[0]","status":"pass","detail":"10% line: tax amount is an integer inside [floor, ceiling] of the computed product ×10/100 (tax-exclusive basis)","source":"S-02","sources":["S-02","S-08","S-47"],"delta_yen":"0"},{"id":"ARITH-01","group":"arithmetic","title":"Per-rate tax amount equals amount × rate within one-yen rounding","subject":"tax_lines[1]","status":"pass","detail":"8% line: tax amount is an integer inside [floor, ceiling] of the computed product ×8/100 (tax-exclusive basis)","source":"S-02","sources":["S-02","S-08","S-47"],"delta_yen":"0"},{"id":"ARITH-02","group":"arithmetic","title":"JPY tax amounts are integers","subject":"document","status":"pass","detail":"every stated tax amount is a whole yen","source":"S-02","sources":["S-02","S-48"]},{"id":"ARITH-03","group":"arithmetic","title":"Σ line amounts = the matching total","subject":"totals","status":"pass","detail":"Σ line amounts = tax_exclusive_total","source":"S-01","sources":["S-01"],"delta_yen":"0"},{"id":"ARITH-04","group":"arithmetic","title":"Σ line tax amounts = totals.tax_total","subject":"totals","status":"pass","detail":"Σ line tax amounts = tax_total","source":"S-01","sources":["S-01"],"delta_yen":"0"},{"id":"ARITH-05","group":"arithmetic","title":"tax_exclusive_total + tax_total = tax_inclusive_total","subject":"totals","status":"pass","detail":"tax_exclusive_total + tax_total = tax_inclusive_total","source":"S-01","sources":["S-01"],"delta_yen":"0"}],"summary":{"pass":20,"fail":0,"unknown":0,"not_applicable":1,"failed_rule_ids":[],"unknown_rule_ids":[]},"schedule":{"basis":"transaction_date","per_date":[{"date":"2026-09-28","rate":0.8,"label":"80%","period_start":"2023-10-01","period_end":"2026-09-30","next_change_on":"2026-10-01","next_rate":0.7,"days_until_next_change":3}],"straddles_step_down":false,"applies_to":"purchases documented WITHOUT a 登録番号, or from a supplier not registered on the 課税仕入れ date — the published buyer-side transitional-deduction tier (NTA Q&A 問113-2: applies uniformly to a document lacking the number, even one from a registered issuer, provided the retained document meets the 区分記載請求書等の記載事項; 問113 also requires the 帳簿 entries listed under not_assessed)","keyed_on":"課税仕入れの時期 (goods: delivery date; services: completion date) per NTA Q&A 問113-3 — the document date is only a proxy when no transaction date is supplied","not_assessed":["per-supplier annual cap: 税込10億円 for 課税期間 beginning 2024-10-01..2026-09-30, 税込1億円 for 課税期間 beginning on/after 2026-10-01 (buyer-ledger fact)","buyer ledger wording 「80％控除対象」/「免」 (buyer bookkeeping requirement)","少額特例 (buyer's 基準期間/特定期間 sales and per-transaction unit)","短期前払費用 treatment","whether the buyer computes tax by 積上げ or 割戻し"],"sources":["S-14","S-15","S-16","S-17"]},"limitation_ids":["L1","L2","L3","L4","L6","L7","L8"],"limitations":["Evaluated against the CURRENT registration episode only: the mirror stores the NTA latest-history row per number. If this number was cancelled or expired and later registered again, a date inside the earlier episode is reported as not registered — a false negative from this cause, not a false positive from it.","Dates are as currently published (data_as_of), including any later NTA corrections; what the site displayed on the evaluation date cannot be reconstructed. An evaluation date after data_as_of is judged on the current row — a later 失効/取消 cannot be known yet.","The NTA holds no name/address history; the register name compared is today's name.","A new registration is posted the day after 登録簿 entry, and JP-Verify syncs on its own cadence; a number can be legally effective before it is visible here.","Presence checks reflect the fields the caller supplied (or the elements found in the XML); they do not verify what is printed on a paper document.","Not tax advice; no determination of any deduction, credit or entitlement (税理士法第2条の税務相談ではありません).","A 削除 (処理区分 99) row in the NTA daily diff file is applied to the mirror at the next diff sync (three times a day); until then a number the NTA has removed from the 登録簿 can read as registered here. The NTA may re-publish a deleted number later (measured: 45 of 238 bare deletions in 40 diff days re-appeared within the archive)."],"sources":[{"id":"S-01","cite":"消費税法57条の4 (e-Gov)","url":"https://laws.e-gov.go.jp/law/363AC0000000108#Mp-At_57_4","accessed":"2026-09-09"},{"id":"S-02","cite":"消費税法施行令70条の10 (e-Gov)","url":"https://laws.e-gov.go.jp/law/363CO0000000360#Mp-At_70_10","accessed":"2026-09-09"},{"id":"S-04","cite":"NTA インボイスQ&A 01-09 (問54, 55, 56, 57, 58, 60, 61, 64, 72, 73)","url":"https://www.nta.go.jp/taxes/shiraberu/zeimokubetsu/shohi/keigenzeiritsu/pdf/qa/01-09.pdf","accessed":"2026-09-15"},{"id":"S-05","cite":"NTA インボイスQ&A 01-01 (問1, 25, 26-2, 32, 73)","url":"https://www.nta.go.jp/taxes/shiraberu/zeimokubetsu/shohi/keigenzeiritsu/pdf/qa/01-01.pdf","accessed":"2026-09-15"},{"id":"S-08","cite":"NTA インボイスQ&A 問57 (端数処理)","url":"https://www.nta.go.jp/taxes/shiraberu/zeimokubetsu/shohi/keigenzeiritsu/pdf/qa/57.pdf","accessed":"2026-09-09"},{"id":"S-13","cite":"タックスアンサー No.6303 消費税及び地方消費税の税率","url":"https://www.nta.go.jp/taxes/shiraberu/taxanswer/shohi/6303.htm","accessed":"2026-09-15"},{"id":"S-14","cite":"NTA インボイスQ&A 問113 (令和8年4月改訂)","url":"https://www.nta.go.jp/taxes/shiraberu/zeimokubetsu/shohi/keigenzeiritsu/pdf/qa/113.pdf","accessed":"2026-09-15"},{"id":"S-15","cite":"NTA インボイスQ&A 01-15 (問113-2 / 113-3 / 113-4)","url":"https://www.nta.go.jp/taxes/shiraberu/zeimokubetsu/shohi/keigenzeiritsu/pdf/qa/01-15.pdf","accessed":"2026-09-15"},{"id":"S-16","cite":"財務省 令和8年度税制改正の大綱の概要","url":"https://www.mof.go.jp/tax_policy/tax_reform/outline/fy2026/08taikou_gaiyou.htm","accessed":"2026-09-15"},{"id":"S-17","cite":"NTA 令和8年度税制改正特集 (インボイス)","url":"https://www.nta.go.jp/taxes/shiraberu/zeimokubetsu/shohi/keigenzeiritsu/invoice-review/index.htm","accessed":"2026-09-15"},{"id":"S-25","cite":"公表サイト リソース定義書 k-resource-dl.pdf (1.5版 令和6年5月; 項番7 sort key, 項番9 処理区分 99, 項番13 最新履歴)","url":"https://www.invoice-kohyo.nta.go.jp/files/k-resource-dl.pdf","accessed":"2026-09-15"},{"id":"S-26","cite":"公表サイト Web-API 利用手続 k-web-api-tetuduki.pdf (§2.1 history fields; 【参考1】 overwrite table)","url":"https://www.invoice-kohyo.nta.go.jp/files/k-web-api-tetuduki.pdf","accessed":"2026-09-15"},{"id":"S-27","cite":"公表サイト サンプルデータ説明 k-sample-explain-r0310.pdf (p.18 差分データの概要)","url":"https://www.invoice-kohyo.nta.go.jp/download/index.files/k-sample-explain-r0310.pdf","accessed":"2026-09-15"},{"id":"S-28","cite":"消費税法基本通達 1-7-3 (登録の効力) / 1-7-7 (事業の廃止による登録の失効)","url":"https://www.nta.go.jp/law/tsutatsu/kihon/shohi/01/07.htm","accessed":"2026-09-15"},{"id":"S-29","cite":"NTA インボイスQ&A 01-04 (問5, 13, 14, 15)","url":"https://www.nta.go.jp/taxes/shiraberu/zeimokubetsu/shohi/keigenzeiritsu/pdf/qa/01-04.pdf","accessed":"2026-09-15"},{"id":"S-31","cite":"NTA インボイスQ&A 問13 (登録取消届出書と失効日)","url":"https://www.nta.go.jp/taxes/shiraberu/zeimokubetsu/shohi/keigenzeiritsu/pdf/qa/13.pdf","accessed":"2026-09-15"},{"id":"S-32","cite":"公表サイト 利用規約 (purpose; attribution examples)","url":"https://www.invoice-kohyo.nta.go.jp/terms-of-use.html","accessed":"2026-09-09"},{"id":"S-33","cite":"公表サイト 運営方針 invoice-houshin.pdf (§4 next-day posting; §5 7-year deletion; §6(3) 全件データファイル = 前月末時点の最新情報, 差分データファイル = 日次の異動情報)","url":"https://www.invoice-kohyo.nta.go.jp/files/invoice-houshin.pdf","accessed":"2026-09-15"},{"id":"S-35","cite":"公表サイト ダウンロード (全件データファイルは毎月初日(休日を除く)に前月末時点で作成、差分データファイルは日次で作成 — いずれも原則作成日の翌日午前6時以降に公開)","url":"https://www.invoice-kohyo.nta.go.jp/download/index.html","accessed":"2026-09-15"},{"id":"S-46","cite":"aligned-ibr-jp-01","url":"https://docs.peppol.eu/poac/jp/pint-jp/trn-invoice/rule/aligned-ibr-jp-01/","accessed":"2026-09-09"},{"id":"S-47","cite":"aligned-ibrp-051-jp","url":"https://docs.peppol.eu/poac/jp/pint-jp/trn-invoice/rule/aligned-ibrp-051-jp/","accessed":"2026-09-09"},{"id":"S-48","cite":"aligned-ibr-jp-06","url":"https://docs.peppol.eu/poac/jp/pint-jp/trn-invoice/rule/aligned-ibr-jp-06/","accessed":"2026-09-09"},{"id":"S-64","cite":"国税庁 法人番号 check-digit worksheet (repo-verified 2026-09-02, jpverify/checkdigit.py validated on 787,566 NTA numbers)","url":"https://www.houjin-bangou.nta.go.jp/documents/checkdigit.pdf","accessed":"2026-09-09"},{"id":"S-77","cite":"消費税法基本通達 第1章第8節 1-8-1〜1-8-21 (1-8-15 端数処理, 1-8-16 外貨, 1-8-17 1万円の判定単位, 1-8-18/1-8-19 返還請求書の交付時期, 1-8-20 一の書類, 1-8-21 修正)","url":"https://www.nta.go.jp/law/tsutatsu/kihon/shohi/01/08.htm","accessed":"2026-09-15"},{"id":"S-78","cite":"NTA インボイスQ&A 問68 (外貨建取引 — 消費税額等は円換算した金額; 外貨建ての Tax amount は参考)","url":"https://www.nta.go.jp/taxes/shiraberu/zeimokubetsu/shohi/keigenzeiritsu/pdf/qa/68.pdf","accessed":"2026-09-15"},{"id":"S-79","cite":"NTA インボイスQ&A 問60 (適格返還請求書の記載事項 — ⑤ 消費税額等 又は 適用税率)","url":"https://www.nta.go.jp/taxes/shiraberu/zeimokubetsu/shohi/keigenzeiritsu/pdf/qa/60.pdf","accessed":"2026-09-15"},{"id":"S-80","cite":"NTA インボイスQ&A 問61 (課税資産の譲渡等を行った年月日 — 一定の期間 / 継続 convention dates)","url":"https://www.nta.go.jp/taxes/shiraberu/zeimokubetsu/shohi/keigenzeiritsu/pdf/qa/61.pdf","accessed":"2026-09-15"}],"data_as_of":{"zenken_date":"20260831","last_diff_date":"20260901","synced_at":"2026-09-02T05:30:38+00:00","source":"https://www.invoice-kohyo.nta.go.jp/download/zenken","data_date":"20260901"},"source":"https://www.invoice-kohyo.nta.go.jp/download/zenken","attribution":"出典：国税庁適格請求書発行事業者公表サイト（国税庁）（https://www.invoice-kohyo.nta.go.jp/）を加工して作成","nta_notice":"本サービスは国税庁公表データ（全件・差分ダウンロードファイル）を JP-Verify が加工して作成したものであり、国税庁が作成したものではなく、内容は国税庁によって保証されたものではありません。 Based on NTA-published bulk data, processed by JP-Verify; not produced or guaranteed by the NTA.","disclaimer":{"en":"Register facts, document-format checks and arithmetic on the document's own figures, plus the published statutory schedule with its source — NOT tax advice and not a determination of any deduction, credit or entitlement; the buyer's consumption-tax treatment is for the taxpayer and their tax adviser (税理士).","ja":"本結果は国税庁公表データに基づく登録事実・書類の記載事項チェック・書類自身の数値の計算整合性・公表されている経過措置の適用区分(出典URL付き)のみを示すものです。税務相談・仕入税額控除の可否や控除額の判定ではありません。買手側の消費税の取扱いは納税者ご自身および税理士にご確認ください。"}},"signed_record":{"payload":{"invoice_check":{"product":"JP-Verify Invoice Facts","rule_set_version":"2026-09-18.1","document":{"input":"facts","document_type":"qualified_invoice","digest":{"alg":"sha256","over":"canonical-facts-json","value":"0b33a862e532b19517beceba46d9728fdb437dbba79dfbf3824d75885ff79fcb"},"supplier_t_number":"T8200012010001","supplier_t_number_state":"well_formed","issue_date":"2026-10-05","transaction_date":"2026-09-28","transaction_period":null,"currency":"JPY","amount_sign":"positive","evaluation_dates":{"dates":["2026-09-28"],"basis":"transaction_date"}},"register":{"number":"T8200012010001","valid_format":true,"status":"registered","status_ja":"有効","registration_date":"2023-10-01","update_date":"2023-09-05","expire_date":null,"disposal_date":null,"kind":"corporation","kind_code":"2","latest_history_flag":"1","process_code":"01","corporate_number":"8200012010001","name_ja":"株式会社サンプル","name_en":"Sample Co., Ltd.","name_en_source":"official-en","address_ja":"東京都千代田区丸の内1-1-1","address_en":"Tokyo, Chiyoda-ku, Marunouchi 1-1-1","address_en_source":"generated","input_credit":{"qualified_invoice_issuer":true,"note":"registered qualified-invoice issuer (適格請求書発行事業者): this number can back a consumption-tax qualified invoice as of 2026-09-01","disclaimer":"factual registration status from the 国税庁 register; NOT tax advice. A buyer's consumption-tax input-credit entitlement depends on their own facts and the transitional measures — consult NTA guidance or a tax adviser."},"summary":"Sample Co., Ltd. — registered qualified-invoice issuer (T8200012010001), registered 2023-10-01 (active)"},"status_on_date":{"dates":["2026-09-28"],"basis":"transaction_date","registered":true,"per_date":[{"date":"2026-09-28","registered":true,"reason":"registration_date <= D < end (end = disposal_date / expire_date, or open)"}],"registration_date":"2023-10-01","disposal_date":null,"expire_date":null,"rule":"registered on D iff registration_date <= D and (disposal_date is null or D < disposal_date) and (expire_date is null or D < expire_date) — evaluated on the current registration episode","boundary_case":false,"after_data_as_of":true,"episode_scope":"current","note":null,"limitation_ids":["L1","L2","L4","L8"],"limitations":["Evaluated against the CURRENT registration episode only: the mirror stores the NTA latest-history row per number. If this number was cancelled or expired and later registered again, a date inside the earlier episode is reported as not registered — a false negative from this cause, not a false positive from it.","Dates are as currently published (data_as_of), including any later NTA corrections; what the site displayed on the evaluation date cannot be reconstructed. An evaluation date after data_as_of is judged on the current row — a later 失効/取消 cannot be known yet.","A new registration is posted the day after 登録簿 entry, and JP-Verify syncs on its own cadence; a number can be legally effective before it is visible here.","A 削除 (処理区分 99) row in the NTA daily diff file is applied to the mirror at the next diff sync (three times a day); until then a number the NTA has removed from the 登録簿 can read as registered here. The NTA may re-publish a deleted number later (measured: 45 of 238 bare deletions in 40 diff days re-appeared within the archive)."],"sources":["S-25","S-26","S-27","S-28","S-29","S-31","S-33"]},"name_match":{"level":"exact","reason":null,"compared_to":"name_ja","matched_field":"seller_name","method":"NFKC + whitespace/punctuation/legal-form normalisation, then jpverify.namevariants rule-enumerable variants — not fuzzy","note":"a name match is NOT entity identity; same-name companies are common; the NTA register holds no name history, so the comparison is against the name as currently published; a trade name (屋号) or abbreviation is permitted on the document when the issuer is otherwise identifiable (NTA Q&A 問55) — 'none' is a prompt to confirm with the supplier, not a finding"},"rules":[{"id":"REG-01","group":"register","title":"Registration number is well-formed (T + 13 ASCII digits, valid check digit)","subject":"document","status":"pass","detail":"well-formed","source":"S-64","sources":["S-64","S-46"]},{"id":"REG-02","group":"register","title":"Number present in the NTA register as of data_as_of","subject":"document","status":"pass","detail":"row present in the NTA register as of data_as_of (current status: registered)","source":"S-32","sources":["S-32"]},{"id":"REG-03","group":"register","title":"Registered on the evaluation date(s)","subject":"document","status":"pass","detail":"registered on every evaluation date: registration_date <= D, and D before any disposal_date / expire_date","source":"S-28","sources":["S-28","S-29","S-31","S-25","S-33","S-77"]},{"id":"ITEM-01","group":"statutory_items","title":"① 適格請求書発行事業者の氏名又は名称 及び 登録番号","subject":"document","status":"pass","detail":"issuer name present and 登録番号 well-formed","source":"S-01","sources":["S-01","S-04","S-15"]},{"id":"ITEM-02","group":"statutory_items","title":"② 課税資産の譲渡等を行った年月日 (or 一定の期間); return_invoice: 返還等を行う年月日 and the original 課税資産の譲渡等を行った年月日/期間 (57条の4③二)","subject":"document","status":"pass","detail":"transaction_date supplied","source":"S-01","sources":["S-01","S-04","S-79","S-80"]},{"id":"ITEM-03","group":"statutory_items","title":"③ 資産又は役務の内容 (+ 軽減対象である旨)","subject":"document","status":"pass","detail":"description stated and 軽減対象である旨 marked","source":"S-01","sources":["S-01","S-04","S-13"]},{"id":"ITEM-04","group":"statutory_items","title":"④ 税率ごとに区分した税抜/税込合計額 及び 適用税率","subject":"document","status":"pass","detail":"every taxable line states both its amount and 適用税率","source":"S-01","sources":["S-01","S-04"]},{"id":"ITEM-05","group":"statutory_items","title":"⑤ 税率ごとに区分した消費税額等","subject":"document","status":"pass","detail":"every taxable line states its 消費税額等","source":"S-01","sources":["S-01","S-04","S-05","S-77","S-78","S-79"]},{"id":"ITEM-06","group":"statutory_items","title":"⑥ 書類の交付を受ける事業者の氏名又は名称","subject":"document","status":"pass","detail":"recipient name present","source":"S-01","sources":["S-01","S-04"]},{"id":"RATE-01","group":"rates","title":"Rate value is a published consumption-tax rate","subject":"tax_lines[0]","status":"pass","detail":"10% is a published consumption-tax rate","source":"S-13","sources":["S-13"]},{"id":"RATE-01","group":"rates","title":"Rate value is a published consumption-tax rate","subject":"tax_lines[1]","status":"pass","detail":"8% is a published consumption-tax rate","source":"S-13","sources":["S-13"]},{"id":"RATE-02","group":"rates","title":"8% line is disambiguated (軽減税率 8% = 6.24 + 1.76 vs 経過措置 旧税率 8% = 6.3 + 1.7)","subject":"tax_lines[0]","status":"not_applicable","detail":"not an 8% line","source":"S-13","sources":["S-13"]},{"id":"RATE-02","group":"rates","title":"8% line is disambiguated (軽減税率 8% = 6.24 + 1.76 vs 経過措置 旧税率 8% = 6.3 + 1.7)","subject":"tax_lines[1]","status":"pass","detail":"8% line stated as reduced","source":"S-13","sources":["S-13"]},{"id":"RATE-03","group":"rates","title":"Category ↔ rate coherence","subject":"tax_lines[0]","status":"pass","detail":"standard ↔ 10%","source":"S-13","sources":["S-13"]},{"id":"RATE-03","group":"rates","title":"Category ↔ rate coherence","subject":"tax_lines[1]","status":"pass","detail":"reduced ↔ 8%","source":"S-13","sources":["S-13"]},{"id":"ARITH-01","group":"arithmetic","title":"Per-rate tax amount equals amount × rate within one-yen rounding","subject":"tax_lines[0]","status":"pass","detail":"10% line: tax amount is an integer inside [floor, ceiling] of the computed product ×10/100 (tax-exclusive basis)","source":"S-02","sources":["S-02","S-08","S-47"],"delta_yen":"0"},{"id":"ARITH-01","group":"arithmetic","title":"Per-rate tax amount equals amount × rate within one-yen rounding","subject":"tax_lines[1]","status":"pass","detail":"8% line: tax amount is an integer inside [floor, ceiling] of the computed product ×8/100 (tax-exclusive basis)","source":"S-02","sources":["S-02","S-08","S-47"],"delta_yen":"0"},{"id":"ARITH-02","group":"arithmetic","title":"JPY tax amounts are integers","subject":"document","status":"pass","detail":"every stated tax amount is a whole yen","source":"S-02","sources":["S-02","S-48"]},{"id":"ARITH-03","group":"arithmetic","title":"Σ line amounts = the matching total","subject":"totals","status":"pass","detail":"Σ line amounts = tax_exclusive_total","source":"S-01","sources":["S-01"],"delta_yen":"0"},{"id":"ARITH-04","group":"arithmetic","title":"Σ line tax amounts = totals.tax_total","subject":"totals","status":"pass","detail":"Σ line tax amounts = tax_total","source":"S-01","sources":["S-01"],"delta_yen":"0"},{"id":"ARITH-05","group":"arithmetic","title":"tax_exclusive_total + tax_total = tax_inclusive_total","subject":"totals","status":"pass","detail":"tax_exclusive_total + tax_total = tax_inclusive_total","source":"S-01","sources":["S-01"],"delta_yen":"0"}],"summary":{"pass":20,"fail":0,"unknown":0,"not_applicable":1,"failed_rule_ids":[],"unknown_rule_ids":[]},"schedule":{"basis":"transaction_date","per_date":[{"date":"2026-09-28","rate":0.8,"label":"80%","period_start":"2023-10-01","period_end":"2026-09-30","next_change_on":"2026-10-01","next_rate":0.7,"days_until_next_change":3}],"straddles_step_down":false,"applies_to":"purchases documented WITHOUT a 登録番号, or from a supplier not registered on the 課税仕入れ date — the published buyer-side transitional-deduction tier (NTA Q&A 問113-2: applies uniformly to a document lacking the number, even one from a registered issuer, provided the retained document meets the 区分記載請求書等の記載事項; 問113 also requires the 帳簿 entries listed under not_assessed)","keyed_on":"課税仕入れの時期 (goods: delivery date; services: completion date) per NTA Q&A 問113-3 — the document date is only a proxy when no transaction date is supplied","not_assessed":["per-supplier annual cap: 税込10億円 for 課税期間 beginning 2024-10-01..2026-09-30, 税込1億円 for 課税期間 beginning on/after 2026-10-01 (buyer-ledger fact)","buyer ledger wording 「80％控除対象」/「免」 (buyer bookkeeping requirement)","少額特例 (buyer's 基準期間/特定期間 sales and per-transaction unit)","短期前払費用 treatment","whether the buyer computes tax by 積上げ or 割戻し"],"sources":["S-14","S-15","S-16","S-17"]},"limitation_ids":["L1","L2","L3","L4","L6","L7","L8"],"limitations":["Evaluated against the CURRENT registration episode only: the mirror stores the NTA latest-history row per number. If this number was cancelled or expired and later registered again, a date inside the earlier episode is reported as not registered — a false negative from this cause, not a false positive from it.","Dates are as currently published (data_as_of), including any later NTA corrections; what the site displayed on the evaluation date cannot be reconstructed. An evaluation date after data_as_of is judged on the current row — a later 失効/取消 cannot be known yet.","The NTA holds no name/address history; the register name compared is today's name.","A new registration is posted the day after 登録簿 entry, and JP-Verify syncs on its own cadence; a number can be legally effective before it is visible here.","Presence checks reflect the fields the caller supplied (or the elements found in the XML); they do not verify what is printed on a paper document.","Not tax advice; no determination of any deduction, credit or entitlement (税理士法第2条の税務相談ではありません).","A 削除 (処理区分 99) row in the NTA daily diff file is applied to the mirror at the next diff sync (three times a day); until then a number the NTA has removed from the 登録簿 can read as registered here. The NTA may re-publish a deleted number later (measured: 45 of 238 bare deletions in 40 diff days re-appeared within the archive)."],"sources":[{"id":"S-01","cite":"消費税法57条の4 (e-Gov)","url":"https://laws.e-gov.go.jp/law/363AC0000000108#Mp-At_57_4","accessed":"2026-09-09"},{"id":"S-02","cite":"消費税法施行令70条の10 (e-Gov)","url":"https://laws.e-gov.go.jp/law/363CO0000000360#Mp-At_70_10","accessed":"2026-09-09"},{"id":"S-04","cite":"NTA インボイスQ&A 01-09 (問54, 55, 56, 57, 58, 60, 61, 64, 72, 73)","url":"https://www.nta.go.jp/taxes/shiraberu/zeimokubetsu/shohi/keigenzeiritsu/pdf/qa/01-09.pdf","accessed":"2026-09-15"},{"id":"S-05","cite":"NTA インボイスQ&A 01-01 (問1, 25, 26-2, 32, 73)","url":"https://www.nta.go.jp/taxes/shiraberu/zeimokubetsu/shohi/keigenzeiritsu/pdf/qa/01-01.pdf","accessed":"2026-09-15"},{"id":"S-08","cite":"NTA インボイスQ&A 問57 (端数処理)","url":"https://www.nta.go.jp/taxes/shiraberu/zeimokubetsu/shohi/keigenzeiritsu/pdf/qa/57.pdf","accessed":"2026-09-09"},{"id":"S-13","cite":"タックスアンサー No.6303 消費税及び地方消費税の税率","url":"https://www.nta.go.jp/taxes/shiraberu/taxanswer/shohi/6303.htm","accessed":"2026-09-15"},{"id":"S-14","cite":"NTA インボイスQ&A 問113 (令和8年4月改訂)","url":"https://www.nta.go.jp/taxes/shiraberu/zeimokubetsu/shohi/keigenzeiritsu/pdf/qa/113.pdf","accessed":"2026-09-15"},{"id":"S-15","cite":"NTA インボイスQ&A 01-15 (問113-2 / 113-3 / 113-4)","url":"https://www.nta.go.jp/taxes/shiraberu/zeimokubetsu/shohi/keigenzeiritsu/pdf/qa/01-15.pdf","accessed":"2026-09-15"},{"id":"S-16","cite":"財務省 令和8年度税制改正の大綱の概要","url":"https://www.mof.go.jp/tax_policy/tax_reform/outline/fy2026/08taikou_gaiyou.htm","accessed":"2026-09-15"},{"id":"S-17","cite":"NTA 令和8年度税制改正特集 (インボイス)","url":"https://www.nta.go.jp/taxes/shiraberu/zeimokubetsu/shohi/keigenzeiritsu/invoice-review/index.htm","accessed":"2026-09-15"},{"id":"S-25","cite":"公表サイト リソース定義書 k-resource-dl.pdf (1.5版 令和6年5月; 項番7 sort key, 項番9 処理区分 99, 項番13 最新履歴)","url":"https://www.invoice-kohyo.nta.go.jp/files/k-resource-dl.pdf","accessed":"2026-09-15"},{"id":"S-26","cite":"公表サイト Web-API 利用手続 k-web-api-tetuduki.pdf (§2.1 history fields; 【参考1】 overwrite table)","url":"https://www.invoice-kohyo.nta.go.jp/files/k-web-api-tetuduki.pdf","accessed":"2026-09-15"},{"id":"S-27","cite":"公表サイト サンプルデータ説明 k-sample-explain-r0310.pdf (p.18 差分データの概要)","url":"https://www.invoice-kohyo.nta.go.jp/download/index.files/k-sample-explain-r0310.pdf","accessed":"2026-09-15"},{"id":"S-28","cite":"消費税法基本通達 1-7-3 (登録の効力) / 1-7-7 (事業の廃止による登録の失効)","url":"https://www.nta.go.jp/law/tsutatsu/kihon/shohi/01/07.htm","accessed":"2026-09-15"},{"id":"S-29","cite":"NTA インボイスQ&A 01-04 (問5, 13, 14, 15)","url":"https://www.nta.go.jp/taxes/shiraberu/zeimokubetsu/shohi/keigenzeiritsu/pdf/qa/01-04.pdf","accessed":"2026-09-15"},{"id":"S-31","cite":"NTA インボイスQ&A 問13 (登録取消届出書と失効日)","url":"https://www.nta.go.jp/taxes/shiraberu/zeimokubetsu/shohi/keigenzeiritsu/pdf/qa/13.pdf","accessed":"2026-09-15"},{"id":"S-32","cite":"公表サイト 利用規約 (purpose; attribution examples)","url":"https://www.invoice-kohyo.nta.go.jp/terms-of-use.html","accessed":"2026-09-09"},{"id":"S-33","cite":"公表サイト 運営方針 invoice-houshin.pdf (§4 next-day posting; §5 7-year deletion; §6(3) 全件データファイル = 前月末時点の最新情報, 差分データファイル = 日次の異動情報)","url":"https://www.invoice-kohyo.nta.go.jp/files/invoice-houshin.pdf","accessed":"2026-09-15"},{"id":"S-35","cite":"公表サイト ダウンロード (全件データファイルは毎月初日(休日を除く)に前月末時点で作成、差分データファイルは日次で作成 — いずれも原則作成日の翌日午前6時以降に公開)","url":"https://www.invoice-kohyo.nta.go.jp/download/index.html","accessed":"2026-09-15"},{"id":"S-46","cite":"aligned-ibr-jp-01","url":"https://docs.peppol.eu/poac/jp/pint-jp/trn-invoice/rule/aligned-ibr-jp-01/","accessed":"2026-09-09"},{"id":"S-47","cite":"aligned-ibrp-051-jp","url":"https://docs.peppol.eu/poac/jp/pint-jp/trn-invoice/rule/aligned-ibrp-051-jp/","accessed":"2026-09-09"},{"id":"S-48","cite":"aligned-ibr-jp-06","url":"https://docs.peppol.eu/poac/jp/pint-jp/trn-invoice/rule/aligned-ibr-jp-06/","accessed":"2026-09-09"},{"id":"S-64","cite":"国税庁 法人番号 check-digit worksheet (repo-verified 2026-09-02, jpverify/checkdigit.py validated on 787,566 NTA numbers)","url":"https://www.houjin-bangou.nta.go.jp/documents/checkdigit.pdf","accessed":"2026-09-09"},{"id":"S-77","cite":"消費税法基本通達 第1章第8節 1-8-1〜1-8-21 (1-8-15 端数処理, 1-8-16 外貨, 1-8-17 1万円の判定単位, 1-8-18/1-8-19 返還請求書の交付時期, 1-8-20 一の書類, 1-8-21 修正)","url":"https://www.nta.go.jp/law/tsutatsu/kihon/shohi/01/08.htm","accessed":"2026-09-15"},{"id":"S-78","cite":"NTA インボイスQ&A 問68 (外貨建取引 — 消費税額等は円換算した金額; 外貨建ての Tax amount は参考)","url":"https://www.nta.go.jp/taxes/shiraberu/zeimokubetsu/shohi/keigenzeiritsu/pdf/qa/68.pdf","accessed":"2026-09-15"},{"id":"S-79","cite":"NTA インボイスQ&A 問60 (適格返還請求書の記載事項 — ⑤ 消費税額等 又は 適用税率)","url":"https://www.nta.go.jp/taxes/shiraberu/zeimokubetsu/shohi/keigenzeiritsu/pdf/qa/60.pdf","accessed":"2026-09-15"},{"id":"S-80","cite":"NTA インボイスQ&A 問61 (課税資産の譲渡等を行った年月日 — 一定の期間 / 継続 convention dates)","url":"https://www.nta.go.jp/taxes/shiraberu/zeimokubetsu/shohi/keigenzeiritsu/pdf/qa/61.pdf","accessed":"2026-09-15"}],"data_as_of":{"zenken_date":"20260831","last_diff_date":"20260901","synced_at":"2026-09-02T05:30:38+00:00","source":"https://www.invoice-kohyo.nta.go.jp/download/zenken","data_date":"20260901"},"source":"https://www.invoice-kohyo.nta.go.jp/download/zenken","attribution":"出典：国税庁適格請求書発行事業者公表サイト（国税庁）（https://www.invoice-kohyo.nta.go.jp/）を加工して作成","nta_notice":"本サービスは国税庁公表データ（全件・差分ダウンロードファイル）を JP-Verify が加工して作成したものであり、国税庁が作成したものではなく、内容は国税庁によって保証されたものではありません。 Based on NTA-published bulk data, processed by JP-Verify; not produced or guaranteed by the NTA.","disclaimer":{"en":"Register facts, document-format checks and arithmetic on the document's own figures, plus the published statutory schedule with its source — NOT tax advice and not a determination of any deduction, credit or entitlement; the buyer's consumption-tax treatment is for the taxpayer and their tax adviser (税理士).","ja":"本結果は国税庁公表データに基づく登録事実・書類の記載事項チェック・書類自身の数値の計算整合性・公表されている経過措置の適用区分(出典URL付き)のみを示すものです。税務相談・仕入税額控除の可否や控除額の判定ではありません。買手側の消費税の取扱いは納税者ご自身および税理士にご確認ください。"}}},"kind":"invoice_check","issuer":"jp-verify","issued_at":1788328800,"alg":"ed25519","signature":"IYdZMhtj8H6c1aMlLAcUx14th9O3sWYEe0DYo+DBsr1iUZfbcxTuH5WDnsPVoaCwTgQDW8pmaeaFdg8wAl/PAA==","public_key":"LslFXeUAlVQw/9jM5RYM2bAVpcdQGgv027qIYbR4Af0=","jws":"eyJhbGciOiJFZERTQSIsImtpZCI6IjZlZDRjN2QwZGUxZTNmZmMiLCJraW5kIjoiaW52b2ljZV9jaGVjayIsInR5cCI6ImpwdmVyaWZ5LXJlY29yZCtqc29uIn0.eyJpbnZvaWNlX2NoZWNrIjp7ImF0dHJpYnV0aW9uIjoi5Ye65YW477ya5Zu956iO5bqB6YGp5qC86KuL5rGC5pu455m66KGM5LqL5qWt6ICF5YWs6KGo44K144Kk44OI77yI5Zu956iO5bqB77yJ77yIaHR0cHM6Ly93d3cuaW52b2ljZS1rb2h5by5udGEuZ28uanAv77yJ44KS5Yqg5bel44GX44Gm5L2c5oiQIiwiZGF0YV9hc19vZiI6eyJkYXRhX2RhdGUiOiIyMDI2MDkwMSIsImxhc3RfZGlmZl9kYXRlIjoiMjAyNjA5MDEiLCJzb3VyY2UiOiJodHRwczovL3d3dy5pbnZvaWNlLWtvaHlvLm50YS5nby5qcC9kb3dubG9hZC96ZW5rZW4iLCJzeW5jZWRfYXQiOiIyMDI2LTA5LTAyVDA1OjMwOjM4KzAwOjAwIiwiemVua2VuX2RhdGUiOiIyMDI2MDgzMSJ9LCJkaXNjbGFpbWVyIjp7ImVuIjoiUmVnaXN0ZXIgZmFjdHMsIGRvY3VtZW50LWZvcm1hdCBjaGVja3MgYW5kIGFyaXRobWV0aWMgb24gdGhlIGRvY3VtZW50J3Mgb3duIGZpZ3VyZXMsIHBsdXMgdGhlIHB1Ymxpc2hlZCBzdGF0dXRvcnkgc2NoZWR1bGUgd2l0aCBpdHMgc291cmNlIOKAlCBOT1QgdGF4IGFkdmljZSBhbmQgbm90IGEgZGV0ZXJtaW5hdGlvbiBvZiBhbnkgZGVkdWN0aW9uLCBjcmVkaXQgb3IgZW50aXRsZW1lbnQ7IHRoZSBidXllcidzIGNvbnN1bXB0aW9uLXRheCB0cmVhdG1lbnQgaXMgZm9yIHRoZSB0YXhwYXllciBhbmQgdGhlaXIgdGF4IGFkdmlzZXIgKOeojueQhuWjqykuIiwiamEiOiLmnKzntZDmnpzjga_lm73nqI7luoHlhazooajjg4fjg7zjgr_jgavln7rjgaXjgY_nmbvpjLLkuovlrp_jg7vmm7jpoZ7jga7oqJjovInkuovpoIXjg4Hjgqfjg4Pjgq_jg7vmm7jpoZ7oh6rouqvjga7mlbDlgKTjga7oqIjnrpfmlbTlkIjmgKfjg7vlhazooajjgZXjgozjgabjgYTjgovntYzpgY7mjqrnva7jga7pgannlKjljLrliIYo5Ye65YW4VVJM5LuY44GNKeOBruOBv-OCkuekuuOBmeOCguOBruOBp-OBmeOAgueojuWLmeebuOirh-ODu-S7leWFpeeojumhjeaOp-mZpOOBruWPr-WQpuOChOaOp-mZpOmhjeOBruWIpOWumuOBp-OBr-OBguOCiuOBvuOBm-OCk-OAguiyt-aJi-WBtOOBrua2iOiyu-eojuOBruWPluaJseOBhOOBr-e0jeeojuiAheOBlOiHqui6q-OBiuOCiOOBs-eojueQhuWjq-OBq-OBlOeiuuiqjeOBj-OBoOOBleOBhOOAgiJ9LCJkb2N1bWVudCI6eyJhbW91bnRfc2lnbiI6InBvc2l0aXZlIiwiY3VycmVuY3kiOiJKUFkiLCJkaWdlc3QiOnsiYWxnIjoic2hhMjU2Iiwib3ZlciI6ImNhbm9uaWNhbC1mYWN0cy1qc29uIiwidmFsdWUiOiIwYjMzYTg2MmU1MzJiMTk1MTdiZWNlYmE0NmQ5NzI4ZmRiNDM3ZGJiYTc5ZGZiZjM4MjRkNzU4ODVmZjc5ZmNiIn0sImRvY3VtZW50X3R5cGUiOiJxdWFsaWZpZWRfaW52b2ljZSIsImV2YWx1YXRpb25fZGF0ZXMiOnsiYmFzaXMiOiJ0cmFuc2FjdGlvbl9kYXRlIiwiZGF0ZXMiOlsiMjAyNi0wOS0yOCJdfSwiaW5wdXQiOiJmYWN0cyIsImlzc3VlX2RhdGUiOiIyMDI2LTEwLTA1Iiwic3VwcGxpZXJfdF9udW1iZXIiOiJUODIwMDAxMjAxMDAwMSIsInN1cHBsaWVyX3RfbnVtYmVyX3N0YXRlIjoid2VsbF9mb3JtZWQiLCJ0cmFuc2FjdGlvbl9kYXRlIjoiMjAyNi0wOS0yOCIsInRyYW5zYWN0aW9uX3BlcmlvZCI6bnVsbH0sImxpbWl0YXRpb25faWRzIjpbIkwxIiwiTDIiLCJMMyIsIkw0IiwiTDYiLCJMNyIsIkw4Il0sImxpbWl0YXRpb25zIjpbIkV2YWx1YXRlZCBhZ2FpbnN0IHRoZSBDVVJSRU5UIHJlZ2lzdHJhdGlvbiBlcGlzb2RlIG9ubHk6IHRoZSBtaXJyb3Igc3RvcmVzIHRoZSBOVEEgbGF0ZXN0LWhpc3Rvcnkgcm93IHBlciBudW1iZXIuIElmIHRoaXMgbnVtYmVyIHdhcyBjYW5jZWxsZWQgb3IgZXhwaXJlZCBhbmQgbGF0ZXIgcmVnaXN0ZXJlZCBhZ2FpbiwgYSBkYXRlIGluc2lkZSB0aGUgZWFybGllciBlcGlzb2RlIGlzIHJlcG9ydGVkIGFzIG5vdCByZWdpc3RlcmVkIOKAlCBhIGZhbHNlIG5lZ2F0aXZlIGZyb20gdGhpcyBjYXVzZSwgbm90IGEgZmFsc2UgcG9zaXRpdmUgZnJvbSBpdC4iLCJEYXRlcyBhcmUgYXMgY3VycmVudGx5IHB1Ymxpc2hlZCAoZGF0YV9hc19vZiksIGluY2x1ZGluZyBhbnkgbGF0ZXIgTlRBIGNvcnJlY3Rpb25zOyB3aGF0IHRoZSBzaXRlIGRpc3BsYXllZCBvbiB0aGUgZXZhbHVhdGlvbiBkYXRlIGNhbm5vdCBiZSByZWNvbnN0cnVjdGVkLiBBbiBldmFsdWF0aW9uIGRhdGUgYWZ0ZXIgZGF0YV9hc19vZiBpcyBqdWRnZWQgb24gdGhlIGN1cnJlbnQgcm93IOKAlCBhIGxhdGVyIOWkseWKuS_lj5bmtoggY2Fubm90IGJlIGtub3duIHlldC4iLCJUaGUgTlRBIGhvbGRzIG5vIG5hbWUvYWRkcmVzcyBoaXN0b3J5OyB0aGUgcmVnaXN0ZXIgbmFtZSBjb21wYXJlZCBpcyB0b2RheSdzIG5hbWUuIiwiQSBuZXcgcmVnaXN0cmF0aW9uIGlzIHBvc3RlZCB0aGUgZGF5IGFmdGVyIOeZu-mMsuewvyBlbnRyeSwgYW5kIEpQLVZlcmlmeSBzeW5jcyBvbiBpdHMgb3duIGNhZGVuY2U7IGEgbnVtYmVyIGNhbiBiZSBsZWdhbGx5IGVmZmVjdGl2ZSBiZWZvcmUgaXQgaXMgdmlzaWJsZSBoZXJlLiIsIlByZXNlbmNlIGNoZWNrcyByZWZsZWN0IHRoZSBmaWVsZHMgdGhlIGNhbGxlciBzdXBwbGllZCAob3IgdGhlIGVsZW1lbnRzIGZvdW5kIGluIHRoZSBYTUwpOyB0aGV5IGRvIG5vdCB2ZXJpZnkgd2hhdCBpcyBwcmludGVkIG9uIGEgcGFwZXIgZG9jdW1lbnQuIiwiTm90IHRheCBhZHZpY2U7IG5vIGRldGVybWluYXRpb24gb2YgYW55IGRlZHVjdGlvbiwgY3JlZGl0IG9yIGVudGl0bGVtZW50ICjnqI7nkIblo6vms5XnrKwy5p2h44Gu56iO5YuZ55u46KuH44Gn44Gv44GC44KK44G-44Gb44KTKS4iLCJBIOWJiumZpCAo5Yem55CG5Yy65YiGIDk5KSByb3cgaW4gdGhlIE5UQSBkYWlseSBkaWZmIGZpbGUgaXMgYXBwbGllZCB0byB0aGUgbWlycm9yIGF0IHRoZSBuZXh0IGRpZmYgc3luYyAodGhyZWUgdGltZXMgYSBkYXkpOyB1bnRpbCB0aGVuIGEgbnVtYmVyIHRoZSBOVEEgaGFzIHJlbW92ZWQgZnJvbSB0aGUg55m76Yyy57C_IGNhbiByZWFkIGFzIHJlZ2lzdGVyZWQgaGVyZS4gVGhlIE5UQSBtYXkgcmUtcHVibGlzaCBhIGRlbGV0ZWQgbnVtYmVyIGxhdGVyIChtZWFzdXJlZDogNDUgb2YgMjM4IGJhcmUgZGVsZXRpb25zIGluIDQwIGRpZmYgZGF5cyByZS1hcHBlYXJlZCB3aXRoaW4gdGhlIGFyY2hpdmUpLiJdLCJuYW1lX21hdGNoIjp7ImNvbXBhcmVkX3RvIjoibmFtZV9qYSIsImxldmVsIjoiZXhhY3QiLCJtYXRjaGVkX2ZpZWxkIjoic2VsbGVyX25hbWUiLCJtZXRob2QiOiJORktDICsgd2hpdGVzcGFjZS9wdW5jdHVhdGlvbi9sZWdhbC1mb3JtIG5vcm1hbGlzYXRpb24sIHRoZW4ganB2ZXJpZnkubmFtZXZhcmlhbnRzIHJ1bGUtZW51bWVyYWJsZSB2YXJpYW50cyDigJQgbm90IGZ1enp5Iiwibm90ZSI6ImEgbmFtZSBtYXRjaCBpcyBOT1QgZW50aXR5IGlkZW50aXR5OyBzYW1lLW5hbWUgY29tcGFuaWVzIGFyZSBjb21tb247IHRoZSBOVEEgcmVnaXN0ZXIgaG9sZHMgbm8gbmFtZSBoaXN0b3J5LCBzbyB0aGUgY29tcGFyaXNvbiBpcyBhZ2FpbnN0IHRoZSBuYW1lIGFzIGN1cnJlbnRseSBwdWJsaXNoZWQ7IGEgdHJhZGUgbmFtZSAo5bGL5Y-3KSBvciBhYmJyZXZpYXRpb24gaXMgcGVybWl0dGVkIG9uIHRoZSBkb2N1bWVudCB3aGVuIHRoZSBpc3N1ZXIgaXMgb3RoZXJ3aXNlIGlkZW50aWZpYWJsZSAoTlRBIFEmQSDllY81NSkg4oCUICdub25lJyBpcyBhIHByb21wdCB0byBjb25maXJtIHdpdGggdGhlIHN1cHBsaWVyLCBub3QgYSBmaW5kaW5nIiwicmVhc29uIjpudWxsfSwibnRhX25vdGljZSI6IuacrOOCteODvOODk-OCueOBr-WbveeojuW6geWFrOihqOODh-ODvOOCv--8iOWFqOS7tuODu-W3ruWIhuODgOOCpuODs-ODreODvOODieODleOCoeOCpOODq--8ieOCkiBKUC1WZXJpZnkg44GM5Yqg5bel44GX44Gm5L2c5oiQ44GX44Gf44KC44Gu44Gn44GC44KK44CB5Zu956iO5bqB44GM5L2c5oiQ44GX44Gf44KC44Gu44Gn44Gv44Gq44GP44CB5YaF5a6544Gv5Zu956iO5bqB44Gr44KI44Gj44Gm5L-d6Ki844GV44KM44Gf44KC44Gu44Gn44Gv44GC44KK44G-44Gb44KT44CCIEJhc2VkIG9uIE5UQS1wdWJsaXNoZWQgYnVsayBkYXRhLCBwcm9jZXNzZWQgYnkgSlAtVmVyaWZ5OyBub3QgcHJvZHVjZWQgb3IgZ3VhcmFudGVlZCBieSB0aGUgTlRBLiIsInByb2R1Y3QiOiJKUC1WZXJpZnkgSW52b2ljZSBGYWN0cyIsInJlZ2lzdGVyIjp7ImFkZHJlc3NfZW4iOiJUb2t5bywgQ2hpeW9kYS1rdSwgTWFydW5vdWNoaSAxLTEtMSIsImFkZHJlc3NfZW5fc291cmNlIjoiZ2VuZXJhdGVkIiwiYWRkcmVzc19qYSI6IuadseS6rOmDveWNg-S7o-eUsOWMuuS4uOOBruWGhTEtMS0xIiwiY29ycG9yYXRlX251bWJlciI6IjgyMDAwMTIwMTAwMDEiLCJkaXNwb3NhbF9kYXRlIjpudWxsLCJleHBpcmVfZGF0ZSI6bnVsbCwiaW5wdXRfY3JlZGl0Ijp7ImRpc2NsYWltZXIiOiJmYWN0dWFsIHJlZ2lzdHJhdGlvbiBzdGF0dXMgZnJvbSB0aGUg5Zu956iO5bqBIHJlZ2lzdGVyOyBOT1QgdGF4IGFkdmljZS4gQSBidXllcidzIGNvbnN1bXB0aW9uLXRheCBpbnB1dC1jcmVkaXQgZW50aXRsZW1lbnQgZGVwZW5kcyBvbiB0aGVpciBvd24gZmFjdHMgYW5kIHRoZSB0cmFuc2l0aW9uYWwgbWVhc3VyZXMg4oCUIGNvbnN1bHQgTlRBIGd1aWRhbmNlIG9yIGEgdGF4IGFkdmlzZXIuIiwibm90ZSI6InJlZ2lzdGVyZWQgcXVhbGlmaWVkLWludm9pY2UgaXNzdWVyICjpganmoLzoq4vmsYLmm7jnmbrooYzkuovmpa3ogIUpOiB0aGlzIG51bWJlciBjYW4gYmFjayBhIGNvbnN1bXB0aW9uLXRheCBxdWFsaWZpZWQgaW52b2ljZSBhcyBvZiAyMDI2LTA5LTAxIiwicXVhbGlmaWVkX2ludm9pY2VfaXNzdWVyIjp0cnVlfSwia2luZCI6ImNvcnBvcmF0aW9uIiwia2luZF9jb2RlIjoiMiIsImxhdGVzdF9oaXN0b3J5X2ZsYWciOiIxIiwibmFtZV9lbiI6IlNhbXBsZSBDby4sIEx0ZC4iLCJuYW1lX2VuX3NvdXJjZSI6Im9mZmljaWFsLWVuIiwibmFtZV9qYSI6IuagquW8j-S8muekvuOCteODs-ODl-ODqyIsIm51bWJlciI6IlQ4MjAwMDEyMDEwMDAxIiwicHJvY2Vzc19jb2RlIjoiMDEiLCJyZWdpc3RyYXRpb25fZGF0ZSI6IjIwMjMtMTAtMDEiLCJzdGF0dXMiOiJyZWdpc3RlcmVkIiwic3RhdHVzX2phIjoi5pyJ5Yq5Iiwic3VtbWFyeSI6IlNhbXBsZSBDby4sIEx0ZC4g4oCUIHJlZ2lzdGVyZWQgcXVhbGlmaWVkLWludm9pY2UgaXNzdWVyIChUODIwMDAxMjAxMDAwMSksIHJlZ2lzdGVyZWQgMjAyMy0xMC0wMSAoYWN0aXZlKSIsInVwZGF0ZV9kYXRlIjoiMjAyMy0wOS0wNSIsInZhbGlkX2Zvcm1hdCI6dHJ1ZX0sInJ1bGVfc2V0X3ZlcnNpb24iOiIyMDI2LTA5LTE4LjEiLCJydWxlcyI6W3siZGV0YWlsIjoid2VsbC1mb3JtZWQiLCJncm91cCI6InJlZ2lzdGVyIiwiaWQiOiJSRUctMDEiLCJzb3VyY2UiOiJTLTY0Iiwic291cmNlcyI6WyJTLTY0IiwiUy00NiJdLCJzdGF0dXMiOiJwYXNzIiwic3ViamVjdCI6ImRvY3VtZW50IiwidGl0bGUiOiJSZWdpc3RyYXRpb24gbnVtYmVyIGlzIHdlbGwtZm9ybWVkIChUICsgMTMgQVNDSUkgZGlnaXRzLCB2YWxpZCBjaGVjayBkaWdpdCkifSx7ImRldGFpbCI6InJvdyBwcmVzZW50IGluIHRoZSBOVEEgcmVnaXN0ZXIgYXMgb2YgZGF0YV9hc19vZiAoY3VycmVudCBzdGF0dXM6IHJlZ2lzdGVyZWQpIiwiZ3JvdXAiOiJyZWdpc3RlciIsImlkIjoiUkVHLTAyIiwic291cmNlIjoiUy0zMiIsInNvdXJjZXMiOlsiUy0zMiJdLCJzdGF0dXMiOiJwYXNzIiwic3ViamVjdCI6ImRvY3VtZW50IiwidGl0bGUiOiJOdW1iZXIgcHJlc2VudCBpbiB0aGUgTlRBIHJlZ2lzdGVyIGFzIG9mIGRhdGFfYXNfb2YifSx7ImRldGFpbCI6InJlZ2lzdGVyZWQgb24gZXZlcnkgZXZhbHVhdGlvbiBkYXRlOiByZWdpc3RyYXRpb25fZGF0ZSA8PSBELCBhbmQgRCBiZWZvcmUgYW55IGRpc3Bvc2FsX2RhdGUgLyBleHBpcmVfZGF0ZSIsImdyb3VwIjoicmVnaXN0ZXIiLCJpZCI6IlJFRy0wMyIsInNvdXJjZSI6IlMtMjgiLCJzb3VyY2VzIjpbIlMtMjgiLCJTLTI5IiwiUy0zMSIsIlMtMjUiLCJTLTMzIiwiUy03NyJdLCJzdGF0dXMiOiJwYXNzIiwic3ViamVjdCI6ImRvY3VtZW50IiwidGl0bGUiOiJSZWdpc3RlcmVkIG9uIHRoZSBldmFsdWF0aW9uIGRhdGUocykifSx7ImRldGFpbCI6Imlzc3VlciBuYW1lIHByZXNlbnQgYW5kIOeZu-mMsueVquWPtyB3ZWxsLWZvcm1lZCIsImdyb3VwIjoic3RhdHV0b3J5X2l0ZW1zIiwiaWQiOiJJVEVNLTAxIiwic291cmNlIjoiUy0wMSIsInNvdXJjZXMiOlsiUy0wMSIsIlMtMDQiLCJTLTE1Il0sInN0YXR1cyI6InBhc3MiLCJzdWJqZWN0IjoiZG9jdW1lbnQiLCJ0aXRsZSI6IuKRoCDpganmoLzoq4vmsYLmm7jnmbrooYzkuovmpa3ogIXjga7msI_lkI3lj4jjga_lkI3np7Ag5Y-K44GzIOeZu-mMsueVquWPtyJ9LHsiZGV0YWlsIjoidHJhbnNhY3Rpb25fZGF0ZSBzdXBwbGllZCIsImdyb3VwIjoic3RhdHV0b3J5X2l0ZW1zIiwiaWQiOiJJVEVNLTAyIiwic291cmNlIjoiUy0wMSIsInNvdXJjZXMiOlsiUy0wMSIsIlMtMDQiLCJTLTc5IiwiUy04MCJdLCJzdGF0dXMiOiJwYXNzIiwic3ViamVjdCI6ImRvY3VtZW50IiwidGl0bGUiOiLikaEg6Kqy56iO6LOH55Sj44Gu6K2y5rih562J44KS6KGM44Gj44Gf5bm05pyI5pelIChvciDkuIDlrprjga7mnJ_plpMpOyByZXR1cm5faW52b2ljZTog6L-U6YKE562J44KS6KGM44GG5bm05pyI5pelIGFuZCB0aGUgb3JpZ2luYWwg6Kqy56iO6LOH55Sj44Gu6K2y5rih562J44KS6KGM44Gj44Gf5bm05pyI5pelL-acn-mWkyAoNTfmnaHjga404pGi5LqMKSJ9LHsiZGV0YWlsIjoiZGVzY3JpcHRpb24gc3RhdGVkIGFuZCDou73muJvlr77osaHjgafjgYLjgovml6ggbWFya2VkIiwiZ3JvdXAiOiJzdGF0dXRvcnlfaXRlbXMiLCJpZCI6IklURU0tMDMiLCJzb3VyY2UiOiJTLTAxIiwic291cmNlcyI6WyJTLTAxIiwiUy0wNCIsIlMtMTMiXSwic3RhdHVzIjoicGFzcyIsInN1YmplY3QiOiJkb2N1bWVudCIsInRpdGxlIjoi4pGiIOizh-eUo-WPiOOBr-W9ueWLmeOBruWGheWuuSAoKyDou73muJvlr77osaHjgafjgYLjgovml6gpIn0seyJkZXRhaWwiOiJldmVyeSB0YXhhYmxlIGxpbmUgc3RhdGVzIGJvdGggaXRzIGFtb3VudCBhbmQg6YGp55So56iO546HIiwiZ3JvdXAiOiJzdGF0dXRvcnlfaXRlbXMiLCJpZCI6IklURU0tMDQiLCJzb3VyY2UiOiJTLTAxIiwic291cmNlcyI6WyJTLTAxIiwiUy0wNCJdLCJzdGF0dXMiOiJwYXNzIiwic3ViamVjdCI6ImRvY3VtZW50IiwidGl0bGUiOiLikaMg56iO546H44GU44Go44Gr5Yy65YiG44GX44Gf56iO5oqcL-eojui-vOWQiOioiOmhjSDlj4rjgbMg6YGp55So56iO546HIn0seyJkZXRhaWwiOiJldmVyeSB0YXhhYmxlIGxpbmUgc3RhdGVzIGl0cyDmtojosrvnqI7poY3nrYkiLCJncm91cCI6InN0YXR1dG9yeV9pdGVtcyIsImlkIjoiSVRFTS0wNSIsInNvdXJjZSI6IlMtMDEiLCJzb3VyY2VzIjpbIlMtMDEiLCJTLTA0IiwiUy0wNSIsIlMtNzciLCJTLTc4IiwiUy03OSJdLCJzdGF0dXMiOiJwYXNzIiwic3ViamVjdCI6ImRvY3VtZW50IiwidGl0bGUiOiLikaQg56iO546H44GU44Go44Gr5Yy65YiG44GX44Gf5raI6LK756iO6aGN562JIn0seyJkZXRhaWwiOiJyZWNpcGllbnQgbmFtZSBwcmVzZW50IiwiZ3JvdXAiOiJzdGF0dXRvcnlfaXRlbXMiLCJpZCI6IklURU0tMDYiLCJzb3VyY2UiOiJTLTAxIiwic291cmNlcyI6WyJTLTAxIiwiUy0wNCJdLCJzdGF0dXMiOiJwYXNzIiwic3ViamVjdCI6ImRvY3VtZW50IiwidGl0bGUiOiLikaUg5pu46aGe44Gu5Lqk5LuY44KS5Y-X44GR44KL5LqL5qWt6ICF44Gu5rCP5ZCN5Y-I44Gv5ZCN56ewIn0seyJkZXRhaWwiOiIxMCUgaXMgYSBwdWJsaXNoZWQgY29uc3VtcHRpb24tdGF4IHJhdGUiLCJncm91cCI6InJhdGVzIiwiaWQiOiJSQVRFLTAxIiwic291cmNlIjoiUy0xMyIsInNvdXJjZXMiOlsiUy0xMyJdLCJzdGF0dXMiOiJwYXNzIiwic3ViamVjdCI6InRheF9saW5lc1swXSIsInRpdGxlIjoiUmF0ZSB2YWx1ZSBpcyBhIHB1Ymxpc2hlZCBjb25zdW1wdGlvbi10YXggcmF0ZSJ9LHsiZGV0YWlsIjoiOCUgaXMgYSBwdWJsaXNoZWQgY29uc3VtcHRpb24tdGF4IHJhdGUiLCJncm91cCI6InJhdGVzIiwiaWQiOiJSQVRFLTAxIiwic291cmNlIjoiUy0xMyIsInNvdXJjZXMiOlsiUy0xMyJdLCJzdGF0dXMiOiJwYXNzIiwic3ViamVjdCI6InRheF9saW5lc1sxXSIsInRpdGxlIjoiUmF0ZSB2YWx1ZSBpcyBhIHB1Ymxpc2hlZCBjb25zdW1wdGlvbi10YXggcmF0ZSJ9LHsiZGV0YWlsIjoibm90IGFuIDglIGxpbmUiLCJncm91cCI6InJhdGVzIiwiaWQiOiJSQVRFLTAyIiwic291cmNlIjoiUy0xMyIsInNvdXJjZXMiOlsiUy0xMyJdLCJzdGF0dXMiOiJub3RfYXBwbGljYWJsZSIsInN1YmplY3QiOiJ0YXhfbGluZXNbMF0iLCJ0aXRsZSI6IjglIGxpbmUgaXMgZGlzYW1iaWd1YXRlZCAo6Lu95rib56iO546HIDglID0gNi4yNCArIDEuNzYgdnMg57WM6YGO5o6q572uIOaXp-eojueOhyA4JSA9IDYuMyArIDEuNykifSx7ImRldGFpbCI6IjglIGxpbmUgc3RhdGVkIGFzIHJlZHVjZWQiLCJncm91cCI6InJhdGVzIiwiaWQiOiJSQVRFLTAyIiwic291cmNlIjoiUy0xMyIsInNvdXJjZXMiOlsiUy0xMyJdLCJzdGF0dXMiOiJwYXNzIiwic3ViamVjdCI6InRheF9saW5lc1sxXSIsInRpdGxlIjoiOCUgbGluZSBpcyBkaXNhbWJpZ3VhdGVkICjou73muJvnqI7njocgOCUgPSA2LjI0ICsgMS43NiB2cyDntYzpgY7mjqrnva4g5pen56iO546HIDglID0gNi4zICsgMS43KSJ9LHsiZGV0YWlsIjoic3RhbmRhcmQg4oaUIDEwJSIsImdyb3VwIjoicmF0ZXMiLCJpZCI6IlJBVEUtMDMiLCJzb3VyY2UiOiJTLTEzIiwic291cmNlcyI6WyJTLTEzIl0sInN0YXR1cyI6InBhc3MiLCJzdWJqZWN0IjoidGF4X2xpbmVzWzBdIiwidGl0bGUiOiJDYXRlZ29yeSDihpQgcmF0ZSBjb2hlcmVuY2UifSx7ImRldGFpbCI6InJlZHVjZWQg4oaUIDglIiwiZ3JvdXAiOiJyYXRlcyIsImlkIjoiUkFURS0wMyIsInNvdXJjZSI6IlMtMTMiLCJzb3VyY2VzIjpbIlMtMTMiXSwic3RhdHVzIjoicGFzcyIsInN1YmplY3QiOiJ0YXhfbGluZXNbMV0iLCJ0aXRsZSI6IkNhdGVnb3J5IOKGlCByYXRlIGNvaGVyZW5jZSJ9LHsiZGVsdGFfeWVuIjoiMCIsImRldGFpbCI6IjEwJSBsaW5lOiB0YXggYW1vdW50IGlzIGFuIGludGVnZXIgaW5zaWRlIFtmbG9vciwgY2VpbGluZ10gb2YgdGhlIGNvbXB1dGVkIHByb2R1Y3Qgw5cxMC8xMDAgKHRheC1leGNsdXNpdmUgYmFzaXMpIiwiZ3JvdXAiOiJhcml0aG1ldGljIiwiaWQiOiJBUklUSC0wMSIsInNvdXJjZSI6IlMtMDIiLCJzb3VyY2VzIjpbIlMtMDIiLCJTLTA4IiwiUy00NyJdLCJzdGF0dXMiOiJwYXNzIiwic3ViamVjdCI6InRheF9saW5lc1swXSIsInRpdGxlIjoiUGVyLXJhdGUgdGF4IGFtb3VudCBlcXVhbHMgYW1vdW50IMOXIHJhdGUgd2l0aGluIG9uZS15ZW4gcm91bmRpbmcifSx7ImRlbHRhX3llbiI6IjAiLCJkZXRhaWwiOiI4JSBsaW5lOiB0YXggYW1vdW50IGlzIGFuIGludGVnZXIgaW5zaWRlIFtmbG9vciwgY2VpbGluZ10gb2YgdGhlIGNvbXB1dGVkIHByb2R1Y3Qgw5c4LzEwMCAodGF4LWV4Y2x1c2l2ZSBiYXNpcykiLCJncm91cCI6ImFyaXRobWV0aWMiLCJpZCI6IkFSSVRILTAxIiwic291cmNlIjoiUy0wMiIsInNvdXJjZXMiOlsiUy0wMiIsIlMtMDgiLCJTLTQ3Il0sInN0YXR1cyI6InBhc3MiLCJzdWJqZWN0IjoidGF4X2xpbmVzWzFdIiwidGl0bGUiOiJQZXItcmF0ZSB0YXggYW1vdW50IGVxdWFscyBhbW91bnQgw5cgcmF0ZSB3aXRoaW4gb25lLXllbiByb3VuZGluZyJ9LHsiZGV0YWlsIjoiZXZlcnkgc3RhdGVkIHRheCBhbW91bnQgaXMgYSB3aG9sZSB5ZW4iLCJncm91cCI6ImFyaXRobWV0aWMiLCJpZCI6IkFSSVRILTAyIiwic291cmNlIjoiUy0wMiIsInNvdXJjZXMiOlsiUy0wMiIsIlMtNDgiXSwic3RhdHVzIjoicGFzcyIsInN1YmplY3QiOiJkb2N1bWVudCIsInRpdGxlIjoiSlBZIHRheCBhbW91bnRzIGFyZSBpbnRlZ2VycyJ9LHsiZGVsdGFfeWVuIjoiMCIsImRldGFpbCI6Is6jIGxpbmUgYW1vdW50cyA9IHRheF9leGNsdXNpdmVfdG90YWwiLCJncm91cCI6ImFyaXRobWV0aWMiLCJpZCI6IkFSSVRILTAzIiwic291cmNlIjoiUy0wMSIsInNvdXJjZXMiOlsiUy0wMSJdLCJzdGF0dXMiOiJwYXNzIiwic3ViamVjdCI6InRvdGFscyIsInRpdGxlIjoizqMgbGluZSBhbW91bnRzID0gdGhlIG1hdGNoaW5nIHRvdGFsIn0seyJkZWx0YV95ZW4iOiIwIiwiZGV0YWlsIjoizqMgbGluZSB0YXggYW1vdW50cyA9IHRheF90b3RhbCIsImdyb3VwIjoiYXJpdGhtZXRpYyIsImlkIjoiQVJJVEgtMDQiLCJzb3VyY2UiOiJTLTAxIiwic291cmNlcyI6WyJTLTAxIl0sInN0YXR1cyI6InBhc3MiLCJzdWJqZWN0IjoidG90YWxzIiwidGl0bGUiOiLOoyBsaW5lIHRheCBhbW91bnRzID0gdG90YWxzLnRheF90b3RhbCJ9LHsiZGVsdGFfeWVuIjoiMCIsImRldGFpbCI6InRheF9leGNsdXNpdmVfdG90YWwgKyB0YXhfdG90YWwgPSB0YXhfaW5jbHVzaXZlX3RvdGFsIiwiZ3JvdXAiOiJhcml0aG1ldGljIiwiaWQiOiJBUklUSC0wNSIsInNvdXJjZSI6IlMtMDEiLCJzb3VyY2VzIjpbIlMtMDEiXSwic3RhdHVzIjoicGFzcyIsInN1YmplY3QiOiJ0b3RhbHMiLCJ0aXRsZSI6InRheF9leGNsdXNpdmVfdG90YWwgKyB0YXhfdG90YWwgPSB0YXhfaW5jbHVzaXZlX3RvdGFsIn1dLCJzY2hlZHVsZSI6eyJhcHBsaWVzX3RvIjoicHVyY2hhc2VzIGRvY3VtZW50ZWQgV0lUSE9VVCBhIOeZu-mMsueVquWPtywgb3IgZnJvbSBhIHN1cHBsaWVyIG5vdCByZWdpc3RlcmVkIG9uIHRoZSDoqrLnqI7ku5XlhaXjgowgZGF0ZSDigJQgdGhlIHB1Ymxpc2hlZCBidXllci1zaWRlIHRyYW5zaXRpb25hbC1kZWR1Y3Rpb24gdGllciAoTlRBIFEmQSDllY8xMTMtMjogYXBwbGllcyB1bmlmb3JtbHkgdG8gYSBkb2N1bWVudCBsYWNraW5nIHRoZSBudW1iZXIsIGV2ZW4gb25lIGZyb20gYSByZWdpc3RlcmVkIGlzc3VlciwgcHJvdmlkZWQgdGhlIHJldGFpbmVkIGRvY3VtZW50IG1lZXRzIHRoZSDljLrliIboqJjovInoq4vmsYLmm7jnrYnjga7oqJjovInkuovpoIU7IOWVjzExMyBhbHNvIHJlcXVpcmVzIHRoZSDluLPnsL8gZW50cmllcyBsaXN0ZWQgdW5kZXIgbm90X2Fzc2Vzc2VkKSIsImJhc2lzIjoidHJhbnNhY3Rpb25fZGF0ZSIsImtleWVkX29uIjoi6Kqy56iO5LuV5YWl44KM44Gu5pmC5pyfIChnb29kczogZGVsaXZlcnkgZGF0ZTsgc2VydmljZXM6IGNvbXBsZXRpb24gZGF0ZSkgcGVyIE5UQSBRJkEg5ZWPMTEzLTMg4oCUIHRoZSBkb2N1bWVudCBkYXRlIGlzIG9ubHkgYSBwcm94eSB3aGVuIG5vIHRyYW5zYWN0aW9uIGRhdGUgaXMgc3VwcGxpZWQiLCJub3RfYXNzZXNzZWQiOlsicGVyLXN1cHBsaWVyIGFubnVhbCBjYXA6IOeojui-vDEw5YSE5YaGIGZvciDoqrLnqI7mnJ_plpMgYmVnaW5uaW5nIDIwMjQtMTAtMDEuLjIwMjYtMDktMzAsIOeojui-vDHlhITlhoYgZm9yIOiqsueojuacn-mWkyBiZWdpbm5pbmcgb24vYWZ0ZXIgMjAyNi0xMC0wMSAoYnV5ZXItbGVkZ2VyIGZhY3QpIiwiYnV5ZXIgbGVkZ2VyIHdvcmRpbmcg44CMODDvvIXmjqfpmaTlr77osaHjgI0v44CM5YWN44CNIChidXllciBib29ra2VlcGluZyByZXF1aXJlbWVudCkiLCLlsJHpoY3nibnkvosgKGJ1eWVyJ3Mg5Z-65rqW5pyf6ZaTL-eJueWumuacn-mWkyBzYWxlcyBhbmQgcGVyLXRyYW5zYWN0aW9uIHVuaXQpIiwi55-t5pyf5YmN5omV6LK755SoIHRyZWF0bWVudCIsIndoZXRoZXIgdGhlIGJ1eWVyIGNvbXB1dGVzIHRheCBieSDnqY3kuIrjgZIgb3Ig5Ymy5oi744GXIl0sInBlcl9kYXRlIjpbeyJkYXRlIjoiMjAyNi0wOS0yOCIsImRheXNfdW50aWxfbmV4dF9jaGFuZ2UiOjMsImxhYmVsIjoiODAlIiwibmV4dF9jaGFuZ2Vfb24iOiIyMDI2LTEwLTAxIiwibmV4dF9yYXRlIjowLjcsInBlcmlvZF9lbmQiOiIyMDI2LTA5LTMwIiwicGVyaW9kX3N0YXJ0IjoiMjAyMy0xMC0wMSIsInJhdGUiOjAuOH1dLCJzb3VyY2VzIjpbIlMtMTQiLCJTLTE1IiwiUy0xNiIsIlMtMTciXSwic3RyYWRkbGVzX3N0ZXBfZG93biI6ZmFsc2V9LCJzb3VyY2UiOiJodHRwczovL3d3dy5pbnZvaWNlLWtvaHlvLm50YS5nby5qcC9kb3dubG9hZC96ZW5rZW4iLCJzb3VyY2VzIjpbeyJhY2Nlc3NlZCI6IjIwMjYtMDktMDkiLCJjaXRlIjoi5raI6LK756iO5rOVNTfmnaHjga40IChlLUdvdikiLCJpZCI6IlMtMDEiLCJ1cmwiOiJodHRwczovL2xhd3MuZS1nb3YuZ28uanAvbGF3LzM2M0FDMDAwMDAwMDEwOCNNcC1BdF81N180In0seyJhY2Nlc3NlZCI6IjIwMjYtMDktMDkiLCJjaXRlIjoi5raI6LK756iO5rOV5pa96KGM5LukNzDmnaHjga4xMCAoZS1Hb3YpIiwiaWQiOiJTLTAyIiwidXJsIjoiaHR0cHM6Ly9sYXdzLmUtZ292LmdvLmpwL2xhdy8zNjNDTzAwMDAwMDAzNjAjTXAtQXRfNzBfMTAifSx7ImFjY2Vzc2VkIjoiMjAyNi0wOS0xNSIsImNpdGUiOiJOVEEg44Kk44Oz44Oc44Kk44K5USZBIDAxLTA5ICjllY81NCwgNTUsIDU2LCA1NywgNTgsIDYwLCA2MSwgNjQsIDcyLCA3MykiLCJpZCI6IlMtMDQiLCJ1cmwiOiJodHRwczovL3d3dy5udGEuZ28uanAvdGF4ZXMvc2hpcmFiZXJ1L3plaW1va3ViZXRzdS9zaG9oaS9rZWlnZW56ZWlyaXRzdS9wZGYvcWEvMDEtMDkucGRmIn0seyJhY2Nlc3NlZCI6IjIwMjYtMDktMTUiLCJjaXRlIjoiTlRBIOOCpOODs-ODnOOCpOOCuVEmQSAwMS0wMSAo5ZWPMSwgMjUsIDI2LTIsIDMyLCA3MykiLCJpZCI6IlMtMDUiLCJ1cmwiOiJodHRwczovL3d3dy5udGEuZ28uanAvdGF4ZXMvc2hpcmFiZXJ1L3plaW1va3ViZXRzdS9zaG9oaS9rZWlnZW56ZWlyaXRzdS9wZGYvcWEvMDEtMDEucGRmIn0seyJhY2Nlc3NlZCI6IjIwMjYtMDktMDkiLCJjaXRlIjoiTlRBIOOCpOODs-ODnOOCpOOCuVEmQSDllY81NyAo56uv5pWw5Yem55CGKSIsImlkIjoiUy0wOCIsInVybCI6Imh0dHBzOi8vd3d3Lm50YS5nby5qcC90YXhlcy9zaGlyYWJlcnUvemVpbW9rdWJldHN1L3Nob2hpL2tlaWdlbnplaXJpdHN1L3BkZi9xYS81Ny5wZGYifSx7ImFjY2Vzc2VkIjoiMjAyNi0wOS0xNSIsImNpdGUiOiLjgr_jg4Pjgq_jgrnjgqLjg7PjgrXjg7wgTm8uNjMwMyDmtojosrvnqI7lj4rjgbPlnLDmlrnmtojosrvnqI7jga7nqI7njociLCJpZCI6IlMtMTMiLCJ1cmwiOiJodHRwczovL3d3dy5udGEuZ28uanAvdGF4ZXMvc2hpcmFiZXJ1L3RheGFuc3dlci9zaG9oaS82MzAzLmh0bSJ9LHsiYWNjZXNzZWQiOiIyMDI2LTA5LTE1IiwiY2l0ZSI6Ik5UQSDjgqTjg7Pjg5zjgqTjgrlRJkEg5ZWPMTEzICjku6Tlkow45bm0NOaciOaUueiogikiLCJpZCI6IlMtMTQiLCJ1cmwiOiJodHRwczovL3d3dy5udGEuZ28uanAvdGF4ZXMvc2hpcmFiZXJ1L3plaW1va3ViZXRzdS9zaG9oaS9rZWlnZW56ZWlyaXRzdS9wZGYvcWEvMTEzLnBkZiJ9LHsiYWNjZXNzZWQiOiIyMDI2LTA5LTE1IiwiY2l0ZSI6Ik5UQSDjgqTjg7Pjg5zjgqTjgrlRJkEgMDEtMTUgKOWVjzExMy0yIC8gMTEzLTMgLyAxMTMtNCkiLCJpZCI6IlMtMTUiLCJ1cmwiOiJodHRwczovL3d3dy5udGEuZ28uanAvdGF4ZXMvc2hpcmFiZXJ1L3plaW1va3ViZXRzdS9zaG9oaS9rZWlnZW56ZWlyaXRzdS9wZGYvcWEvMDEtMTUucGRmIn0seyJhY2Nlc3NlZCI6IjIwMjYtMDktMTUiLCJjaXRlIjoi6LKh5YuZ55yBIOS7pOWSjDjlubTluqbnqI7liLbmlLnmraPjga7lpKfntrHjga7mpoLopoEiLCJpZCI6IlMtMTYiLCJ1cmwiOiJodHRwczovL3d3dy5tb2YuZ28uanAvdGF4X3BvbGljeS90YXhfcmVmb3JtL291dGxpbmUvZnkyMDI2LzA4dGFpa291X2dhaXlvdS5odG0ifSx7ImFjY2Vzc2VkIjoiMjAyNi0wOS0xNSIsImNpdGUiOiJOVEEg5Luk5ZKMOOW5tOW6pueojuWItuaUueato-eJuembhiAo44Kk44Oz44Oc44Kk44K5KSIsImlkIjoiUy0xNyIsInVybCI6Imh0dHBzOi8vd3d3Lm50YS5nby5qcC90YXhlcy9zaGlyYWJlcnUvemVpbW9rdWJldHN1L3Nob2hpL2tlaWdlbnplaXJpdHN1L2ludm9pY2UtcmV2aWV3L2luZGV4Lmh0bSJ9LHsiYWNjZXNzZWQiOiIyMDI2LTA5LTE1IiwiY2l0ZSI6IuWFrOihqOOCteOCpOODiCDjg6rjgr3jg7zjgrnlrprnvqnmm7ggay1yZXNvdXJjZS1kbC5wZGYgKDEuNeeJiCDku6Tlkow25bm0NeaciDsg6aCF55WqNyBzb3J0IGtleSwg6aCF55WqOSDlh6bnkIbljLrliIYgOTksIOmgheeVqjEzIOacgOaWsOWxpeattCkiLCJpZCI6IlMtMjUiLCJ1cmwiOiJodHRwczovL3d3dy5pbnZvaWNlLWtvaHlvLm50YS5nby5qcC9maWxlcy9rLXJlc291cmNlLWRsLnBkZiJ9LHsiYWNjZXNzZWQiOiIyMDI2LTA5LTE1IiwiY2l0ZSI6IuWFrOihqOOCteOCpOODiCBXZWItQVBJIOWIqeeUqOaJi-e2miBrLXdlYi1hcGktdGV0dWR1a2kucGRmICjCpzIuMSBoaXN0b3J5IGZpZWxkczsg44CQ5Y-C6ICDMeOAkSBvdmVyd3JpdGUgdGFibGUpIiwiaWQiOiJTLTI2IiwidXJsIjoiaHR0cHM6Ly93d3cuaW52b2ljZS1rb2h5by5udGEuZ28uanAvZmlsZXMvay13ZWItYXBpLXRldHVkdWtpLnBkZiJ9LHsiYWNjZXNzZWQiOiIyMDI2LTA5LTE1IiwiY2l0ZSI6IuWFrOihqOOCteOCpOODiCDjgrXjg7Pjg5fjg6vjg4fjg7zjgr_oqqzmmI4gay1zYW1wbGUtZXhwbGFpbi1yMDMxMC5wZGYgKHAuMTgg5beu5YiG44OH44O844K_44Gu5qaC6KaBKSIsImlkIjoiUy0yNyIsInVybCI6Imh0dHBzOi8vd3d3Lmludm9pY2Uta29oeW8ubnRhLmdvLmpwL2Rvd25sb2FkL2luZGV4LmZpbGVzL2stc2FtcGxlLWV4cGxhaW4tcjAzMTAucGRmIn0seyJhY2Nlc3NlZCI6IjIwMjYtMDktMTUiLCJjaXRlIjoi5raI6LK756iO5rOV5Z-65pys6YCa6YGUIDEtNy0zICjnmbvpjLLjga7lirnlipspIC8gMS03LTcgKOS6i-alreOBruW7g-atouOBq-OCiOOCi-eZu-mMsuOBruWkseWKuSkiLCJpZCI6IlMtMjgiLCJ1cmwiOiJodHRwczovL3d3dy5udGEuZ28uanAvbGF3L3RzdXRhdHN1L2tpaG9uL3Nob2hpLzAxLzA3Lmh0bSJ9LHsiYWNjZXNzZWQiOiIyMDI2LTA5LTE1IiwiY2l0ZSI6Ik5UQSDjgqTjg7Pjg5zjgqTjgrlRJkEgMDEtMDQgKOWVjzUsIDEzLCAxNCwgMTUpIiwiaWQiOiJTLTI5IiwidXJsIjoiaHR0cHM6Ly93d3cubnRhLmdvLmpwL3RheGVzL3NoaXJhYmVydS96ZWltb2t1YmV0c3Uvc2hvaGkva2VpZ2VuemVpcml0c3UvcGRmL3FhLzAxLTA0LnBkZiJ9LHsiYWNjZXNzZWQiOiIyMDI2LTA5LTE1IiwiY2l0ZSI6Ik5UQSDjgqTjg7Pjg5zjgqTjgrlRJkEg5ZWPMTMgKOeZu-mMsuWPlua2iOWxiuWHuuabuOOBqOWkseWKueaXpSkiLCJpZCI6IlMtMzEiLCJ1cmwiOiJodHRwczovL3d3dy5udGEuZ28uanAvdGF4ZXMvc2hpcmFiZXJ1L3plaW1va3ViZXRzdS9zaG9oaS9rZWlnZW56ZWlyaXRzdS9wZGYvcWEvMTMucGRmIn0seyJhY2Nlc3NlZCI6IjIwMjYtMDktMDkiLCJjaXRlIjoi5YWs6KGo44K144Kk44OIIOWIqeeUqOimj-e0hCAocHVycG9zZTsgYXR0cmlidXRpb24gZXhhbXBsZXMpIiwiaWQiOiJTLTMyIiwidXJsIjoiaHR0cHM6Ly93d3cuaW52b2ljZS1rb2h5by5udGEuZ28uanAvdGVybXMtb2YtdXNlLmh0bWwifSx7ImFjY2Vzc2VkIjoiMjAyNi0wOS0xNSIsImNpdGUiOiLlhazooajjgrXjgqTjg4gg6YGL5Za25pa56YedIGludm9pY2UtaG91c2hpbi5wZGYgKMKnNCBuZXh0LWRheSBwb3N0aW5nOyDCpzUgNy15ZWFyIGRlbGV0aW9uOyDCpzYoMykg5YWo5Lu244OH44O844K_44OV44Kh44Kk44OrID0g5YmN5pyI5pyr5pmC54K544Gu5pyA5paw5oOF5aCxLCDlt67liIbjg4fjg7zjgr_jg5XjgqHjgqTjg6sgPSDml6XmrKHjga7nlbDli5Xmg4XloLEpIiwiaWQiOiJTLTMzIiwidXJsIjoiaHR0cHM6Ly93d3cuaW52b2ljZS1rb2h5by5udGEuZ28uanAvZmlsZXMvaW52b2ljZS1ob3VzaGluLnBkZiJ9LHsiYWNjZXNzZWQiOiIyMDI2LTA5LTE1IiwiY2l0ZSI6IuWFrOihqOOCteOCpOODiCDjg4Djgqbjg7Pjg63jg7zjg4kgKOWFqOS7tuODh-ODvOOCv-ODleOCoeOCpOODq-OBr-avjuaciOWIneaXpSjkvJHml6XjgpLpmaTjgY8p44Gr5YmN5pyI5pyr5pmC54K544Gn5L2c5oiQ44CB5beu5YiG44OH44O844K_44OV44Kh44Kk44Or44Gv5pel5qyh44Gn5L2c5oiQIOKAlCDjgYTjgZrjgozjgoLljp_liYfkvZzmiJDml6Xjga7nv4zml6XljYjliY025pmC5Lul6ZmN44Gr5YWs6ZaLKSIsImlkIjoiUy0zNSIsInVybCI6Imh0dHBzOi8vd3d3Lmludm9pY2Uta29oeW8ubnRhLmdvLmpwL2Rvd25sb2FkL2luZGV4Lmh0bWwifSx7ImFjY2Vzc2VkIjoiMjAyNi0wOS0wOSIsImNpdGUiOiJhbGlnbmVkLWlici1qcC0wMSIsImlkIjoiUy00NiIsInVybCI6Imh0dHBzOi8vZG9jcy5wZXBwb2wuZXUvcG9hYy9qcC9waW50LWpwL3Rybi1pbnZvaWNlL3J1bGUvYWxpZ25lZC1pYnItanAtMDEvIn0seyJhY2Nlc3NlZCI6IjIwMjYtMDktMDkiLCJjaXRlIjoiYWxpZ25lZC1pYnJwLTA1MS1qcCIsImlkIjoiUy00NyIsInVybCI6Imh0dHBzOi8vZG9jcy5wZXBwb2wuZXUvcG9hYy9qcC9waW50LWpwL3Rybi1pbnZvaWNlL3J1bGUvYWxpZ25lZC1pYnJwLTA1MS1qcC8ifSx7ImFjY2Vzc2VkIjoiMjAyNi0wOS0wOSIsImNpdGUiOiJhbGlnbmVkLWlici1qcC0wNiIsImlkIjoiUy00OCIsInVybCI6Imh0dHBzOi8vZG9jcy5wZXBwb2wuZXUvcG9hYy9qcC9waW50LWpwL3Rybi1pbnZvaWNlL3J1bGUvYWxpZ25lZC1pYnItanAtMDYvIn0seyJhY2Nlc3NlZCI6IjIwMjYtMDktMDkiLCJjaXRlIjoi5Zu956iO5bqBIOazleS6uueVquWPtyBjaGVjay1kaWdpdCB3b3Jrc2hlZXQgKHJlcG8tdmVyaWZpZWQgMjAyNi0wOS0wMiwganB2ZXJpZnkvY2hlY2tkaWdpdC5weSB2YWxpZGF0ZWQgb24gNzg3LDU2NiBOVEEgbnVtYmVycykiLCJpZCI6IlMtNjQiLCJ1cmwiOiJodHRwczovL3d3dy5ob3VqaW4tYmFuZ291Lm50YS5nby5qcC9kb2N1bWVudHMvY2hlY2tkaWdpdC5wZGYifSx7ImFjY2Vzc2VkIjoiMjAyNi0wOS0xNSIsImNpdGUiOiLmtojosrvnqI7ms5Xln7rmnKzpgJrpgZQg56ysMeeroOesrDjnr4AgMS04LTHjgJwxLTgtMjEgKDEtOC0xNSDnq6_mlbDlh6bnkIYsIDEtOC0xNiDlpJbosqgsIDEtOC0xNyAx5LiH5YaG44Gu5Yik5a6a5Y2Y5L2NLCAxLTgtMTgvMS04LTE5IOi_lOmChOiri-axguabuOOBruS6pOS7mOaZguacnywgMS04LTIwIOS4gOOBruabuOmhniwgMS04LTIxIOS_ruatoykiLCJpZCI6IlMtNzciLCJ1cmwiOiJodHRwczovL3d3dy5udGEuZ28uanAvbGF3L3RzdXRhdHN1L2tpaG9uL3Nob2hpLzAxLzA4Lmh0bSJ9LHsiYWNjZXNzZWQiOiIyMDI2LTA5LTE1IiwiY2l0ZSI6Ik5UQSDjgqTjg7Pjg5zjgqTjgrlRJkEg5ZWPNjggKOWkluiyqOW7uuWPluW8lSDigJQg5raI6LK756iO6aGN562J44Gv5YaG5o-b566X44GX44Gf6YeR6aGNOyDlpJbosqjlu7rjgabjga4gVGF4IGFtb3VudCDjga_lj4LogIMpIiwiaWQiOiJTLTc4IiwidXJsIjoiaHR0cHM6Ly93d3cubnRhLmdvLmpwL3RheGVzL3NoaXJhYmVydS96ZWltb2t1YmV0c3Uvc2hvaGkva2VpZ2VuemVpcml0c3UvcGRmL3FhLzY4LnBkZiJ9LHsiYWNjZXNzZWQiOiIyMDI2LTA5LTE1IiwiY2l0ZSI6Ik5UQSDjgqTjg7Pjg5zjgqTjgrlRJkEg5ZWPNjAgKOmBqeagvOi_lOmChOiri-axguabuOOBruiomOi8ieS6i-mghSDigJQg4pGkIOa2iOiyu-eojumhjeetiSDlj4jjga8g6YGp55So56iO546HKSIsImlkIjoiUy03OSIsInVybCI6Imh0dHBzOi8vd3d3Lm50YS5nby5qcC90YXhlcy9zaGlyYWJlcnUvemVpbW9rdWJldHN1L3Nob2hpL2tlaWdlbnplaXJpdHN1L3BkZi9xYS82MC5wZGYifSx7ImFjY2Vzc2VkIjoiMjAyNi0wOS0xNSIsImNpdGUiOiJOVEEg44Kk44Oz44Oc44Kk44K5USZBIOWVjzYxICjoqrLnqI7os4fnlKPjga7orbLmuKHnrYnjgpLooYzjgaPjgZ_lubTmnIjml6Ug4oCUIOS4gOWumuOBruacn-mWkyAvIOe2mee2miBjb252ZW50aW9uIGRhdGVzKSIsImlkIjoiUy04MCIsInVybCI6Imh0dHBzOi8vd3d3Lm50YS5nby5qcC90YXhlcy9zaGlyYWJlcnUvemVpbW9rdWJldHN1L3Nob2hpL2tlaWdlbnplaXJpdHN1L3BkZi9xYS82MS5wZGYifV0sInN0YXR1c19vbl9kYXRlIjp7ImFmdGVyX2RhdGFfYXNfb2YiOnRydWUsImJhc2lzIjoidHJhbnNhY3Rpb25fZGF0ZSIsImJvdW5kYXJ5X2Nhc2UiOmZhbHNlLCJkYXRlcyI6WyIyMDI2LTA5LTI4Il0sImRpc3Bvc2FsX2RhdGUiOm51bGwsImVwaXNvZGVfc2NvcGUiOiJjdXJyZW50IiwiZXhwaXJlX2RhdGUiOm51bGwsImxpbWl0YXRpb25faWRzIjpbIkwxIiwiTDIiLCJMNCIsIkw4Il0sImxpbWl0YXRpb25zIjpbIkV2YWx1YXRlZCBhZ2FpbnN0IHRoZSBDVVJSRU5UIHJlZ2lzdHJhdGlvbiBlcGlzb2RlIG9ubHk6IHRoZSBtaXJyb3Igc3RvcmVzIHRoZSBOVEEgbGF0ZXN0LWhpc3Rvcnkgcm93IHBlciBudW1iZXIuIElmIHRoaXMgbnVtYmVyIHdhcyBjYW5jZWxsZWQgb3IgZXhwaXJlZCBhbmQgbGF0ZXIgcmVnaXN0ZXJlZCBhZ2FpbiwgYSBkYXRlIGluc2lkZSB0aGUgZWFybGllciBlcGlzb2RlIGlzIHJlcG9ydGVkIGFzIG5vdCByZWdpc3RlcmVkIOKAlCBhIGZhbHNlIG5lZ2F0aXZlIGZyb20gdGhpcyBjYXVzZSwgbm90IGEgZmFsc2UgcG9zaXRpdmUgZnJvbSBpdC4iLCJEYXRlcyBhcmUgYXMgY3VycmVudGx5IHB1Ymxpc2hlZCAoZGF0YV9hc19vZiksIGluY2x1ZGluZyBhbnkgbGF0ZXIgTlRBIGNvcnJlY3Rpb25zOyB3aGF0IHRoZSBzaXRlIGRpc3BsYXllZCBvbiB0aGUgZXZhbHVhdGlvbiBkYXRlIGNhbm5vdCBiZSByZWNvbnN0cnVjdGVkLiBBbiBldmFsdWF0aW9uIGRhdGUgYWZ0ZXIgZGF0YV9hc19vZiBpcyBqdWRnZWQgb24gdGhlIGN1cnJlbnQgcm93IOKAlCBhIGxhdGVyIOWkseWKuS_lj5bmtoggY2Fubm90IGJlIGtub3duIHlldC4iLCJBIG5ldyByZWdpc3RyYXRpb24gaXMgcG9zdGVkIHRoZSBkYXkgYWZ0ZXIg55m76Yyy57C_IGVudHJ5LCBhbmQgSlAtVmVyaWZ5IHN5bmNzIG9uIGl0cyBvd24gY2FkZW5jZTsgYSBudW1iZXIgY2FuIGJlIGxlZ2FsbHkgZWZmZWN0aXZlIGJlZm9yZSBpdCBpcyB2aXNpYmxlIGhlcmUuIiwiQSDliYrpmaQgKOWHpueQhuWMuuWIhiA5OSkgcm93IGluIHRoZSBOVEEgZGFpbHkgZGlmZiBmaWxlIGlzIGFwcGxpZWQgdG8gdGhlIG1pcnJvciBhdCB0aGUgbmV4dCBkaWZmIHN5bmMgKHRocmVlIHRpbWVzIGEgZGF5KTsgdW50aWwgdGhlbiBhIG51bWJlciB0aGUgTlRBIGhhcyByZW1vdmVkIGZyb20gdGhlIOeZu-mMsuewvyBjYW4gcmVhZCBhcyByZWdpc3RlcmVkIGhlcmUuIFRoZSBOVEEgbWF5IHJlLXB1Ymxpc2ggYSBkZWxldGVkIG51bWJlciBsYXRlciAobWVhc3VyZWQ6IDQ1IG9mIDIzOCBiYXJlIGRlbGV0aW9ucyBpbiA0MCBkaWZmIGRheXMgcmUtYXBwZWFyZWQgd2l0aGluIHRoZSBhcmNoaXZlKS4iXSwibm90ZSI6bnVsbCwicGVyX2RhdGUiOlt7ImRhdGUiOiIyMDI2LTA5LTI4IiwicmVhc29uIjoicmVnaXN0cmF0aW9uX2RhdGUgPD0gRCA8IGVuZCAoZW5kID0gZGlzcG9zYWxfZGF0ZSAvIGV4cGlyZV9kYXRlLCBvciBvcGVuKSIsInJlZ2lzdGVyZWQiOnRydWV9XSwicmVnaXN0ZXJlZCI6dHJ1ZSwicmVnaXN0cmF0aW9uX2RhdGUiOiIyMDIzLTEwLTAxIiwicnVsZSI6InJlZ2lzdGVyZWQgb24gRCBpZmYgcmVnaXN0cmF0aW9uX2RhdGUgPD0gRCBhbmQgKGRpc3Bvc2FsX2RhdGUgaXMgbnVsbCBvciBEIDwgZGlzcG9zYWxfZGF0ZSkgYW5kIChleHBpcmVfZGF0ZSBpcyBudWxsIG9yIEQgPCBleHBpcmVfZGF0ZSkg4oCUIGV2YWx1YXRlZCBvbiB0aGUgY3VycmVudCByZWdpc3RyYXRpb24gZXBpc29kZSIsInNvdXJjZXMiOlsiUy0yNSIsIlMtMjYiLCJTLTI3IiwiUy0yOCIsIlMtMjkiLCJTLTMxIiwiUy0zMyJdfSwic3VtbWFyeSI6eyJmYWlsIjowLCJmYWlsZWRfcnVsZV9pZHMiOltdLCJub3RfYXBwbGljYWJsZSI6MSwicGFzcyI6MjAsInVua25vd24iOjAsInVua25vd25fcnVsZV9pZHMiOltdfX19.O76FjtxxrBWwUzL9oaph3mCn8C9876QIajRvwnC91-QUZP94XaGrq4jYpwG2q0oSquhlykV8iTkO_bM1PT5uBg"}},{"index":1,"ok":false,"error":"issue_date must be a 'YYYY-MM-DD' date","invalid":["issue_date"]}],"summary":{"pass":20,"fail":0,"unknown":0,"not_applicable":1},"rule_set_version":"2026-09-18.1","data_as_of":{"zenken_date":"20260831","last_diff_date":"20260901","synced_at":"2026-09-02T05:30:38+00:00","source":"https://www.invoice-kohyo.nta.go.jp/download/zenken","data_date":"20260901"},"source":"https://www.invoice-kohyo.nta.go.jp/download/zenken","attribution":"出典：国税庁適格請求書発行事業者公表サイト（国税庁）（https://www.invoice-kohyo.nta.go.jp/）を加工して作成","nta_notice":"本サービスは国税庁公表データ（全件・差分ダウンロードファイル）を JP-Verify が加工して作成したものであり、国税庁が作成したものではなく、内容は国税庁によって保証されたものではありません。 Based on NTA-published bulk data, processed by JP-Verify; not produced or guaranteed by the NTA.","disclaimer":{"en":"Register facts, document-format checks and arithmetic on the document's own figures, plus the published statutory schedule with its source — NOT tax advice and not a determination of any deduction, credit or entitlement; the buyer's consumption-tax treatment is for the taxpayer and their tax adviser (税理士).","ja":"本結果は国税庁公表データに基づく登録事実・書類の記載事項チェック・書類自身の数値の計算整合性・公表されている経過措置の適用区分(出典URL付き)のみを示すものです。税務相談・仕入税額控除の可否や控除額の判定ではありません。買手側の消費税の取扱いは納税者ご自身および税理士にご確認ください。"},"tier":"growth","remaining":29999,"english_name_register":{"source":"https://www.houjin-bangou.nta.go.jp/","data_date":"20260831","attribution":"出典：国税庁法人番号公表サイト（国税庁）（https://www.houjin-bangou.nta.go.jp/）を加工して作成","note":"vintage of the 法人番号 register behind any name_en_source / address_en_source of 'official-en'"},"bundle":{"alg":"sha256","tree":"rfc6962","count":1,"root":"15cb5405f613371d2f7b502e9fe00ea7b012770ec85602ad354377fa5f918ddb","leaf_over":"canonical-json({invoice_check: report})","proofs":[{"index":0,"document_index":0,"tree_size":1,"path":[]}],"signed_record":{"payload":{"invoice_check_batch":{"root":"15cb5405f613371d2f7b502e9fe00ea7b012770ec85602ad354377fa5f918ddb","count":1,"rule_set_version":"2026-09-18.1","data_as_of":{"zenken_date":"20260831","last_diff_date":"20260901","synced_at":"2026-09-02T05:30:38+00:00","source":"https://www.invoice-kohyo.nta.go.jp/download/zenken","data_date":"20260901"}}},"kind":"invoice_check_batch","issuer":"jp-verify","issued_at":1788328800,"alg":"ed25519","signature":"15Eb7g/7aviGdDMosnGMpwgZRlplxjOWtJJasAH5YlJfHtAvmK8a2sZ64t9O/o6i7H+fCRvTQ0a38Weaj4a5Dg==","public_key":"LslFXeUAlVQw/9jM5RYM2bAVpcdQGgv027qIYbR4Af0=","jws":"eyJhbGciOiJFZERTQSIsImtpZCI6IjZlZDRjN2QwZGUxZTNmZmMiLCJraW5kIjoiaW52b2ljZV9jaGVja19iYXRjaCIsInR5cCI6ImpwdmVyaWZ5LXJlY29yZCtqc29uIn0.eyJpbnZvaWNlX2NoZWNrX2JhdGNoIjp7ImNvdW50IjoxLCJkYXRhX2FzX29mIjp7ImRhdGFfZGF0ZSI6IjIwMjYwOTAxIiwibGFzdF9kaWZmX2RhdGUiOiIyMDI2MDkwMSIsInNvdXJjZSI6Imh0dHBzOi8vd3d3Lmludm9pY2Uta29oeW8ubnRhLmdvLmpwL2Rvd25sb2FkL3plbmtlbiIsInN5bmNlZF9hdCI6IjIwMjYtMDktMDJUMDU6MzA6MzgrMDA6MDAiLCJ6ZW5rZW5fZGF0ZSI6IjIwMjYwODMxIn0sInJvb3QiOiIxNWNiNTQwNWY2MTMzNzFkMmY3YjUwMmU5ZmUwMGVhN2IwMTI3NzBlYzg1NjAyYWQzNTQzNzdmYTVmOTE4ZGRiIiwicnVsZV9zZXRfdmVyc2lvbiI6IjIwMjYtMDktMTguMSJ9fQ.XaAsa7oLx4k1tUd4Kw5LaZ9Ywb5J1LxIq5M0MqcqFOgDByLHDwx-eBDGPC_tl7UXYQnYx3wb8NgzKEveiJi4AQ"}},"signed_record":{"payload":{"invoice_check_batch":{"root":"15cb5405f613371d2f7b502e9fe00ea7b012770ec85602ad354377fa5f918ddb","count":1,"rule_set_version":"2026-09-18.1","data_as_of":{"zenken_date":"20260831","last_diff_date":"20260901","synced_at":"2026-09-02T05:30:38+00:00","source":"https://www.invoice-kohyo.nta.go.jp/download/zenken","data_date":"20260901"}}},"kind":"invoice_check_batch","issuer":"jp-verify","issued_at":1788328800,"alg":"ed25519","signature":"15Eb7g/7aviGdDMosnGMpwgZRlplxjOWtJJasAH5YlJfHtAvmK8a2sZ64t9O/o6i7H+fCRvTQ0a38Weaj4a5Dg==","public_key":"LslFXeUAlVQw/9jM5RYM2bAVpcdQGgv027qIYbR4Af0=","jws":"eyJhbGciOiJFZERTQSIsImtpZCI6IjZlZDRjN2QwZGUxZTNmZmMiLCJraW5kIjoiaW52b2ljZV9jaGVja19iYXRjaCIsInR5cCI6ImpwdmVyaWZ5LXJlY29yZCtqc29uIn0.eyJpbnZvaWNlX2NoZWNrX2JhdGNoIjp7ImNvdW50IjoxLCJkYXRhX2FzX29mIjp7ImRhdGFfZGF0ZSI6IjIwMjYwOTAxIiwibGFzdF9kaWZmX2RhdGUiOiIyMDI2MDkwMSIsInNvdXJjZSI6Imh0dHBzOi8vd3d3Lmludm9pY2Uta29oeW8ubnRhLmdvLmpwL2Rvd25sb2FkL3plbmtlbiIsInN5bmNlZF9hdCI6IjIwMjYtMDktMDJUMDU6MzA6MzgrMDA6MDAiLCJ6ZW5rZW5fZGF0ZSI6IjIwMjYwODMxIn0sInJvb3QiOiIxNWNiNTQwNWY2MTMzNzFkMmY3YjUwMmU5ZmUwMGVhN2IwMTI3NzBlYzg1NjAyYWQzNTQzNzdmYTVmOTE4ZGRiIiwicnVsZV9zZXRfdmVyc2lvbiI6IjIwMjYtMDktMTguMSJ9fQ.XaAsa7oLx4k1tUd4Kw5LaZ9Ywb5J1LxIq5M0MqcqFOgDByLHDwx-eBDGPC_tl7UXYQnYx3wb8NgzKEveiJi4AQ"}}}}},"413":{"description":"Request body over the batch size cap — refused before it was buffered or parsed; nothing was charged.","content":{"application/json":{"example":{"error":"request body too large (max 4194304 bytes)"},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"400":{"description":"Malformed input — refused before metering; nothing was charged.","content":{"application/json":{"example":{"error":"no well-formed numbers — nothing was charged","invalid":[]},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unknown, inactive, or expired API key.","content":{"application/json":{"example":{"error":"unknown or inactive API key","tier":"invalid","hint":"see / for pricing; set X-API-Key for higher limits"},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"429":{"description":"Quota exceeded for the caller's tier.","content":{"application/json":{"example":{"error":"sandbox daily quota exceeded","tier":"sandbox","hint":"see / for pricing; set X-API-Key for higher limits"},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"The register, or an optional feature, is unavailable or not configured on this deployment. A register 503 (since 1.4.1) also carries the mirror's `data_as_of` with the source fields — `source_latest_diff_date` (the newest 差分 the NTA 公表サイト listed when the sync last read it), `source_checked_at`, `source_gap_business_days` and `freshness.rule` (`stale` here) — so a caller can tell a mirror that is behind its source (`data_date` older than `source_latest_diff_date`) from a source that has not published (equal, but `source_checked_at` older than `freshness.source_check_max_hours`); `data_as_of` is null when the mirror is absent. Nothing was charged.","content":{"application/json":{"example":{"error":"register temporarily unavailable (not synced or stale beyond the freshness window)","data_as_of":{"zenken_date":"20260831","last_diff_date":"20260911","synced_at":"2026-09-20T13:27:04+00:00","source":"https://www.invoice-kohyo.nta.go.jp/download/zenken","data_date":"20260911","source_latest_diff_date":"20260911","source_checked_at":"2026-09-20T13:27:03+00:00","source_gap_business_days":6,"freshness":{"rule":"stale","max_age_days":10,"source_check_max_hours":48,"source_gap_max_business_days":15}}},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{},{"ApiKeyAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"description":"``POST /v1/invoice/check/batch`` body (1.4.0) — the facts of MANY invoices in one call,\neach element an ``InvoiceCheckRequest`` without its ``sign`` key (signing is decided once, at\nthe top level). Positional: ``results[i]`` answers ``documents[i]``. Metered ``len(parsed)``\nunits — the documents that parsed — after the whole batch was checked; a document that fails\nrequest-level validation is a free ``ok: false`` entry, a batch in which nothing parses is a\nfree 400, and a batch over the caller's tier ceiling is refused free before any element is\nread. Names and amounts are consumed in memory only and never stored, logged or echoed.","properties":{"documents":{"description":"1..N invoices, each the facts of ONE document exactly as POST /v1/invoice/check takes them (a per-document `sign` key is ignored — see the top-level flag); N is capped by the caller's tier batch ceiling (100 Sandbox/Starter · 500 Growth · 1,000 Reseller) and the body by 4 MiB, both refused free","items":{"description":"``POST /v1/invoice/check`` body — the facts of ONE invoice, as printed. Names and amounts\nare consumed in memory only and never stored, logged or echoed. A missing or malformed\n``supplier_t_number`` is a document finding (metered), not a request error.","example":{"buyer_name":"Example K.K.","currency":"JPY","description_present":true,"document_type":"qualified_invoice","issue_date":"2026-10-05","reduced_rate_marked":true,"seller_name":"株式会社サンプル","sign":false,"supplier_t_number":"T8200012010001","tax_lines":[{"amount":60000,"amount_basis":"tax_exclusive","category":"standard","rate_percent":10,"tax_amount":6000},{"amount":40000,"amount_basis":"tax_exclusive","category":"reduced","rate_percent":8,"tax_amount":3200}],"totals":{"payable_amount":109200,"tax_exclusive_total":100000,"tax_inclusive_total":109200,"tax_total":9200},"transaction_date":"2026-09-28"},"properties":{"document_type":{"anyOf":[{"type":"string"},{"type":"null"}],"default":"qualified_invoice","description":"qualified_invoice (適格請求書, default) | simplified_qualified_invoice (適格簡易請求書) | return_invoice (適格返還請求書 — 'credit note' in Peppol/UBL vocabulary; JP PINT models it as a negative Invoice (380)) — as claimed by the caller, never inferred from the sign of the amounts; industry eligibility is not checked","title":"Document Type"},"supplier_t_number":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"the 登録番号 AS PRINTED (NFKC-folded, whitespace removed); absent = the document shows no number; a malformed value is a metered finding reported WITHOUT its text; longer than 32 characters (not number-shaped) or not UTF-8 encodable = free 400","title":"Supplier T Number"},"seller_name":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"issuer name as printed (<= 200 chars after NFKC/strip); compared with the register name, never echoed","title":"Seller Name"},"buyer_name":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"recipient name as printed; only its presence is used, never echoed","title":"Buyer Name"},"buyer_name_present":{"anyOf":[{"type":"boolean"},{"type":"null"}],"description":"alternative to buyer_name: whether the recipient's name is printed","title":"Buyer Name Present"},"issue_date":{"description":"REQUIRED — the date printed on the document ('YYYY-MM-DD', ibt-002)","title":"Issue Date","type":"string"},"transaction_date":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"課税資産の譲渡等を行った年月日 (goods: delivery; services: completion) — the evaluation date; mutually exclusive with transaction_period. On a return_invoice: the ORIGINAL supply (57条の4③二's second date), which is the register date of record (基通1-8-18/1-8-19)","title":"Transaction Date"},"transaction_period":{"anyOf":[{"description":"``transaction_period`` for ``POST /v1/invoice/check`` (まとめ請求 — 一定の期間).","properties":{"start":{"description":"'YYYY-MM-DD' — evaluated as one of the two dates","title":"Start","type":"string"},"end":{"description":"'YYYY-MM-DD' (>= start) — evaluated as the other date","title":"End","type":"string"}},"required":["start","end"],"title":"InvoicePeriod","type":"object"},{"type":"null"}],"description":"一定の期間 (まとめ請求) — both ends are evaluated (on a return_invoice: the original supply period — 問61 allows 一定の期間)"},"return_date":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"return_invoice only — 売上げに係る対価の返還等を行う年月日 (57条の4③二's first date), 'YYYY-MM-DD'; optional (ITEM-02 reports unknown without it); informational for the register status (基通1-8-19); a free 400 on any other document_type","title":"Return Date"},"preceding_invoice_reference_present":{"anyOf":[{"type":"boolean"},{"type":"null"}],"description":"return_invoice — a reference to the original invoice is printed (presence only; the reference itself is never sent)","title":"Preceding Invoice Reference Present"},"currency":{"anyOf":[{"type":"string"},{"type":"null"}],"default":"JPY","description":"ISO 4217 (default JPY)","title":"Currency"},"description_present":{"anyOf":[{"type":"boolean"},{"type":"null"}],"description":"資産又は役務の内容 is stated (null = not supplied)","title":"Description Present"},"reduced_rate_marked":{"anyOf":[{"type":"boolean"},{"type":"null"}],"description":"軽減対象である旨 is marked, in any form per 基通1-8-4 (null = not supplied)","title":"Reduced Rate Marked"},"rate_only_stated":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":false,"description":"適格簡易請求書 printing 適用税率 but no 消費税額等","title":"Rate Only Stated"},"tax_lines":{"anyOf":[{"items":{"description":"One ``tax_lines[]`` entry for ``POST /v1/invoice/check`` — one per rate/category on the\ndocument. Amounts: JSON integer, JSON number, or a decimal string ``^-?\\d{1,15}(\\.\\d{1,4})?$``,\n|x| <= 10^15; signed on every document type (a 値引き line, the negative form of a\n適格返還請求書) — the sign is reported as ``document.amount_sign``, never used to infer the\ndocument type.","properties":{"rate_percent":{"anyOf":[{"type":"integer"},{"type":"number"},{"type":"string"},{"type":"null"}],"description":"適用税率 in percent (10, 8, or 0); null when the document prints none","title":"Rate Percent"},"category":{"anyOf":[{"type":"string"},{"type":"null"}],"default":"unknown","description":"standard | reduced | old_rate_8 | exempt | out_of_scope | export | unknown (8% alone does not say which 8% — supply reduced or old_rate_8)","title":"Category"},"amount_basis":{"anyOf":[{"type":"string"},{"type":"null"}],"default":"tax_exclusive","description":"tax_exclusive (税抜) | tax_inclusive (税込) — which figure `amount` is","title":"Amount Basis"},"amount":{"anyOf":[{"type":"integer"},{"type":"number"},{"type":"string"},{"type":"null"}],"description":"税率ごとに区分した合計額 for this rate/category (signed)","title":"Amount"},"tax_amount":{"anyOf":[{"type":"integer"},{"type":"number"},{"type":"string"},{"type":"null"}],"description":"消費税額等 for this rate/category (yen, whole; signed)","title":"Tax Amount"},"tax_amount_jpy":{"anyOf":[{"type":"integer"},{"type":"number"},{"type":"string"},{"type":"null"}],"description":"the 消費税額等 in yen for this rate/category on a non-JPY document (基通1-8-16 / 問68: the statutory figure is the yen amount; a foreign-currency tax_amount alone is 参考) — ignored when currency is JPY","title":"Tax Amount Jpy"}},"title":"InvoiceTaxLine","type":"object"},"type":"array"},{"type":"null"}],"description":"0..10 entries, one per rate/category on the document","title":"Tax Lines"},"totals":{"anyOf":[{"description":"``totals`` for ``POST /v1/invoice/check`` — every key optional.","properties":{"tax_exclusive_total":{"anyOf":[{"type":"integer"},{"type":"number"},{"type":"string"},{"type":"null"}],"description":"税抜合計","title":"Tax Exclusive Total"},"tax_total":{"anyOf":[{"type":"integer"},{"type":"number"},{"type":"string"},{"type":"null"}],"description":"消費税額等の合計","title":"Tax Total"},"tax_inclusive_total":{"anyOf":[{"type":"integer"},{"type":"number"},{"type":"string"},{"type":"null"}],"description":"税込合計","title":"Tax Inclusive Total"},"payable_amount":{"anyOf":[{"type":"integer"},{"type":"number"},{"type":"string"},{"type":"null"}],"description":"請求金額 (not reconciled — prepaid/rounding amounts legitimately differ)","title":"Payable Amount"}},"title":"InvoiceTotals","type":"object"},{"type":"null"}],"description":"document totals (every key optional)"},"sign":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":false,"description":"return an Ed25519-signed record (Growth/Reseller keys only; otherwise the response says so and signs nothing)","title":"Sign"}},"required":["issue_date"],"title":"InvoiceCheckRequest","type":"object"},"title":"Documents","type":"array"},"sign":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":false,"description":"return `results[i].signed_record` — the single route's Ed25519 envelope (+ compact `jws`) over each checked document's report, so one document is verifiable without the batch (Growth/Reseller keys only; otherwise `signed_record: null` and a note)","title":"Sign"},"bundle":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":false,"description":"return `bundle`: an RFC 6962 §2.1 Merkle tree over the checked reports (leaf = SHA-256(0x00 ‖ canonical JSON of {\"invoice_check\": report})), one §2.1.1 audit path per checked document and a signed record over the root (Growth/Reseller keys only; otherwise `bundle: null` and a note)","title":"Bundle"}},"required":["documents"],"title":"InvoiceCheckBatchRequest","type":"object"},"example":{"bundle":false,"documents":[{"buyer_name":"Example K.K.","currency":"JPY","description_present":true,"document_type":"qualified_invoice","issue_date":"2026-10-05","reduced_rate_marked":true,"seller_name":"株式会社サンプル","supplier_t_number":"T8200012010001","tax_lines":[{"amount":60000,"amount_basis":"tax_exclusive","category":"standard","rate_percent":10,"tax_amount":6000},{"amount":40000,"amount_basis":"tax_exclusive","category":"reduced","rate_percent":8,"tax_amount":3200}],"totals":{"payable_amount":109200,"tax_exclusive_total":100000,"tax_inclusive_total":109200,"tax_total":9200},"transaction_date":"2026-09-28"},{"currency":"JPY","description_present":true,"document_type":"simplified_qualified_invoice","issue_date":"2026-10-06","reduced_rate_marked":true,"seller_name":"株式会社サンプル","supplier_t_number":"T8200012010001","tax_lines":[{"amount":3300,"amount_basis":"tax_inclusive","category":"standard","rate_percent":10,"tax_amount":300}],"totals":{"payable_amount":3300,"tax_inclusive_total":3300},"transaction_date":"2026-10-02"}],"sign":false}}}}}},"/v1/invoice/rules":{"get":{"tags":["Compliance"],"summary":"JP-Verify Invoice Facts rule catalog (free, unmetered)","description":"The JP-Verify Invoice Facts rule catalog — built from the same registry the engine runs, so\na signed record's ``rule_set_version`` is meaningful to an auditor without this repository:\nevery rule's id, group, title, inputs, four-valued semantics and primary source, the\nlimitation texts, the source table and the disclaimer. Free and unmetered (no key, no\nrate-limit headers), cacheable for an hour.","operationId":"invoiceRules","responses":{"200":{"description":"The rule catalog the engine runs, its rule_set_version, status semantics, limitation texts, sources and disclaimer.","content":{"application/json":{"schema":{}}}}}}},"/v1/screen":{"get":{"tags":["Compliance"],"summary":"Screen a supplier name against public sanctions lists","description":"Advisory supplier sanctions screening (OFAC/UN/EU/MOF; EXACT-match after\nnormalization with deterministic rule-generated variant expansion (keyset v2)\n— still exact-match, NOT fuzzy, NOT a compliance program; see `disclaimer`).\nHits include advisory `matched_entities` attribution (source/uid/quality).","operationId":"screenGet","parameters":[{"name":"name","in":"query","required":false,"schema":{"type":"string","description":"supplier name to screen (required)","default":"","title":"Name"},"description":"supplier name to screen (required)"},{"name":"aliases","in":"query","required":false,"schema":{"type":"string","description":"comma-separated alternative names","default":"","title":"Aliases"},"description":"comma-separated alternative names"},{"name":"id_number","in":"query","required":false,"schema":{"type":"string","description":"an ID number to screen (optional)","default":"","title":"Id Number"},"description":"an ID number to screen (optional)"},{"name":"id_scheme","in":"query","required":false,"schema":{"type":"string","description":"scheme for id_number, e.g. 'passport'; leave blank to screen the number under every scheme present on the loaded lists","default":"","title":"Id Scheme"},"description":"scheme for id_number, e.g. 'passport'; leave blank to screen the number under every scheme present on the loaded lists"},{"name":"dob","in":"query","required":false,"schema":{"type":"string","description":"date of birth (individuals), optional; passed through as-is — ISO `yyyy-mm-dd`, `dd Mon yyyy` or a bare year are canonicalized downstream","default":"","title":"Dob"},"description":"date of birth (individuals), optional; passed through as-is — ISO `yyyy-mm-dd`, `dd Mon yyyy` or a bare year are canonicalized downstream"},{"name":"proofs","in":"query","required":false,"schema":{"type":"string","description":"set to '1' to include per-key Merkle non-membership proofs against `list_root` on a CLEAR result (third-party re-verifiable; hits carry no absence proofs)","default":"","title":"Proofs"},"description":"set to '1' to include per-key Merkle non-membership proofs against `list_root` on a CLEAR result (third-party re-verifiable; hits carry no absence proofs)"},{"name":"X-API-Key","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"400":{"description":"Malformed input — refused before metering; nothing was charged.","content":{"application/json":{"example":{"error":"no well-formed numbers — nothing was charged","invalid":[]},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unknown, inactive, or expired API key.","content":{"application/json":{"example":{"error":"unknown or inactive API key","tier":"invalid","hint":"see / for pricing; set X-API-Key for higher limits"},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"429":{"description":"Quota exceeded for the caller's tier.","content":{"application/json":{"example":{"error":"sandbox daily quota exceeded","tier":"sandbox","hint":"see / for pricing; set X-API-Key for higher limits"},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"The register, or an optional feature, is unavailable or not configured on this deployment. A register 503 (since 1.4.1) also carries the mirror's `data_as_of` with the source fields — `source_latest_diff_date` (the newest 差分 the NTA 公表サイト listed when the sync last read it), `source_checked_at`, `source_gap_business_days` and `freshness.rule` (`stale` here) — so a caller can tell a mirror that is behind its source (`data_date` older than `source_latest_diff_date`) from a source that has not published (equal, but `source_checked_at` older than `freshness.source_check_max_hours`); `data_as_of` is null when the mirror is absent. Nothing was charged.","content":{"application/json":{"example":{"error":"register temporarily unavailable (not synced or stale beyond the freshness window)","data_as_of":{"zenken_date":"20260831","last_diff_date":"20260911","synced_at":"2026-09-20T13:27:04+00:00","source":"https://www.invoice-kohyo.nta.go.jp/download/zenken","data_date":"20260911","source_latest_diff_date":"20260911","source_checked_at":"2026-09-20T13:27:03+00:00","source_gap_business_days":6,"freshness":{"rule":"stale","max_age_days":10,"source_check_max_hours":48,"source_gap_max_business_days":15}}},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{},{"ApiKeyAuth":[]}]},"post":{"tags":["Compliance"],"summary":"Screen a supplier name against public sanctions lists (batch-friendly)","operationId":"screenPost","parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"413":{"description":"Request body over the size cap — refused before it was buffered or parsed; nothing was charged.","content":{"application/json":{"example":{"error":"request body too large (max 65536 bytes)"},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"400":{"description":"Malformed input — refused before metering; nothing was charged.","content":{"application/json":{"example":{"error":"no well-formed numbers — nothing was charged","invalid":[]},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unknown, inactive, or expired API key.","content":{"application/json":{"example":{"error":"unknown or inactive API key","tier":"invalid","hint":"see / for pricing; set X-API-Key for higher limits"},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"429":{"description":"Quota exceeded for the caller's tier.","content":{"application/json":{"example":{"error":"sandbox daily quota exceeded","tier":"sandbox","hint":"see / for pricing; set X-API-Key for higher limits"},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"The register, or an optional feature, is unavailable or not configured on this deployment. A register 503 (since 1.4.1) also carries the mirror's `data_as_of` with the source fields — `source_latest_diff_date` (the newest 差分 the NTA 公表サイト listed when the sync last read it), `source_checked_at`, `source_gap_business_days` and `freshness.rule` (`stale` here) — so a caller can tell a mirror that is behind its source (`data_date` older than `source_latest_diff_date`) from a source that has not published (equal, but `source_checked_at` older than `freshness.source_check_max_hours`); `data_as_of` is null when the mirror is absent. Nothing was charged.","content":{"application/json":{"example":{"error":"register temporarily unavailable (not synced or stale beyond the freshness window)","data_as_of":{"zenken_date":"20260831","last_diff_date":"20260911","synced_at":"2026-09-20T13:27:04+00:00","source":"https://www.invoice-kohyo.nta.go.jp/download/zenken","data_date":"20260911","source_latest_diff_date":"20260911","source_checked_at":"2026-09-20T13:27:03+00:00","source_gap_business_days":6,"freshness":{"rule":"stale","max_age_days":10,"source_check_max_hours":48,"source_gap_max_business_days":15}}},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{},{"ApiKeyAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"description":"``POST /v1/screen`` body.","properties":{"name":{"description":"supplier name to screen","title":"Name","type":"string"},"aliases":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"description":"alternative names to also screen","title":"Aliases"},"id_numbers":{"anyOf":[{"items":{"description":"One ``id_numbers[]`` entry for ``POST /v1/screen``.","properties":{"scheme":{"default":"","description":"ID scheme, e.g. 'passport'; blank screens the number under every scheme present on the loaded lists","title":"Scheme","type":"string"},"number":{"description":"the ID value to screen","title":"Number","type":"string"}},"required":["number"],"title":"ScreenIdNumber","type":"object"},"type":"array"},{"type":"null"}],"description":"IDs to also screen, e.g. [{\"scheme\": \"passport\", \"number\": \"...\"}]","title":"Id Numbers"},"dob":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"date of birth (individuals), passed through as-is — ISO 'yyyy-mm-dd', 'dd Mon yyyy', or a bare year","title":"Dob"},"proofs":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":false,"description":"include per-key Merkle non-membership proofs on a CLEAR result","title":"Proofs"}},"required":["name"],"title":"ScreenRequest","type":"object"},"example":{"aliases":[],"name":"Example Trading Co., Ltd.","proofs":false}}}}}},"/v1/alphabet-names":{"get":{"tags":["Names & Resolution"],"summary":"Provenance-labelled alphabet names of a Japanese corporation","description":"Provenance-labelled alphabet names of a Japanese corporation (official-en /\nofficial-reading / generated) from the houjin-bangou mirror, plus folded\nmatching_variants for screening ingestion. Corporations only (APPI: the register\ncarries no individual proprietors; all fields are public corporate data).","operationId":"alphabetNames","parameters":[{"name":"corporate_number","in":"query","required":false,"schema":{"type":"string","description":"a 13-digit 法人番号 (Corporate Number, check-digit validated)","default":"","title":"Corporate Number"},"description":"a 13-digit 法人番号 (Corporate Number, check-digit validated)"},{"name":"t_number","in":"query","required":false,"schema":{"type":"string","description":"alternative input: T + 13-digit 法人番号 (the corporation's qualified-invoice number format); resolves to the same corporation","default":"","title":"T Number"},"description":"alternative input: T + 13-digit 法人番号 (the corporation's qualified-invoice number format); resolves to the same corporation"},{"name":"X-API-Key","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"400":{"description":"Malformed input — refused before metering; nothing was charged.","content":{"application/json":{"example":{"error":"no well-formed numbers — nothing was charged","invalid":[]},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unknown, inactive, or expired API key.","content":{"application/json":{"example":{"error":"unknown or inactive API key","tier":"invalid","hint":"see / for pricing; set X-API-Key for higher limits"},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"429":{"description":"Quota exceeded for the caller's tier.","content":{"application/json":{"example":{"error":"sandbox daily quota exceeded","tier":"sandbox","hint":"see / for pricing; set X-API-Key for higher limits"},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"The register, or an optional feature, is unavailable or not configured on this deployment. A register 503 (since 1.4.1) also carries the mirror's `data_as_of` with the source fields — `source_latest_diff_date` (the newest 差分 the NTA 公表サイト listed when the sync last read it), `source_checked_at`, `source_gap_business_days` and `freshness.rule` (`stale` here) — so a caller can tell a mirror that is behind its source (`data_date` older than `source_latest_diff_date`) from a source that has not published (equal, but `source_checked_at` older than `freshness.source_check_max_hours`); `data_as_of` is null when the mirror is absent. Nothing was charged.","content":{"application/json":{"example":{"error":"register temporarily unavailable (not synced or stale beyond the freshness window)","data_as_of":{"zenken_date":"20260831","last_diff_date":"20260911","synced_at":"2026-09-20T13:27:04+00:00","source":"https://www.invoice-kohyo.nta.go.jp/download/zenken","data_date":"20260911","source_latest_diff_date":"20260911","source_checked_at":"2026-09-20T13:27:03+00:00","source_gap_business_days":6,"freshness":{"rule":"stale","max_age_days":10,"source_check_max_hours":48,"source_gap_max_business_days":15}}},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{},{"ApiKeyAuth":[]}]}},"/v1/lei":{"get":{"tags":["Identifiers"],"summary":"GLEIF LEI ↔ 法人番号 bridge","description":"GLEIF LEI (Legal Entity Identifier) <-> 法人番号 bridge (jpverify.lei; the method\nand the measured coverage are summarised in ``/llms.txt`` and below). Provide exactly one\nof ``corporate_number=``/``t_number=`` (-> the corporation's LEI, if GLEIF's golden copy\nmaps one) or ``lei=`` (-> the 法人番号 it maps to, if any). Honest scope: only a measured\n~20% of JP-jurisdiction LEIs have a number-based or exact-name join to a 法人番号 today\n(the join is by the 法人番号 GLEIF records as the registration authority id, else by an\nexact normalised legal name — nothing fuzzy) — a null ``lei`` is\nthe ordinary, correctly-reported case, not a lookup failure. When more than one LEI maps\nto the same 法人番号, the chosen one prefers an ISSUED registration then the most\nrecently updated (see ``lei_candidates`` for the total). GLEIF publishes this data under\nCC0 1.0 (no attribution required); a response also carrying houjin-bangou data still owes\nthe NTA attribution for that half. Where the bridge is not configured this returns 503.","operationId":"leiLookup","parameters":[{"name":"corporate_number","in":"query","required":false,"schema":{"type":"string","description":"a 13-digit 法人番号 (Corporate Number, check-digit validated) — look up its LEI","default":"","title":"Corporate Number"},"description":"a 13-digit 法人番号 (Corporate Number, check-digit validated) — look up its LEI"},{"name":"t_number","in":"query","required":false,"schema":{"type":"string","description":"alternative input: T + 13-digit 法人番号","default":"","title":"T Number"},"description":"alternative input: T + 13-digit 法人番号"},{"name":"lei","in":"query","required":false,"schema":{"type":"string","description":"alternative input: a 20-character LEI (ISO 17442) — look up the 法人番号 it maps to","default":"","title":"Lei"},"description":"alternative input: a 20-character LEI (ISO 17442) — look up the 法人番号 it maps to"},{"name":"X-API-Key","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"400":{"description":"Malformed input — refused before metering; nothing was charged.","content":{"application/json":{"example":{"error":"no well-formed numbers — nothing was charged","invalid":[]},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unknown, inactive, or expired API key.","content":{"application/json":{"example":{"error":"unknown or inactive API key","tier":"invalid","hint":"see / for pricing; set X-API-Key for higher limits"},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"429":{"description":"Quota exceeded for the caller's tier.","content":{"application/json":{"example":{"error":"sandbox daily quota exceeded","tier":"sandbox","hint":"see / for pricing; set X-API-Key for higher limits"},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"The register, or an optional feature, is unavailable or not configured on this deployment. A register 503 (since 1.4.1) also carries the mirror's `data_as_of` with the source fields — `source_latest_diff_date` (the newest 差分 the NTA 公表サイト listed when the sync last read it), `source_checked_at`, `source_gap_business_days` and `freshness.rule` (`stale` here) — so a caller can tell a mirror that is behind its source (`data_date` older than `source_latest_diff_date`) from a source that has not published (equal, but `source_checked_at` older than `freshness.source_check_max_hours`); `data_as_of` is null when the mirror is absent. Nothing was charged.","content":{"application/json":{"example":{"error":"register temporarily unavailable (not synced or stale beyond the freshness window)","data_as_of":{"zenken_date":"20260831","last_diff_date":"20260911","synced_at":"2026-09-20T13:27:04+00:00","source":"https://www.invoice-kohyo.nta.go.jp/download/zenken","data_date":"20260911","source_latest_diff_date":"20260911","source_checked_at":"2026-09-20T13:27:03+00:00","source_gap_business_days":6,"freshness":{"rule":"stale","max_age_days":10,"source_check_max_hours":48,"source_gap_max_business_days":15}}},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{},{"ApiKeyAuth":[]}]}},"/v1/shareholders":{"get":{"tags":["Disclosure"],"summary":"Disclosed major shareholders of an EDINET securities-report filer","description":"The 「大株主の状況」 table a 有価証券報告書 / 半期報告書 filer publishes on EDINET,\nkeyed by 法人番号 — facts as filed, never a determination.\n\n**Honest scope.** What is published about a company's owners depends on its legal\nform. A 株式会社's 株主名簿 is inspectable by its own shareholders and creditors, on a\nstated reason (会社法 125条2項) — the route the Act gives an outsider is a 親会社社員's,\nwith a court's permission (125条4項) — and its shareholders are not among the\nregistered items (会社法 911条3項). A 持分会社 keeps no 株主名簿, and the members who\nexecute its business and represent it ARE registered items (会社法 914条六・七 for a\n合同会社), a public record this service does not carry. Major-shareholder facts of the\nkind this endpoint serves therefore exist only for corporations that file a\n有価証券報告書 or 半期報告書 — MEASURED 4,918 code-list rows / 4,917 distinct 法人番号\non the 2026-09-18 list, 0.098 % of 5,009,012 active corporations. For any other\n法人番号 this endpoint answers with a structured **no-public-disclosure certificate**\n(`status: no_public_disclosure`) that cites those provisions — each with the legal\nform it holds for — and the code-list date it was checked against; it never says the\ncorporation has no shareholders.\n\n**Privacy (mode A).** A holder is named only when it is positively an organisation —\nresolved to exactly one active 法人番号 by exact name match, or carrying an\norganisation marker from a pinned table. Every other holder is served as\n`unresolved` with rank, share count and ratio only; its published name and the\naddress column of every row are discarded in memory at parse time and are never\nstored, logged, signed or served. A row whose name cell was nil or empty in the\nfiling is `unknown` — likewise nameless, and withheld by the same gate. Per-ROW\nfigures for holders served without a name go only to a key whose onboarding recorded\nthe Terms Art. 7(3) representation while the operator's counsel record is in place;\nevery other caller — and always the sandbox — receives them in aggregate\n(`holders_form: \"aggregate\"`, with the reason beside it).\n\n1 unit on every tier including the sandbox; a 400, a 404 (`doc_id` not retained) and\na 503 (no sidecar) are free. The 404 body is `{error, corporate_number, hint}` — it\ndoes NOT carry `filings[]`, which is part of the metered answer.","operationId":"majorShareholders","parameters":[{"name":"corporate_number","in":"query","required":false,"schema":{"type":"string","description":"a 13-digit 法人番号 (Corporate Number, check-digit validated)","default":"","title":"Corporate Number"},"description":"a 13-digit 法人番号 (Corporate Number, check-digit validated)"},{"name":"t_number","in":"query","required":false,"schema":{"type":"string","description":"alternative input: T + 13-digit 法人番号","default":"","title":"T Number"},"description":"alternative input: T + 13-digit 法人番号"},{"name":"as_of","in":"query","required":false,"schema":{"type":"string","description":"YYYY-MM-DD — select the latest retained filing submitted on or before this date (what a reader could have seen then); the holdings themselves are as of the filing's own basis_date","default":"","title":"As Of"},"description":"YYYY-MM-DD — select the latest retained filing submitted on or before this date (what a reader could have seen then); the holdings themselves are as of the filing's own basis_date"},{"name":"doc_id","in":"query","required":false,"schema":{"type":"string","description":"select one retained filing by its EDINET docID (書類管理番号); a docID this deployment does not retain is a free 404 that carries no document index","default":"","title":"Doc Id"},"description":"select one retained filing by its EDINET docID (書類管理番号); a docID this deployment does not retain is a free 404 that carries no document index"},{"name":"sign","in":"query","required":false,"schema":{"type":"integer","description":"Ed25519-signed record (Growth/Reseller keys)","default":0,"title":"Sign"},"description":"Ed25519-signed record (Growth/Reseller keys)"},{"name":"X-API-Key","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Api-Key"}}],"responses":{"200":{"description":"The filer's 「大株主の状況」 table, or a structured statement of why none is published. Both generated examples are real responses of this code on a synthetic sidecar.","content":{"application/json":{"schema":{},"examples":{"shareholders_available":{"summary":"an EDINET securities-report filer's disclosed major shareholders","value":{"corporate_number":"8200012010001","t_number":"T8200012010001","name_ja":"株式会社サンプル","edinet":{"edinet_code":"E99999","filer_type":"内国法人・組合","listed":true,"listing_label":"上場","securities_code":"99990","list_date":"20260908","edinet_candidates":1},"major_shareholders":{"status":"available","reason":null,"detail":null,"filing":{"doc_id":"S100XXXX","doc_type_code":"120","doc_type":"有価証券報告書","form":"第三号様式","edinet_code":"E00001","key_basis":"list_jcn","submitted_at":"2026-06-24T15:03+09:00","period_end":"2026-03-31","basis_date":"2026-03-31","record_date_context":null,"record_date_stated":"2026-03-31","amendment_flag":false,"submission_number":"1","amends":null,"amendment_link":null,"amended_by":null,"amendment_content":null,"table_status":"available","legal_status_at_fetch":"1","statutory_viewing_end":"2031-06-24","extension_end":null,"viewing_end_basis":"jpcal-holidays","viewing_end_from":"receipt","source_viewable_on_edinet":true,"source_viewable_note":"computed from the statutory / extension end against today's date","taxonomy_version":"jpcrp/2025-11-01","source_kind":"xbrl_instance","source_zip_sha256":"0000000000000000000000000000000000000000000000000000000000000000","source_elements":["jpcrp_cor:NameMajorShareholders","jpcrp_cor:NumberOfSharesHeld","jpcrp_cor:ShareholdingRatio"],"integrity":[],"fetched_at":"2026-09-17T18:02:11+00:00","list_date":"2026-06-24"},"holders_count":6,"named_count":2,"unresolved_count":3,"unknown_count":1,"total_shares_held":140043000,"total_ratio_pct":"43.42","documents_scanned_through":"2026-09-17","edinet_code_list_date":"20260908","checked_at":"2026-09-17T18:41:12+00:00","privacy_mode":"A","basis":[{"law_ja":"会社法","law_en":"Companies Act (Act No. 86 of 2005)","article":"第125条第2項","scope_en":"株式会社 (stock companies, and 特例有限会社 deemed such)","quote_ja":"株主及び債権者は、株式会社の営業時間内は、いつでも、次に掲げる請求をすることができる。この場合においては、当該請求の理由を明らかにしてしなければならない。","effect_en":"the shareholder register (株主名簿) of a 株式会社 may be inspected by the company's own shareholders and creditors, and only on a stated reason — it is not a public register, and it is not obtainable by asking the company as an outsider (see 第125条第4項 for the route the Act does provide)","source":"e-Gov 法令API v2, revision 417AC0000000086_20260812_508AC0000000064","accessed":"2026-09-22"},{"law_ja":"会社法","law_en":"Companies Act (Act No. 86 of 2005)","article":"第125条第4項","scope_en":"株式会社 (stock companies, and 特例有限会社 deemed such)","quote_ja":"株式会社の親会社社員は、その権利を行使するため必要があるときは、裁判所の許可を得て、当該株式会社の株主名簿について第二項各号に掲げる請求をすることができる。この場合においては、当該請求の理由を明らかにしてしなければならない。","effect_en":"the Act does provide one route to the 株主名簿 for someone who is neither a shareholder nor a creditor of the company: a member of its PARENT company (親会社社員), needing it to exercise their rights, with a court's permission — so the register is restricted, not unobtainable","source":"e-Gov 法令API v2, revision 417AC0000000086_20260812_508AC0000000064","accessed":"2026-09-22"},{"law_ja":"会社法","law_en":"Companies Act (Act No. 86 of 2005)","article":"第911条第3項","scope_en":"株式会社 (stock companies, and 特例有限会社 deemed such)","quote_ja":null,"effect_en":"the items a 株式会社 records in the commercial register (登記事項) do not include its shareholders; the only 「株主」 token in that enumeration is 株主名簿管理人 (item 11 — the administrator of the shareholder register), so the public register carries no holding, no holder and no ratio","source":"e-Gov 法令API v2, revision 417AC0000000086_20260812_508AC0000000064","accessed":"2026-09-22"},{"law_ja":"会社法","law_en":"Companies Act (Act No. 86 of 2005)","article":"第914条第6号・第7号","scope_en":"持分会社 (合名会社・合資会社・合同会社)","quote_ja":"六 合同会社の業務を執行する社員の氏名又は名称／七 合同会社を代表する社員の氏名又は名称及び住所","effect_en":"a 持分会社 has 社員, not 株主, and keeps no 株主名簿 — and for a 合同会社 the members who execute its business and the members who represent it ARE registered items, obtainable by anyone from the 法務局. That public record is a different source from this one: JP-Verify holds no 登記 data, and the registered items are neither every 社員 nor anyone's contribution","source":"e-Gov 法令API v2, revision 417AC0000000086_20260812_508AC0000000064","accessed":"2026-09-22"}],"route":"/v1/shareholders?corporate_number=8200012010001","extension_period_note":null,"note":"snapshot of the ~10 largest holders as published by the filer at basis_date (割合 = 発行済株式（自己株式を除く）に対する所有株式数); holders can be trust accounts or custodians — the trustee or custodian is the named holder; nothing is published between filings for a 非上場 filer, and for a listed issuer only ≥ 5 % holdings move through 大量保有報告書 (金商法27条の23), which this block does not carry","holders":[{"rank":1,"member_origin":"core","holder_type":"corporation","holder_type_basis":"houjin-exact-unique-active","name_ja":"○○信託銀行株式会社","name_as_published":"○○信託銀行株式会社（信託口）","name_source":"houjin register","account_designation":"信託口","standing_proxy_as_published":null,"corporate_number":"2010401041086","resolution":{"method":"exact-name-unique-active","candidates":1,"mirror_data_date":"20260831"},"shares_held":32715000,"shares_decimals":-3,"shares_precision":"thousands","ratio_pct":"10.14","ratio_raw":"0.1014","ratio_decimals":4},{"rank":2,"member_origin":"core","holder_type":"organisation","holder_type_basis":"marker:BANK","name_ja":null,"name_as_published":"○○ ＢＡＮＫ ＡＮＤ ＴＲＵＳＴ ＣＯＭＰＡＮＹ","name_source":"as filed","account_designation":null,"standing_proxy_as_published":null,"corporate_number":null,"resolution":{"method":"exact-name-unique-active","candidates":0,"mirror_data_date":"20260831"},"shares_held":15969000,"shares_decimals":-3,"shares_precision":"thousands","ratio_pct":"4.95","ratio_raw":"0.0495","ratio_decimals":4}],"filings":[{"doc_id":"S100XXXX","doc_type_code":"120","doc_type":"有価証券報告書","submitted_at":"2026-06-24T15:03+09:00","basis_date":"2026-03-31","table_status":"available","withdrawn":false,"undisclosed":false,"amends":null,"amended_by":null,"selected":true},{"doc_id":"S100WWWW","doc_type_code":"160","doc_type":"半期報告書","submitted_at":"2025-11-13T15:30+09:00","basis_date":"2025-09-30","table_status":"available","withdrawn":false,"undisclosed":false,"amends":null,"amended_by":null,"selected":false}],"documents_scanned_from":"2025-06-01","as_of":null,"as_of_note":null,"unresolved_holders":4,"unresolved_ratio_total":"10.09","holders_form":"aggregate","holders_form_reason":"sandbox_is_always_aggregate","aggregate_note":"holders served without a name — unresolved, and rows whose name cell was nil or empty in the filing (unknown) — are served in aggregate form (count + combined ratio when ≥ 3) on this key; per-row figures for them require the counsel record of ★Q-1 and a per-key confirmation of TERMS 第7条第3項 (never on the sandbox)","privacy_note":"holders are named only when resolved to exactly one active 法人番号 by exact name match or carrying an organisation marker from the pinned table; holders not positively resolved to an organisation — which includes every individual shareholder — are served as unresolved with rank, shares and ratio only: their published name and the address column of every row are discarded at ingest and never stored, logged, signed or served (APPI 2条1項; PPC 通則編 2-1 事例7)","voting_rights_table_present":false,"multiple_instants":false,"total_shares_precision":"thousands","relation":null,"lists_captured_from":"2026-05-31"},"data_as_of":{"documents_scanned_through":"2026-09-17","documents_scanned_from":"2025-06-01","edinet_code_list_date":"20260908","houjin_mirror_data_date":"20260831","synced_at":"2026-09-17T18:41:12+00:00"},"edinet_register":{"source":"EDINETコードリスト（EDINET閲覧（提出）サイト・金融庁）","source_url":"https://disclosure2.edinet-fsa.go.jp/weee0010.aspx","list_date":"20260908","license":"PDL1.0","license_url":"https://www.digital.go.jp/resources/open_data/public_data_license_v1.0","attribution":"出典：EDINET閲覧（提出）サイト（https://disclosure2.edinet-fsa.go.jp/weee0010.aspx）、PDL1.0（https://www.digital.go.jp/resources/open_data/public_data_license_v1.0）","processing_note":"EDINETコードリストをもとに株式会社ヤナギtheファースト（JP-Verify）が編集・加工して作成","note":"presence in the EDINET code list as of list_date; absence (edinet: null) means not on that list, not a claim about the entity"},"edinet_documents_register":{"source":"EDINET 提出書類（有価証券報告書・半期報告書「大株主の状況」）— 金融庁 EDINET閲覧（提出）サイト","source_url":"https://disclosure2.edinet-fsa.go.jp/","document_locator":"docID (書類管理番号) — open the document on the EDINET viewer by docID; no per-document URL pattern is documented (★)","terms":"EDINET利用規約（令和7年4月25日改訂・PDL1.0準拠）","terms_url":"https://disclosure2dl.edinet-fsa.go.jp/guide/static/disclosure/WZEK0030.html","copyright_basis":"facts of a public statutory filing (著作権法2条1項1号; 12条の2 — the table's selection and arrangement are prescribed by 開示府令 第三号様式 (25); PDL1.0: 数値データ・簡単な表は著作権による保護の対象外); the filer's narrative text is never reproduced","attribution":"出典：EDINET閲覧（提出）サイト（https://disclosure2.edinet-fsa.go.jp/）、PDL1.0（https://www.digital.go.jp/resources/open_data/public_data_license_v1.0）","processing_note":"EDINETに提出された有価証券報告書等のXBRLデータ（「大株主の状況」）をもとに株式会社ヤナギtheファースト（JP-Verify）が抽出・加工して作成（個人株主の氏名・住所は含まない）","taxonomy_notice":"© Copyright 2014 Financial Services Agency, The Japanese Government — EDINET Taxonomy element ids are quoted as keys under the EDINET Taxonomy Legal Statement","reference_information_note":"XBRL data is 参考情報 per the FSA (EDINET 概要書 2026-06 p.3); the filed document is authoritative; a 訂正報告書 may supersede","not_included":["names and addresses of holders not positively identified as an organisation","the address column of every row","holders behind trust accounts (信託口) and custodians (常任代理人) — the trustee/custodian is named as published","holders below the filer's cut-off (「10 名程度」)","voting-rights qualifiers and notes (会社法施行規則67条1項, 主要株主の異動) — text block only, not tagged"],"sources":["S-105","S-106","S-110","S-111","S-124","S-126"],"note":"facts as published by the filer as of the filing's own basis date; not an FSA certification; not a claim about holdings between filings"},"attribution":["出典：EDINET閲覧（提出）サイト（https://disclosure2.edinet-fsa.go.jp/）、PDL1.0（https://www.digital.go.jp/resources/open_data/public_data_license_v1.0）","出典：EDINET閲覧（提出）サイト（https://disclosure2.edinet-fsa.go.jp/weee0010.aspx）、PDL1.0（https://www.digital.go.jp/resources/open_data/public_data_license_v1.0）","出典：国税庁法人番号公表サイト（国税庁）（https://www.houjin-bangou.nta.go.jp/）を加工して作成"],"tier":"sandbox","remaining":49,"signed_record":null}},"shareholders_no_public_disclosure":{"summary":"a corporation outside the filer set: the no-public-disclosure certificate","value":{"corporate_number":"7400012010007","t_number":"T7400012010007","name_ja":null,"edinet":null,"major_shareholders":{"status":"no_public_disclosure","reason":"not_a_securities_report_filer","detail":"not_on_code_list","filing":null,"holders_count":null,"named_count":null,"unresolved_count":null,"unknown_count":null,"total_shares_held":null,"total_ratio_pct":null,"documents_scanned_through":null,"edinet_code_list_date":"20260908","checked_at":"2026-09-17T18:41:12+00:00","privacy_mode":"A","basis":[{"law_ja":"会社法","law_en":"Companies Act (Act No. 86 of 2005)","article":"第125条第2項","scope_en":"株式会社 (stock companies, and 特例有限会社 deemed such)","quote_ja":"株主及び債権者は、株式会社の営業時間内は、いつでも、次に掲げる請求をすることができる。この場合においては、当該請求の理由を明らかにしてしなければならない。","effect_en":"the shareholder register (株主名簿) of a 株式会社 may be inspected by the company's own shareholders and creditors, and only on a stated reason — it is not a public register, and it is not obtainable by asking the company as an outsider (see 第125条第4項 for the route the Act does provide)","source":"e-Gov 法令API v2, revision 417AC0000000086_20260812_508AC0000000064","accessed":"2026-09-22"},{"law_ja":"会社法","law_en":"Companies Act (Act No. 86 of 2005)","article":"第125条第4項","scope_en":"株式会社 (stock companies, and 特例有限会社 deemed such)","quote_ja":"株式会社の親会社社員は、その権利を行使するため必要があるときは、裁判所の許可を得て、当該株式会社の株主名簿について第二項各号に掲げる請求をすることができる。この場合においては、当該請求の理由を明らかにしてしなければならない。","effect_en":"the Act does provide one route to the 株主名簿 for someone who is neither a shareholder nor a creditor of the company: a member of its PARENT company (親会社社員), needing it to exercise their rights, with a court's permission — so the register is restricted, not unobtainable","source":"e-Gov 法令API v2, revision 417AC0000000086_20260812_508AC0000000064","accessed":"2026-09-22"},{"law_ja":"会社法","law_en":"Companies Act (Act No. 86 of 2005)","article":"第911条第3項","scope_en":"株式会社 (stock companies, and 特例有限会社 deemed such)","quote_ja":null,"effect_en":"the items a 株式会社 records in the commercial register (登記事項) do not include its shareholders; the only 「株主」 token in that enumeration is 株主名簿管理人 (item 11 — the administrator of the shareholder register), so the public register carries no holding, no holder and no ratio","source":"e-Gov 法令API v2, revision 417AC0000000086_20260812_508AC0000000064","accessed":"2026-09-22"},{"law_ja":"会社法","law_en":"Companies Act (Act No. 86 of 2005)","article":"第914条第6号・第7号","scope_en":"持分会社 (合名会社・合資会社・合同会社)","quote_ja":"六 合同会社の業務を執行する社員の氏名又は名称／七 合同会社を代表する社員の氏名又は名称及び住所","effect_en":"a 持分会社 has 社員, not 株主, and keeps no 株主名簿 — and for a 合同会社 the members who execute its business and the members who represent it ARE registered items, obtainable by anyone from the 法務局. That public record is a different source from this one: JP-Verify holds no 登記 data, and the registered items are neither every 社員 nor anyone's contribution","source":"e-Gov 法令API v2, revision 417AC0000000086_20260812_508AC0000000064","accessed":"2026-09-22"}],"route":"/v1/shareholders?corporate_number=7400012010007","extension_period_note":null,"note":"What is published about a Japanese company's owners depends on its legal form, and no form publishes the table this block would otherwise carry. For a 株式会社 the 株主名簿 is kept by the company and may be inspected by its own shareholders and creditors, on a stated reason (会社法125条2項) — the route the Act gives an outsider is that of a 親会社社員, with a court's permission (125条4項) — and the shareholders are not among the items entered in the commercial register (911条3項). A 持分会社 (合名会社・合資会社・合同会社) has 社員, not 株主, and no 株主名簿: the members who execute its business and the members who represent it ARE entered in its commercial register (for a 合同会社, 会社法914条六・七), a public record obtainable from the 法務局 that this service does not carry, and that lists neither every 社員 nor anyone's contribution. Other legal forms (国の機関, 地方公共団体, 一般社団・財団法人, 医療法人, 学校法人, 協同組合 and the rest) are governed by their own statutes and none of those registers is read here. What this service carries is the 「大株主の状況」 table a corporation publishes when it files a 有価証券報告書 or 半期報告書 on EDINET (金商法24条1項・24条の5第1項). This is a statement about what is PUBLISHED about this corporation — it is not a statement that the corporation has no shareholders or members, and it is not a finding about who they are. This 法人番号 is not on the EDINET code list as of edinet_code_list_date, so no securities filing of its own is known to us; absence from that list is a fact about the list, not a determination that the entity files nothing.","holders":[],"unresolved_holders":null,"unresolved_ratio_total":null,"holders_form":"aggregate","holders_form_reason":"sandbox_is_always_aggregate","aggregate_note":"holders served without a name — unresolved, and rows whose name cell was nil or empty in the filing (unknown) — are served in aggregate form (count + combined ratio when ≥ 3) on this key; per-row figures for them require the counsel record of ★Q-1 and a per-key confirmation of TERMS 第7条第3項 (never on the sandbox)"},"data_as_of":{"documents_scanned_through":null,"documents_scanned_from":null,"edinet_code_list_date":"20260908","houjin_mirror_data_date":"20260831","synced_at":"2026-09-17T18:41:12+00:00"},"edinet_register":{"source":"EDINETコードリスト（EDINET閲覧（提出）サイト・金融庁）","source_url":"https://disclosure2.edinet-fsa.go.jp/weee0010.aspx","list_date":"20260908","license":"PDL1.0","license_url":"https://www.digital.go.jp/resources/open_data/public_data_license_v1.0","attribution":"出典：EDINET閲覧（提出）サイト（https://disclosure2.edinet-fsa.go.jp/weee0010.aspx）、PDL1.0（https://www.digital.go.jp/resources/open_data/public_data_license_v1.0）","processing_note":"EDINETコードリストをもとに株式会社ヤナギtheファースト（JP-Verify）が編集・加工して作成","note":"presence in the EDINET code list as of list_date; absence (edinet: null) means not on that list, not a claim about the entity"},"edinet_documents_register":{"source":"EDINET 提出書類（有価証券報告書・半期報告書「大株主の状況」）— 金融庁 EDINET閲覧（提出）サイト","source_url":"https://disclosure2.edinet-fsa.go.jp/","document_locator":"docID (書類管理番号) — open the document on the EDINET viewer by docID; no per-document URL pattern is documented (★)","terms":"EDINET利用規約（令和7年4月25日改訂・PDL1.0準拠）","terms_url":"https://disclosure2dl.edinet-fsa.go.jp/guide/static/disclosure/WZEK0030.html","copyright_basis":"facts of a public statutory filing (著作権法2条1項1号; 12条の2 — the table's selection and arrangement are prescribed by 開示府令 第三号様式 (25); PDL1.0: 数値データ・簡単な表は著作権による保護の対象外); the filer's narrative text is never reproduced","attribution":"出典：EDINET閲覧（提出）サイト（https://disclosure2.edinet-fsa.go.jp/）、PDL1.0（https://www.digital.go.jp/resources/open_data/public_data_license_v1.0）","processing_note":"EDINETに提出された有価証券報告書等のXBRLデータ（「大株主の状況」）をもとに株式会社ヤナギtheファースト（JP-Verify）が抽出・加工して作成（個人株主の氏名・住所は含まない）","taxonomy_notice":"© Copyright 2014 Financial Services Agency, The Japanese Government — EDINET Taxonomy element ids are quoted as keys under the EDINET Taxonomy Legal Statement","reference_information_note":"XBRL data is 参考情報 per the FSA (EDINET 概要書 2026-06 p.3); the filed document is authoritative; a 訂正報告書 may supersede","not_included":["names and addresses of holders not positively identified as an organisation","the address column of every row","holders behind trust accounts (信託口) and custodians (常任代理人) — the trustee/custodian is named as published","holders below the filer's cut-off (「10 名程度」)","voting-rights qualifiers and notes (会社法施行規則67条1項, 主要株主の異動) — text block only, not tagged"],"sources":["S-105","S-106","S-110","S-111","S-124","S-126"],"note":"facts as published by the filer as of the filing's own basis date; not an FSA certification; not a claim about holdings between filings"},"attribution":["出典：EDINET閲覧（提出）サイト（https://disclosure2.edinet-fsa.go.jp/）、PDL1.0（https://www.digital.go.jp/resources/open_data/public_data_license_v1.0）"],"tier":"sandbox","remaining":48,"signed_record":null}}}}}},"400":{"description":"Malformed input — refused before metering; nothing was charged.","content":{"application/json":{"example":{"error":"no well-formed numbers — nothing was charged","invalid":[]},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unknown, inactive, or expired API key.","content":{"application/json":{"example":{"error":"unknown or inactive API key","tier":"invalid","hint":"see / for pricing; set X-API-Key for higher limits"},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"429":{"description":"Quota exceeded for the caller's tier.","content":{"application/json":{"example":{"error":"sandbox daily quota exceeded","tier":"sandbox","hint":"see / for pricing; set X-API-Key for higher limits"},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"The register, or an optional feature, is unavailable or not configured on this deployment. A register 503 (since 1.4.1) also carries the mirror's `data_as_of` with the source fields — `source_latest_diff_date` (the newest 差分 the NTA 公表サイト listed when the sync last read it), `source_checked_at`, `source_gap_business_days` and `freshness.rule` (`stale` here) — so a caller can tell a mirror that is behind its source (`data_date` older than `source_latest_diff_date`) from a source that has not published (equal, but `source_checked_at` older than `freshness.source_check_max_hours`); `data_as_of` is null when the mirror is absent. Nothing was charged.","content":{"application/json":{"example":{"error":"register temporarily unavailable (not synced or stale beyond the freshness window)","data_as_of":{"zenken_date":"20260831","last_diff_date":"20260911","synced_at":"2026-09-20T13:27:04+00:00","source":"https://www.invoice-kohyo.nta.go.jp/download/zenken","data_date":"20260911","source_latest_diff_date":"20260911","source_checked_at":"2026-09-20T13:27:03+00:00","source_gap_business_days":6,"freshness":{"rule":"stale","max_age_days":10,"source_check_max_hours":48,"source_gap_max_business_days":15}}},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"`doc_id=` names a document this deployment does not retain for this corporation. The reference is bad, not the answer: nothing was charged, and the retained document index (`filings[]`) is in the 200 of the same call without `doc_id=`.","content":{"application/json":{"example":{"error":"doc_id S100ZZZZ is not retained for this corporation — nothing was charged","corporate_number":"1180301018771","hint":"call this route without doc_id= (1 unit) for filings[], the retained document index of this corporation"},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{},{"ApiKeyAuth":[]}]}},"/v1/resolve":{"get":{"tags":["Names & Resolution"],"summary":"Resolve a company name to candidate 法人番号","description":"Deterministic rule-based name -> corporate-number resolution over the\nhoujin-bangou mirror (NOT fuzzy search: exact matching of rule-enumerable\nfolded name/reading keys, ranked by provenance tier + exact-form bonus).\nA name match is NOT entity identity — candidates carry prefecture/city\ndisambiguators. Corporations only (APPI: the register has no individual\nproprietors).","operationId":"resolveName","parameters":[{"name":"name","in":"query","required":false,"schema":{"type":"string","description":"a company name to resolve (kanji / kana / romaji / registered English), e.g. トヨタ自動車株式会社 or 'Toyota Jidosha KK'","default":"","title":"Name"},"description":"a company name to resolve (kanji / kana / romaji / registered English), e.g. トヨタ自動車株式会社 or 'Toyota Jidosha KK'"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","description":"max candidates returned (1..25; higher for Growth/Reseller keys)","default":10,"title":"Limit"},"description":"max candidates returned (1..25; higher for Growth/Reseller keys)"},{"name":"X-API-Key","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"400":{"description":"Malformed input — refused before metering; nothing was charged.","content":{"application/json":{"example":{"error":"no well-formed numbers — nothing was charged","invalid":[]},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unknown, inactive, or expired API key.","content":{"application/json":{"example":{"error":"unknown or inactive API key","tier":"invalid","hint":"see / for pricing; set X-API-Key for higher limits"},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"429":{"description":"Quota exceeded for the caller's tier.","content":{"application/json":{"example":{"error":"sandbox daily quota exceeded","tier":"sandbox","hint":"see / for pricing; set X-API-Key for higher limits"},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"The register, or an optional feature, is unavailable or not configured on this deployment. A register 503 (since 1.4.1) also carries the mirror's `data_as_of` with the source fields — `source_latest_diff_date` (the newest 差分 the NTA 公表サイト listed when the sync last read it), `source_checked_at`, `source_gap_business_days` and `freshness.rule` (`stale` here) — so a caller can tell a mirror that is behind its source (`data_date` older than `source_latest_diff_date`) from a source that has not published (equal, but `source_checked_at` older than `freshness.source_check_max_hours`); `data_as_of` is null when the mirror is absent. Nothing was charged.","content":{"application/json":{"example":{"error":"register temporarily unavailable (not synced or stale beyond the freshness window)","data_as_of":{"zenken_date":"20260831","last_diff_date":"20260911","synced_at":"2026-09-20T13:27:04+00:00","source":"https://www.invoice-kohyo.nta.go.jp/download/zenken","data_date":"20260911","source_latest_diff_date":"20260911","source_checked_at":"2026-09-20T13:27:03+00:00","source_gap_business_days":6,"freshness":{"rule":"stale","max_age_days":10,"source_check_max_hours":48,"source_gap_max_business_days":15}}},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{},{"ApiKeyAuth":[]}]}},"/v1/monitor/watchlist":{"post":{"tags":["Monitoring (Registry Watch)"],"summary":"Subscribe to a supplier watchlist","description":"Subscribe 法人番号 / T-numbers to this caller's watchlist. Body:\n``{\"corporate_numbers\": [\"T…\", \"…\", …]}`` (each check-digit validated; a bad number is\nrefused FREE, listing which). Requires ``X-API-Key`` (1.4.0). Metered like /v1/verify.\nOpt-in ``Idempotency-Key`` header: a retry with the same key + body replays the first\nresponse instead of re-metering.","operationId":"monitorWatchlistSubscribe","parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"413":{"description":"Request body over the size cap — refused before it was buffered or parsed; nothing was charged.","content":{"application/json":{"example":{"error":"request body too large (max 65536 bytes)"},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"400":{"description":"Malformed input — refused before metering; nothing was charged.","content":{"application/json":{"example":{"error":"no well-formed numbers — nothing was charged","invalid":[]},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"No API key (required on every /v1/monitor/* operation since release 1.4.0 — refused before any body read or metering, nothing was charged), or an unknown, inactive, or expired key.","content":{"application/json":{"example":{"error":"an API key is required on /v1/monitor/* (watchlists and webhooks are per-account state; since release 1.4.0 — before it, anonymous monitor state was keyed on the caller's IP address, which is shared behind NAT and usable cross-origin; see docs/VERSIONING.md, release 1.4.0)","tier":"sandbox","hint":"trial keys are free — see /"},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"429":{"description":"Quota exceeded for the caller's tier.","content":{"application/json":{"example":{"error":"sandbox daily quota exceeded","tier":"sandbox","hint":"see / for pricing; set X-API-Key for higher limits"},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"The register, or an optional feature, is unavailable or not configured on this deployment. A register 503 (since 1.4.1) also carries the mirror's `data_as_of` with the source fields — `source_latest_diff_date` (the newest 差分 the NTA 公表サイト listed when the sync last read it), `source_checked_at`, `source_gap_business_days` and `freshness.rule` (`stale` here) — so a caller can tell a mirror that is behind its source (`data_date` older than `source_latest_diff_date`) from a source that has not published (equal, but `source_checked_at` older than `freshness.source_check_max_hours`); `data_as_of` is null when the mirror is absent. Nothing was charged.","content":{"application/json":{"example":{"error":"register temporarily unavailable (not synced or stale beyond the freshness window)","data_as_of":{"zenken_date":"20260831","last_diff_date":"20260911","synced_at":"2026-09-20T13:27:04+00:00","source":"https://www.invoice-kohyo.nta.go.jp/download/zenken","data_date":"20260911","source_latest_diff_date":"20260911","source_checked_at":"2026-09-20T13:27:03+00:00","source_gap_business_days":6,"freshness":{"rule":"stale","max_age_days":10,"source_check_max_hours":48,"source_gap_max_business_days":15}}},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"ApiKeyAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"description":"``POST``/``DELETE /v1/monitor/watchlist`` body.","properties":{"corporate_numbers":{"description":"法人番号 / T-numbers to subscribe or unsubscribe (each check-digit validated)","items":{"type":"string"},"title":"Corporate Numbers","type":"array"}},"required":["corporate_numbers"],"title":"MonitorWatchlistRequest","type":"object"},"example":{"corporate_numbers":["T1180301018771"]}}}}},"get":{"tags":["Monitoring (Registry Watch)"],"summary":"List this caller's watchlist","description":"List this caller's watchlist (isolated per caller). Requires ``X-API-Key`` (1.4.0).\nMetered.","operationId":"monitorWatchlistList","parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"401":{"description":"No API key (required on every /v1/monitor/* operation since release 1.4.0 — refused before any body read or metering, nothing was charged), or an unknown, inactive, or expired key.","content":{"application/json":{"example":{"error":"an API key is required on /v1/monitor/* (watchlists and webhooks are per-account state; since release 1.4.0 — before it, anonymous monitor state was keyed on the caller's IP address, which is shared behind NAT and usable cross-origin; see docs/VERSIONING.md, release 1.4.0)","tier":"sandbox","hint":"trial keys are free — see /"},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"429":{"description":"Quota exceeded for the caller's tier.","content":{"application/json":{"example":{"error":"sandbox daily quota exceeded","tier":"sandbox","hint":"see / for pricing; set X-API-Key for higher limits"},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"The register, or an optional feature, is unavailable or not configured on this deployment. A register 503 (since 1.4.1) also carries the mirror's `data_as_of` with the source fields — `source_latest_diff_date` (the newest 差分 the NTA 公表サイト listed when the sync last read it), `source_checked_at`, `source_gap_business_days` and `freshness.rule` (`stale` here) — so a caller can tell a mirror that is behind its source (`data_date` older than `source_latest_diff_date`) from a source that has not published (equal, but `source_checked_at` older than `freshness.source_check_max_hours`); `data_as_of` is null when the mirror is absent. Nothing was charged.","content":{"application/json":{"example":{"error":"register temporarily unavailable (not synced or stale beyond the freshness window)","data_as_of":{"zenken_date":"20260831","last_diff_date":"20260911","synced_at":"2026-09-20T13:27:04+00:00","source":"https://www.invoice-kohyo.nta.go.jp/download/zenken","data_date":"20260911","source_latest_diff_date":"20260911","source_checked_at":"2026-09-20T13:27:03+00:00","source_gap_business_days":6,"freshness":{"rule":"stale","max_age_days":10,"source_check_max_hours":48,"source_gap_max_business_days":15}}},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"ApiKeyAuth":[]}]},"delete":{"tags":["Monitoring (Registry Watch)"],"summary":"Unsubscribe numbers from this caller's watchlist","description":"Unsubscribe numbers from this caller's watchlist. Body:\n``{\"corporate_numbers\": [...]}``. Requires ``X-API-Key`` (1.4.0). Metered.","operationId":"monitorWatchlistUnsubscribe","parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"413":{"description":"Request body over the size cap — refused before it was buffered or parsed; nothing was charged.","content":{"application/json":{"example":{"error":"request body too large (max 65536 bytes)"},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"400":{"description":"Malformed input — refused before metering; nothing was charged.","content":{"application/json":{"example":{"error":"no well-formed numbers — nothing was charged","invalid":[]},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"No API key (required on every /v1/monitor/* operation since release 1.4.0 — refused before any body read or metering, nothing was charged), or an unknown, inactive, or expired key.","content":{"application/json":{"example":{"error":"an API key is required on /v1/monitor/* (watchlists and webhooks are per-account state; since release 1.4.0 — before it, anonymous monitor state was keyed on the caller's IP address, which is shared behind NAT and usable cross-origin; see docs/VERSIONING.md, release 1.4.0)","tier":"sandbox","hint":"trial keys are free — see /"},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"429":{"description":"Quota exceeded for the caller's tier.","content":{"application/json":{"example":{"error":"sandbox daily quota exceeded","tier":"sandbox","hint":"see / for pricing; set X-API-Key for higher limits"},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"The register, or an optional feature, is unavailable or not configured on this deployment. A register 503 (since 1.4.1) also carries the mirror's `data_as_of` with the source fields — `source_latest_diff_date` (the newest 差分 the NTA 公表サイト listed when the sync last read it), `source_checked_at`, `source_gap_business_days` and `freshness.rule` (`stale` here) — so a caller can tell a mirror that is behind its source (`data_date` older than `source_latest_diff_date`) from a source that has not published (equal, but `source_checked_at` older than `freshness.source_check_max_hours`); `data_as_of` is null when the mirror is absent. Nothing was charged.","content":{"application/json":{"example":{"error":"register temporarily unavailable (not synced or stale beyond the freshness window)","data_as_of":{"zenken_date":"20260831","last_diff_date":"20260911","synced_at":"2026-09-20T13:27:04+00:00","source":"https://www.invoice-kohyo.nta.go.jp/download/zenken","data_date":"20260911","source_latest_diff_date":"20260911","source_checked_at":"2026-09-20T13:27:03+00:00","source_gap_business_days":6,"freshness":{"rule":"stale","max_age_days":10,"source_check_max_hours":48,"source_gap_max_business_days":15}}},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"ApiKeyAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"description":"``POST``/``DELETE /v1/monitor/watchlist`` body.","properties":{"corporate_numbers":{"description":"法人番号 / T-numbers to subscribe or unsubscribe (each check-digit validated)","items":{"type":"string"},"title":"Corporate Numbers","type":"array"}},"required":["corporate_numbers"],"title":"MonitorWatchlistRequest","type":"object"},"example":{"corporate_numbers":["T1180301018771"]}}}}}},"/v1/monitor/events":{"get":{"tags":["Monitoring (Registry Watch)"],"summary":"Poll this caller's matched register-change events","description":"POLL delivery path: the caller's matched register-change events since ``since``, plus a\n``next_cursor`` to page forward and each event's Ed25519 ``signature`` (verify offline\nagainst GET /pubkey). Only events touching THIS caller's watchlist are returned — caller A\nnever sees caller B's events (identity is the API key; anonymous use is refused).\nMetered.","operationId":"monitorEvents","parameters":[{"name":"since","in":"query","required":false,"schema":{"type":"integer","description":"cursor: return events with seq > this (0 = from the beginning of this caller's matched events)","default":0,"title":"Since"},"description":"cursor: return events with seq > this (0 = from the beginning of this caller's matched events)"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","description":"max events to return (1..500)","default":100,"title":"Limit"},"description":"max events to return (1..500)"},{"name":"X-API-Key","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Api-Key"}}],"responses":{"200":{"description":"This caller's matched events since the cursor, each Ed25519-signed; the example is the real response on a sample journal (the sample key's signature).","content":{"application/json":{"schema":{},"example":{"count":1,"events":[{"as_of_date":"2026-09-01","corporate_number":"8200012010001","event_id":"deedb07b0e4874765f44bcd6bd1e36af","event_type":"invoice.expiry_scheduled","new":{"expire_date":"2027-04-01"},"old":{"expire_date":null},"severity":"info","source":"invoice","t_number":"T8200012010001","signature":"3a3ec3750dfa3e418b122f28b0a0925c7d75b35bc7ae6157ba4036f2232118dcaa02a4ad677986d33d3fc5705e10a7bdb6fe0ffec4dab401d2ad5a5402b87a01","seq":1}],"cursor":0,"next_cursor":1,"delivery":"poll — pass next_cursor back as ?since= to page forward; a webhook (POST /v1/monitor/webhook) is the push alternative","verify_hint":"each event's `signature` is Ed25519 over the canonical event minus the signature; verify against GET /pubkey","attribution":["出典：国税庁適格請求書発行事業者公表サイト（国税庁）（https://www.invoice-kohyo.nta.go.jp/）を加工して作成"],"data_as_of":{"source":["invoice"],"data_date":"2026-09-01"},"tier":"starter","remaining":4998,"disclaimer":"a faithful mirror of NTA-published data; not tax advice"}}}},"401":{"description":"No API key (required on every /v1/monitor/* operation since release 1.4.0 — refused before any body read or metering, nothing was charged), or an unknown, inactive, or expired key.","content":{"application/json":{"example":{"error":"an API key is required on /v1/monitor/* (watchlists and webhooks are per-account state; since release 1.4.0 — before it, anonymous monitor state was keyed on the caller's IP address, which is shared behind NAT and usable cross-origin; see docs/VERSIONING.md, release 1.4.0)","tier":"sandbox","hint":"trial keys are free — see /"},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"429":{"description":"Quota exceeded for the caller's tier.","content":{"application/json":{"example":{"error":"sandbox daily quota exceeded","tier":"sandbox","hint":"see / for pricing; set X-API-Key for higher limits"},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"The register, or an optional feature, is unavailable or not configured on this deployment. A register 503 (since 1.4.1) also carries the mirror's `data_as_of` with the source fields — `source_latest_diff_date` (the newest 差分 the NTA 公表サイト listed when the sync last read it), `source_checked_at`, `source_gap_business_days` and `freshness.rule` (`stale` here) — so a caller can tell a mirror that is behind its source (`data_date` older than `source_latest_diff_date`) from a source that has not published (equal, but `source_checked_at` older than `freshness.source_check_max_hours`); `data_as_of` is null when the mirror is absent. Nothing was charged.","content":{"application/json":{"example":{"error":"register temporarily unavailable (not synced or stale beyond the freshness window)","data_as_of":{"zenken_date":"20260831","last_diff_date":"20260911","synced_at":"2026-09-20T13:27:04+00:00","source":"https://www.invoice-kohyo.nta.go.jp/download/zenken","data_date":"20260911","source_latest_diff_date":"20260911","source_checked_at":"2026-09-20T13:27:03+00:00","source_gap_business_days":6,"freshness":{"rule":"stale","max_age_days":10,"source_check_max_hours":48,"source_gap_max_business_days":15}}},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"ApiKeyAuth":[]}]}},"/v1/monitor/webhook":{"post":{"tags":["Monitoring (Registry Watch)"],"summary":"Register a delivery webhook","description":"Register a delivery webhook for this caller. Body ``{\"url\": \"https://…\"}``. The URL is\nSSRF-guarded (https only; no private/loopback/link-local/metadata targets) — a bad URL is\nrefused FREE. (Outbound delivery itself is a separate mechanism; this endpoint is CRUD +\nvalidation only.) Requires ``X-API-Key`` (1.4.0). Metered. Opt-in ``Idempotency-Key``\nheader: a retry with the same key + body replays the first response instead of\nre-metering.","operationId":"monitorWebhookSet","parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"413":{"description":"Request body over the size cap — refused before it was buffered or parsed; nothing was charged.","content":{"application/json":{"example":{"error":"request body too large (max 65536 bytes)"},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"400":{"description":"Malformed input — refused before metering; nothing was charged.","content":{"application/json":{"example":{"error":"no well-formed numbers — nothing was charged","invalid":[]},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"No API key (required on every /v1/monitor/* operation since release 1.4.0 — refused before any body read or metering, nothing was charged), or an unknown, inactive, or expired key.","content":{"application/json":{"example":{"error":"an API key is required on /v1/monitor/* (watchlists and webhooks are per-account state; since release 1.4.0 — before it, anonymous monitor state was keyed on the caller's IP address, which is shared behind NAT and usable cross-origin; see docs/VERSIONING.md, release 1.4.0)","tier":"sandbox","hint":"trial keys are free — see /"},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"429":{"description":"Quota exceeded for the caller's tier.","content":{"application/json":{"example":{"error":"sandbox daily quota exceeded","tier":"sandbox","hint":"see / for pricing; set X-API-Key for higher limits"},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"The register, or an optional feature, is unavailable or not configured on this deployment. A register 503 (since 1.4.1) also carries the mirror's `data_as_of` with the source fields — `source_latest_diff_date` (the newest 差分 the NTA 公表サイト listed when the sync last read it), `source_checked_at`, `source_gap_business_days` and `freshness.rule` (`stale` here) — so a caller can tell a mirror that is behind its source (`data_date` older than `source_latest_diff_date`) from a source that has not published (equal, but `source_checked_at` older than `freshness.source_check_max_hours`); `data_as_of` is null when the mirror is absent. Nothing was charged.","content":{"application/json":{"example":{"error":"register temporarily unavailable (not synced or stale beyond the freshness window)","data_as_of":{"zenken_date":"20260831","last_diff_date":"20260911","synced_at":"2026-09-20T13:27:04+00:00","source":"https://www.invoice-kohyo.nta.go.jp/download/zenken","data_date":"20260911","source_latest_diff_date":"20260911","source_checked_at":"2026-09-20T13:27:03+00:00","source_gap_business_days":6,"freshness":{"rule":"stale","max_age_days":10,"source_check_max_hours":48,"source_gap_max_business_days":15}}},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"ApiKeyAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"description":"``POST /v1/monitor/webhook`` body.","properties":{"url":{"description":"https:// delivery endpoint (SSRF-guarded: no private/loopback/link-local/metadata targets)","title":"Url","type":"string"}},"required":["url"],"title":"MonitorWebhookRequest","type":"object"},"example":{"url":"https://example.com/jp-verify/webhook"}}}}},"get":{"tags":["Monitoring (Registry Watch)"],"summary":"This caller's current webhook config","description":"Return this caller's current webhook config (or none). Requires ``X-API-Key``\n(1.4.0). Metered.","operationId":"monitorWebhookGet","parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"401":{"description":"No API key (required on every /v1/monitor/* operation since release 1.4.0 — refused before any body read or metering, nothing was charged), or an unknown, inactive, or expired key.","content":{"application/json":{"example":{"error":"an API key is required on /v1/monitor/* (watchlists and webhooks are per-account state; since release 1.4.0 — before it, anonymous monitor state was keyed on the caller's IP address, which is shared behind NAT and usable cross-origin; see docs/VERSIONING.md, release 1.4.0)","tier":"sandbox","hint":"trial keys are free — see /"},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"429":{"description":"Quota exceeded for the caller's tier.","content":{"application/json":{"example":{"error":"sandbox daily quota exceeded","tier":"sandbox","hint":"see / for pricing; set X-API-Key for higher limits"},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"The register, or an optional feature, is unavailable or not configured on this deployment. A register 503 (since 1.4.1) also carries the mirror's `data_as_of` with the source fields — `source_latest_diff_date` (the newest 差分 the NTA 公表サイト listed when the sync last read it), `source_checked_at`, `source_gap_business_days` and `freshness.rule` (`stale` here) — so a caller can tell a mirror that is behind its source (`data_date` older than `source_latest_diff_date`) from a source that has not published (equal, but `source_checked_at` older than `freshness.source_check_max_hours`); `data_as_of` is null when the mirror is absent. Nothing was charged.","content":{"application/json":{"example":{"error":"register temporarily unavailable (not synced or stale beyond the freshness window)","data_as_of":{"zenken_date":"20260831","last_diff_date":"20260911","synced_at":"2026-09-20T13:27:04+00:00","source":"https://www.invoice-kohyo.nta.go.jp/download/zenken","data_date":"20260911","source_latest_diff_date":"20260911","source_checked_at":"2026-09-20T13:27:03+00:00","source_gap_business_days":6,"freshness":{"rule":"stale","max_age_days":10,"source_check_max_hours":48,"source_gap_max_business_days":15}}},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"ApiKeyAuth":[]}]},"delete":{"tags":["Monitoring (Registry Watch)"],"summary":"Remove this caller's webhook config","description":"Remove this caller's webhook config (the delivery cursor is preserved so a later\nre-register does not re-send already-delivered events). Requires ``X-API-Key`` (1.4.0).\nMetered.","operationId":"monitorWebhookDelete","parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"type":"string","default":"","title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"401":{"description":"No API key (required on every /v1/monitor/* operation since release 1.4.0 — refused before any body read or metering, nothing was charged), or an unknown, inactive, or expired key.","content":{"application/json":{"example":{"error":"an API key is required on /v1/monitor/* (watchlists and webhooks are per-account state; since release 1.4.0 — before it, anonymous monitor state was keyed on the caller's IP address, which is shared behind NAT and usable cross-origin; see docs/VERSIONING.md, release 1.4.0)","tier":"sandbox","hint":"trial keys are free — see /"},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"429":{"description":"Quota exceeded for the caller's tier.","content":{"application/json":{"example":{"error":"sandbox daily quota exceeded","tier":"sandbox","hint":"see / for pricing; set X-API-Key for higher limits"},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"The register, or an optional feature, is unavailable or not configured on this deployment. A register 503 (since 1.4.1) also carries the mirror's `data_as_of` with the source fields — `source_latest_diff_date` (the newest 差分 the NTA 公表サイト listed when the sync last read it), `source_checked_at`, `source_gap_business_days` and `freshness.rule` (`stale` here) — so a caller can tell a mirror that is behind its source (`data_date` older than `source_latest_diff_date`) from a source that has not published (equal, but `source_checked_at` older than `freshness.source_check_max_hours`); `data_as_of` is null when the mirror is absent. Nothing was charged.","content":{"application/json":{"example":{"error":"register temporarily unavailable (not synced or stale beyond the freshness window)","data_as_of":{"zenken_date":"20260831","last_diff_date":"20260911","synced_at":"2026-09-20T13:27:04+00:00","source":"https://www.invoice-kohyo.nta.go.jp/download/zenken","data_date":"20260911","source_latest_diff_date":"20260911","source_checked_at":"2026-09-20T13:27:03+00:00","source_gap_business_days":6,"freshness":{"rule":"stale","max_age_days":10,"source_check_max_hours":48,"source_gap_max_business_days":15}}},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"ApiKeyAuth":[]}]}},"/v1/privacy":{"get":{"tags":["Meta"],"summary":"Privacy & data-handling statement","description":"Public privacy & data-handling statement (names the operator; grounded in the code).\nBrowsers get a styled page; `?format=md` or an Accept: text/markdown client gets the\ncanonical Markdown.","operationId":"privacy","parameters":[{"name":"format","in":"query","required":false,"schema":{"type":"string","description":"'md' returns the raw Markdown; default renders HTML","default":"","title":"Format"},"description":"'md' returns the raw Markdown; default renders HTML"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/legal":{"get":{"tags":["Meta"],"summary":"特定商取引法に基づく表記 (legal notice: operator, prices, payment, cancellation)","description":"Operator identity, prices, payment and cancellation terms as required by Japan's Act on\nSpecified Commercial Transactions (特定商取引法). The Japanese text governs; an English\ncourtesy translation follows it. Served from jpverify/public_docs/TOKUSHO.md — browsers get\na styled page; `?format=md` or an Accept: text/markdown client gets the canonical Markdown.","operationId":"legal","parameters":[{"name":"format","in":"query","required":false,"schema":{"type":"string","description":"'md' returns the raw Markdown; default renders HTML","default":"","title":"Format"},"description":"'md' returns the raw Markdown; default renders HTML"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/terms":{"get":{"tags":["Meta"],"summary":"利用規約 (Terms of Service)","description":"JP-Verify Terms of Service. The Japanese text governs; an English courtesy translation\nfollows it. Served from jpverify/public_docs/TERMS.md — browsers get a styled page;\n`?format=md` or an Accept: text/markdown client gets the canonical Markdown.","operationId":"terms","parameters":[{"name":"format","in":"query","required":false,"schema":{"type":"string","description":"'md' returns the raw Markdown; default renders HTML","default":"","title":"Format"},"description":"'md' returns the raw Markdown; default renders HTML"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/verify-record":{"post":{"tags":["Evidence"],"summary":"Verify a JP-Verify signed record offline-style","operationId":"verifyRecord","requestBody":{"content":{"application/json":{"schema":{"properties":{"signature":{"type":"string","title":"Signature","description":"base64 Ed25519 signature over the canonical payload — verify independently against GET /pubkey"}},"additionalProperties":true,"type":"object","required":["signature"],"title":"VerifyRecordRequest","description":"``POST /v1/verify-record`` body — a JP-Verify ``signed_record`` object (as returned by\n``sign=1`` / ``sign:true``), checked offline-style against the service's published Ed25519\nkey. Loosely typed on purpose: the ``payload`` shape mirrors whichever endpoint produced the\nrecord, so this model only pins down the envelope field every signed record shares."},"example":{"alg":"ed25519","issued_at":1780000000,"issuer":"JP-Verify","kind":"verify","payload":{"...":"the signed payload, endpoint-specific"},"public_key":"base64...","signature":"base64..."}}},"required":true},"responses":{"200":{"description":"Verification result. `kind` (1.6.1): the record type its signature binds (`verify`, `transition_report`, `invoice_check`, `invoice_check_batch`, `shareholders` — open-ended); null for a record issued before 1.6.1 (it has none) or when `valid` is false.","content":{"application/json":{"schema":{},"example":{"valid":true,"issuer":"JP-Verify","kind":"verify"}}}},"413":{"description":"Request body over this route's own size cap (VERIFY_RECORD_MAX_BYTES; it holds a single-number record ≈ 5.9 KB, a JP PINT report 68–72 KB and a signed /v1/verify batch of up to ≈ 104–174 numbers — measured 2026-09-30; a larger signed batch record is verified offline: `signature` against GET /pubkey, or the `jws` sibling against /.well-known/jwks.json) — refused before it was buffered or parsed; the route is free.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"},"example":{"error":"request body too large (max 524288 bytes)"}}}},"400":{"description":"Not a signed record.","content":{"application/json":{"example":{"valid":false,"reason":"not a signed record"}}}}}}}},"components":{"schemas":{"ErrorResponse":{"properties":{"error":{"type":"string","title":"Error","description":"human-readable reason the request was refused"},"tier":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tier","description":"caller's tier, present on a 401 (invalid key) or 429 (quota) refusal"},"hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hint","description":"how to fix the request or get a higher limit"},"invalid":{"anyOf":[{"items":{},"type":"array"},{"type":"null"}],"title":"Invalid","description":"malformed inputs, on a free-400 that names which ones failed"}},"additionalProperties":true,"type":"object","required":["error"],"title":"ErrorResponse","description":"Shared shape of a JP-Verify error body (400 / 401 / 429 / 503). ``error`` is always\npresent; the rest appear only on the error types that carry them — a 429 quota refusal adds\n``tier``/``hint``, a free-400 that rejected some inputs echoes them under ``invalid``."},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}},"securitySchemes":{"ApiKeyAuth":{"type":"apiKey","in":"header","name":"X-API-Key","description":"Starter/Growth/Reseller key. Omit for the anonymous sandbox tier (50 checks/day/IP) — every metered endpoint accepts both, except the seven /v1/monitor/* operations, which require the key since release 1.4.0 (the security exception recorded in docs/VERSIONING.md and summarised in /llms.txt)."}}},"tags":[{"name":"Verification","description":"Verify a supplier's qualified-invoice T-number."},{"name":"Names & Resolution","description":"Alphabet names and name→法人番号 resolution over the houjin-bangou mirror."},{"name":"Monitoring (Registry Watch)","description":"Subscribe to a supplier watchlist and receive signed register-change events (poll or webhook)."},{"name":"Compliance","description":"Transitional-deduction reporting, JP-Verify Invoice Facts (one invoice's register / statutory-item / arithmetic / schedule facts — not tax advice) and advisory sanctions screening."},{"name":"Identifiers","description":"GLEIF LEI ↔ 法人番号 bridge."},{"name":"Evidence","description":"Verify a JP-Verify signed record / JWS offline, against the published key."},{"name":"Meta","description":"Landing page, liveness, and the public documents (privacy statement, 特定商取引法に基づく表記, terms of service)."},{"name":"Disclosure","description":"Facts a corporation publishes in its own statutory securities filings (EDINET 有価証券報告書 / 半期報告書) — currently the 「大株主の状況」 table. Facts as filed, never a determination about control or ownership."}],"servers":[{"url":"https://jp-verify.obolpay.xyz","description":"production"}]}