Docs menuexpand_more
Japan market primer
1. Securities codes (symbol)
Listed Japanese equities are identified by a 4-digit securities code assigned by the Tokyo Stock Exchange (e.g. 7203 = Toyota Motor). Companies listed since 2024 may carry a letter, such as 130A. The symbol parameter takes this code as-is.
- check_circleFour digits, or three digits plus a letter (e.g. 7203, 9984, 130A). The letter is case-insensitive.
- check_circleThe .T suffix used by Yahoo Finance and others (7203.T) is accepted and normalised to 7203.
- check_circleISINs are 12 characters starting with JP (e.g. JP3633400001). The API takes securities codes; converting from an ISIN is not supported.
- check_circleEDINET codes (e.g. E02144) identify the filer of a disclosure and are a separate system. A company rarely has more than one securities code, but codes do change on holding-company restructurings and mergers.
- check_circleETFs and REITs use the same 4-digit scheme. Check the isEtf field in responses.
symbol=7203 # Toyota Motor symbol=7203.T # same (suffix stripped) symbol=130A # letter-bearing code (listed 2024+) isin=JP3633400001
2. Fiscal years and quarters (fiscalPeriod / period)
Most Japanese companies close their books on 31 March. December year-ends (foreign-affiliated and some IFRS adopters) and February year-ends (retail) are also common. ZENITH Code identifies a period with two fields: fiscalPeriod (the year and month the row’s period ends, YYYY-MM) and period (Q1 / Q2 / Q3 / FY). There are no fiscalYear or periodEnd fields.
- check_circlefiscalPeriod: "2026-03" with period: "FY" is the year from April 2025 to March 2026 (the fiscal year ended March 2026). fiscalPeriod: "2026-06" with period: "Q1" is Q1 of the fiscal year ending March 2027 (April–June 2026). On quarterly rows, fiscalPeriod is the month the quarter ends, not the fiscal year-end.
- check_circleperiod: Q1 / Q2 / Q3 / FY. Quarterly earnings figures are cumulative from the start of the fiscal year (Q3 = nine months). fiscalPeriodDays gives the length of the cumulative period. Derive single-quarter values by subtracting the previous cumulative figure.
- check_circleQ2 is also called the interim period. Since 2024 the statutory quarterly reports for Q1 and Q3 have been abolished; only the TDnet earnings flash remains for those quarters.
- check_circleResults are announced one to two months after period end (March year-ends cluster in mid-May). The annual securities report follows about three months after period end (late June). Use /earnings-calendar for scheduled dates.
{
"symbol": "7203",
"fiscalPeriod": "2025-12",
"period": "Q3",
"fiscalPeriodDays": 274
}3. Accounting standards and line items (JP GAAP / IFRS / US GAAP)
Japanese companies report under JP GAAP (roughly 80%), IFRS (growing, mostly large caps) or US GAAP (a handful). Check the accountingStandard field. JP GAAP has line items that do not exist elsewhere, which is the single most common source of confusion for international users.
| API field | JP GAAP | IFRS |
|---|---|---|
| ordinaryIncome | Ordinary income (経常利益) = operating income + non-operating income − non-operating expenses (interest, equity-method results, FX gains/losses). The headline profit figure for Japanese investors. | Does not exist; returned as null. Use profitBeforeTax for IFRS reporters. |
| operatingIncome | Operating income: gross profit − SG&A. | A voluntary “operating profit” subtotal. IFRS does not define it, so treatment of other income/expenses varies by company. |
| extraordinaryGains / extraordinaryLosses | Extraordinary gains and losses: fixed-asset disposals, impairments and the like. | Does not exist (IFRS prohibits extraordinary items); null. |
| netIncome | Profit attributable to owners of the parent. | Profit attributable to owners of the parent — same field. |
ZENITH Code returns the filing in its original hierarchy via /full-financial-statement, and normalises key-metrics into common fields that are comparable across standards. When comparing across standards (e.g. ranking by ordinary margin), exclude nulls.
4. TDnet earnings flash vs EDINET annual report
Japanese earnings disclosure happens in two stages: the earnings flash (kessan tanshin, an unaudited summary) published on the TSE's TDnet the day results are announced, and the annual securities report (yuka shoken hokokusho, the audited statutory filing) submitted to the FSA's EDINET about three months later. ZENITH Code parses both and tells you which one a number came from via provenance.
| Aspect | TDnet earnings flash | EDINET annual securities report |
|---|---|---|
| Timing | Announcement day (mostly 15:00–16:30 JST). ZENITH Code reflects it around 16:30 JST the same day. | About three months after period end. There is no quarterly annual report. |
| Audit | Unaudited. May be revised later. | Audited. The statutory final figures. |
| Content | Primary statements, guidance and dividend forecasts. Limited notes. | Every line item and note, segments, workforce, major shareholders, directors, risk factors, MD&A. |
| provenance.source | tdnet | edinet |
"provenance": {
"source": "edinet",
"docId": "S100TXYZ",
"docType": "annual_securities_report",
"filedAt": "2026-06-24",
"url": "https://disclosure2.edinet-fsa.go.jp/..."
}For a given period you first get the flash figures; once the annual report is filed they are replaced by the audited values. provenance carries source, docId and links to the original PDF/XBRL, so every number can be traced to its document. Watch X-Data-Version to detect the replacement.
5. Units and types
All amounts are integer yen — never rounded to thousands or millions. Filings that report in millions of yen are converted to yen before they reach the API.
- check_circleAmounts: integer JPY. Example: revenue of ¥45 trillion = 45095325000000. Treat these as integers, not floats (safe up to 2^53 in JavaScript Number).
- check_circleRatios: decimals between 0 and 1. Example: ROE 8.2% = 0.082, payout ratio 35% = 0.35. Never percentages.
- check_circlePer-share figures (EPS, BPS, dividends): decimal yen. Prices are yen too.
- check_circleShare counts: shares, not trading units. Japanese stocks trade in lots of 100, but the API always reports shares.
- check_circleDates: ISO 8601 (YYYY-MM-DD) in Japan time (JST, UTC+9). Timestamps are ISO strings in UTC.
- check_circleMissing values: null for not-applicable or undisclosed. Distinct from 0.
{
"revenue": 45095325000000,
"ordinaryIncome": 6965085000000,
"roe": 0.082,
"payoutRatio": 0.35,
"eps": 324.11,
"sharesOutstanding": 15794987000,
"fiscalPeriod": "2026-03",
"period": "FY"
}6. TSE 33 sectors (sectorCode)
The Tokyo Stock Exchange classifies listed companies into 33 industry sectors. The sector code is a 4-character string (returned as sector or sectorCode), and sector names come as sectorJa / sectorEn. The same codes are used by the screener, rankings and /stable/available-sectors. They do not map onto GICS, so take care when comparing with international classifications.
| Code | Japanese | English |
|---|---|---|
| 0050 | 水産・農林業 | Fishery, Agriculture & Forestry |
| 1050 | 鉱業 | Mining |
| 2050 | 建設業 | Construction |
| 3050 | 食料品 | Foods |
| 3100 | 繊維製品 | Textiles & Apparels |
| 3150 | パルプ・紙 | Pulp & Paper |
| 3200 | 化学 | Chemicals |
| 3250 | 医薬品 | Pharmaceutical |
| 3300 | 石油・石炭製品 | Oil & Coal Products |
| 3350 | ゴム製品 | Rubber Products |
| 3400 | ガラス・土石製品 | Glass & Ceramics Products |
| 3450 | 鉄鋼 | Iron & Steel |
| 3500 | 非鉄金属 | Nonferrous Metals |
| 3550 | 金属製品 | Metal Products |
| 3600 | 機械 | Machinery |
| 3650 | 電気機器 | Electric Appliances |
| 3700 | 輸送用機器 | Transportation Equipment |
| 3750 | 精密機器 | Precision Instruments |
| 3800 | その他製品 | Other Products |
| 4050 | 電気・ガス業 | Electric Power & Gas |
| 5050 | 陸運業 | Land Transportation |
| 5100 | 海運業 | Marine Transportation |
| 5150 | 空運業 | Air Transportation |
| 5200 | 倉庫・運輸関連業 | Warehousing & Harbor Transportation Services |
| 5250 | 情報・通信業 | Information & Communication |
| 6050 | 卸売業 | Wholesale Trade |
| 6100 | 小売業 | Retail Trade |
| 7050 | 銀行業 | Banks |
| 7100 | 証券、商品先物取引業 | Securities & Commodity Futures |
| 7150 | 保険業 | Insurance |
| 7200 | その他金融業 | Other Financing Business |
| 8050 | 不動産業 | Real Estate |
| 9050 | サービス業 | Services |
Market segment (Prime, Standard, Growth) is a separate axis from sector and is returned in the market field.
Next steps
Issue an API key and check the real data with a single curl command.

