Learn
TDnet XBRL guide: what to check before you use the numbers
What you will learn
- check_circleDecide the company, document, period, scope and unit first.
- check_circleFrom each number, follow the item definition, the context and the unit.
- check_circleCheck what a correction actually changed, then move on to the API or the hands-on series.
Start by writing down what you want in one sentence
If you want to learn how the system works first, start with the hands-on series. If you already know what you need, go to the API docs. This page covers the basic steps; it is not a guide to building a parser that works for every company.
“I want revenue” still leaves several candidates. “I want the target company's actual consolidated revenue for the current fiscal year” tells you which conditions to select on.
Say that for a fictional company, Aoba Manufacturing, you find ¥10 billion of actual revenue for this year and a ¥11 billion forecast for next year. Both are revenue, but if you want this year's actuals, you choose ¥10 billion. The ¥11 billion is a newer outlook, not a replacement for the actual figure.
| Condition | Example | What you do not want mixed in |
|---|---|---|
| Company | Aoba Manufacturing | A different company with a similar name |
| Document | This year's earnings summary | Forecast revisions or presentation materials |
| Period | April 2025 – March 2026 | A six-month cumulative figure |
| Scope | Consolidated | Non-consolidated or a single segment |
| Type | Actual | Next year's forecast |
| Unit | Yen | Millions of yen used for display |
The company, dates and amounts above are a fictional example. If you cannot write down these conditions yet, check the title and headings of the earnings summary first. When you use an API, having this one sentence ready also reduces mistakes in reading parameters and responses.
Separate TDnet, the earnings summary and XBRL
TDnet is the system that delivers timely disclosures, and the earnings summary (kessan tanshin) is one of the documents it carries. XBRL is a format that links each reported item to its conditions so machines can process it. It helps to keep “system”, “document” and “data format” apart. JPX: TDnet (in Japanese)
A PDF is suited to people reading along its layout. XBRL lets you look up values together with their conditions. But the existence of a PDF does not mean the content you want is tagged in XBRL. Check the scope in JPX's list of XBRL specifications (in Japanese).
The annual securities report on EDINET is another entry point, for the business, risks and detailed financial information. For a comparison of the two systems, see TDnet vs EDINET.
From a number, follow its context and unit
Each number in XBRL points to the information that defines its meaning. The context holds conditions such as the entity and the period; the unit holds the unit definition. Do not choose by tag name alone — read what these references say.
Three references attached to a number
From: an XBRL fact (a number)
Tag name / name
Item definition
Check the namespace and element name
contextRef → context
Entity, period, scope
Read the period, axes and members it points to
unitRef → unit
Unit of the number
Read the measure, and the numerator and denominator if any
| What to check | What to look for first | What to read at the reference |
|---|---|---|
| Item | The tag name, or name in Inline XBRL | The namespace and the item definition |
| Context | contextRef | Entity, period, axes and members |
| Unit | unitRef | measure, and the numerator and denominator if any |
| How to read the number | Attributes that depend on the format | scale, sign, format, nil and so on |
Even when a value is described as “quarterly”, a cumulative figure from the start of the fiscal year to the end of Q2 is different from the latest three months on their own. Do not decide from the tag name; check the context dates and the headings in the document.
After you extract a number, keep the original string, the parsed number and the display unit separate. Converting yen to hundreds of millions of yen is a display step. Do not convert a value that is already back in yen from millions of yen a second time.
When you find a correction, find out what changed
A newer document does not mean you can overwrite every old number. Check forecast revisions, corrections to titles and other information, and corrections to financial figures separately.
The public TDnet API specification distinguishes the disclosure number, the disclosure history number and the handling attribute. These help you trace a disclosure and its history. An attribute that signals a correction does not by itself tell you that revenue in the XBRL changed. JPX: TDnet API connection specification (in Japanese)
| Change found | What to read | What to record |
|---|---|---|
| Revised forecast for next year | The target year and the new forecast | The outlook as of each announcement |
| Correction to the title or similar | The changed items and the history | How the original and later disclosures relate |
| Correction to a past earnings document | The original document and the corrected parts | Which numbers and periods were affected |
A screen that shows today's latest values and an analysis that reproduces what was known on a past date need different records. For the latter, read point-in-time data first, so that corrections learned later are not mixed in as if they had been known at the time.
Choose the data shape that fits your purpose
Besides reading XBRL files yourself, you can get structured data from ZENITH Code. Standardized key items and the line-item hierarchy of a filing serve different purposes.
| What you want to build | API to check | Conditions to read first |
|---|---|---|
| Revenue and profit over time | Income statement | Annual or quarterly, fiscal period, accounting standard, missing values |
| A table with line-item breakdowns | Full financial statements | Parent–child relations, order, fiscal period, value conditions |
financial-facts is the entry point for XBRL data from annual securities reports. Do not choose it as an API that returns every TDnet document as is. Check each endpoint's description for the documents it covers.
This page is about choosing, so it does not show real company values or API responses. When you fetch data, check the parameters and responses in the docs, and first make sure you can explain the meaning of one item for one company and one period.
Try it hands-on with the introductory series
The series below is published by Crabgrass, Inc. on Qiita, in Japanese. It moves from an overview to checking tags.
- TDnet ①: basics of TDnet, earnings summaries and timely disclosure (in Japanese)
- EDINET ①: the role of the annual securities report (in Japanese)
- TDnet ②: PDF and XBRL, contexts and units (in Japanese)
- EDINET ②: tags, structure and presentation hierarchy (in Japanese)
If you want to see which file to open and which strings to search for before running any code, start with TDnet ②.
Read next
- Income statement API: parameters and response
- Full financial statements and hierarchy
- Differences between accounting standards
We at Crabgrass, Inc. build and operate the financial data API ZENITH Code. This article explains how to read the information; it does not recommend buying or selling any financial product.
FAQ
For investors and developers
- If a TDnet PDF exists, can I always get the same content as XBRL?
- Not necessarily the same scope. First check whether the item you want is in the XBRL for that document. Do not assume every chart or passage in the PDF is a single tagged number.
- Can I subtract cumulative quarters to get a single quarter?
- Only after you confirm the conditions match — the same fiscal year, scope, standard and so on. With corrections or a changed period, a simple difference may not be right. See cumulative vs single quarters.
For AI builders and researchers
- If an AI picks the tag name, can I skip checking the period?
- No. Finding candidate items and choosing the value for the period and scope you need are separate steps. When an AI makes the choice, keep the source, the conditions it used and the reason for the choice so you can check them.
Related articles
Disclaimer
This guide explains how the data works and how to use the API. It does not recommend buying or selling any security and is not investment advice. Example values reflect responses at the time of writing and may change with later filings or corrections. Investment decisions are your own responsibility.

