Trading Agent Data
Changelog
Every change to the dataset, the fields, and the API, dated. Schema changes are additive: a new column goes at the end or beside its sibling, and nothing is renamed without an entry here first. See also the methodology and data dictionary.
2026-11-09
Estonia, Sweden, Slovakia and Latvia: small employers' staff costs withheld
- staff_costs is no longer given for a company-period whose filing states fewer than 5 employees, or states no employee count, because with so few staff the figure reveals individuals' pay. This is the rule Belgium has had since its line items were added on 8 November 2026. The count is the one the same filing gives: in Estonia the average in full-time equivalents, in Sweden and Latvia the average number of employees. Slovak statements state no employee count, so Slovak staff costs are given only on a full statement of a company the register places at 10 employees or more, and never on a micro statement.
- Removed: 1,418,359 staff_costs figures in Estonia, 1,211,500 in Sweden, 907,820 in Slovakia and 62,311 in Latvia. The employee counts and every other figure are unchanged. A missing staff_costs in these markets is not a zero. The rule is in /api/v1/fundamentals/dictionary (rule Small employers), and the monthly loads apply it to new filings. The four markets' bulk files were rebuilt without them (files dated 2026-11-08).
2026-11-08
Belgium: detailed line items added
- Belgium: added 23,255,978 filed figures from the annual accounts we already held, for 677,958 companies, in sixteen line items: trade_receivables, inventories, trade_payables, ppe, noncurrent_assets, current_assets, current_liabilities, retained_earnings, depreciation_amortization, interest_expense, land_and_buildings, pension_provisions, cost_of_materials, staff_costs, wages_and_salaries and income_tax. Each is the current-year rubric of the same deposit, with the same deposit date, as the figures we already held. Definitions, the rubric each is read from and the measured share of company-periods are at /api/v1/fundamentals/dictionary. Figures we already held did not change.
- staff_costs, wages_and_salaries and pension_provisions are not given for a company that filed fewer than 5 employees (in full-time equivalents), or that filed no employee count on a micro-model form, because with so few staff these lines reveal individuals' pay. A missing figure there is not a zero.
- Signs are as filed, so income_tax can be negative. wages_and_salaries is on full-model accounts only, and pension_provisions only where the accounts show pensions on a line of their own. Deposits newer than the last weekly load gain their line items with the next weekly run, which now reads them for every new deposit. No calculated figures are added.
2026-11-08
Licence version 2026-11-10: Belgian filings before April 2022 in the Source Conditions Schedule
- New binding licence version 2026-11-10 at /licences, published on 8 November 2026 (the identifiers 2026-11-08 and 2026-11-09 already name versions published on 7 November). It changes only section 3.3 of the Source Conditions Schedule (Belgium): figures for deposits made before 4 April 2022, for which the National Bank of Belgium publishes no structured JSON, are read from the XBRL file the company filed, for the reporting year only; and the NBB states that it keeps its daily archive datasets for three years. The attribution notice and the conditions are unchanged. No other text changed. Subscriptions still move to a new version only under Data Terms clause 27.2, and Snapshots and signed Order Forms stay under the version recorded with them.
- Evaluation Terms version 2026-11-10: new Evaluation Order Forms incorporate licence version 2026-11-10. The special terms are unchanged. Order Forms already signed keep the version recorded with them.
2026-11-08
United States: revenue at the wrong scale corrected
- Data error corrected (Data Terms clause 10.5). Some US filings tag the same revenue figure twice for one period, once at the filing's own scale and once a thousand times larger. For 3 companies our loader took the larger figure: 15 revenue figures (6 annual, 9 quarterly, filed 2018 to 2026) and the 24 annual ratios computed from them (net, gross and operating margin, asset turnover) were a thousand times too large or too small. They now carry the figure at the filing's own scale, with the same filing date. No other figure changed.
- The rule: where a filing tags one revenue figure at two scales, a thousand or a million times apart, the figure at the filing's own scale is kept, judged against that filing's gross profit, operating income or total assets; where the filing gives none of these, the period has no revenue. It is in the US notes on /fundamentals/methodology and applies to every later load.
- Each corrected company-period is listed in the Deletions Feed as a correction. The API serves the corrected figures now; the US bulk file of 2 November 2026 still holds the old ones, and the next US bulk file carries the corrected ones. Revenue for some periods of 2 companies that the same error had left empty is added at the next monthly refresh.
- Known issue: a filer can also tag a single figure at the wrong scale, with nothing in the same filing to compare. Those figures are served as filed. Where a later annual or quarterly report of the company gives the same period's figure about 1,000 or 1,000,000 times larger or smaller, the figure now carries /scale-differs-later at the end of `form`, and so do the ratios computed from it: 232 figures of 50 companies and 24 ratios. No value changed. The flag does not say which filing is wrong; the methodology page (section 4) and /api/v1/fundamentals/dictionary describe it.
2026-11-08
API: metric now narrows the latest view
- GET /api/v1/fundamentals with view=latest ignored metric and returned every metric. It now returns only the metrics named (metric=revenue,net_income,assets returns those three), as the history view always has. Without metric, nothing changes. A metric code we do not hold is left out, as in the history view.
- Each figure is still the company's: on a free key the fiscal year, and for every key the stale flag, are worked out from all of the company's metrics, whatever metric names.
- MCP: get_latest_fundamentals takes an optional metric argument (comma-separated), on the remote server at /api/mcp now and in the npm package from its next release.
2026-11-07
Emissions data: UK ETS, the Netherlands, Australian facility history, and Climate TRACE as modelled estimates
- We now supply, under a signed Order Form that names Emissions Data, four more reported series: the UK ETS compliance report (760 installations and 591 aircraft operators, 2021 to 2025, Source Conditions Schedule 7.21); the Dutch Emissions Authority's EU ETS emissions (487 installations, 2013 to 2020, 7.22); and, under the Clean Energy Regulator (7.5), Safeguard facility data from 2016-17 (346 facilities) and designated generation facility data from 2012-13 (946 facilities), each to 2024-25. This is the day clause 6.2 of that Schedule refers to for them.
- Climate TRACE (8.3) is supplied as Modelled Data only: estimates by asset and month for 33,663 assets in 198 countries and territories, 2021 to 2026, in their own file and marked layer modelled. They are not reports by any company or site and are not counted as an official source.
- Reported emissions now come from 18 official sources (16 before), about 1.53 million reported values. The Australian market-based file is unchanged; the 2024-25 Safeguard and generation rows that were in the same delivery file are now supplied once, in their own series.
- Emissions Data is still not a market. Our market and entity totals do not change, and nothing in the company data changed.
2026-11-07
Licence version 2026-11-09: new emissions sources in the Source Conditions Schedule
- New binding licence version 2026-11-09 at /licences, published on 7 November 2026 (the identifier 2026-11-08 already names the version published earlier that day). It changes only the Source Conditions Schedule: section 7.5 (Australia, Clean Energy Regulator) now names the Safeguard and designated generation facility series, and new sections 7.21 (UK ETS), 7.22 (Netherlands) and 8.3 (Climate TRACE, modelled) give each source's licence, attribution notice and conditions. No other text changed. Subscriptions still move to a new version only under Data Terms clause 27.2, and Snapshots and signed Order Forms stay under the version recorded with them.
- Evaluation Terms version 2026-11-09: new Evaluation Order Forms incorporate licence version 2026-11-09. The special terms are unchanged. Order Forms already signed keep the version recorded with them.
2026-11-07
Licence version 2026-11-08: an annual licence for a college or campus
- New binding licence version 2026-11-08 at /licences, published on 7 November 2026 (the identifier 2026-11-07 already names the version of 5 November). It adds one document, the Academic Institution Licence: an annual licence for the staff and enrolled students of one college, faculty or school, or a whole teaching university (US$4,900 a year), or of one campus of a research university (US$9,800 a year), for non-commercial research and teaching. It gives the bulk files of every market and up to 5 or 15 API keys at the Commercial rate limit, with one company limit across the keys. It is sold by signed Order Form and invoice only and renews only when the next year's invoice is accepted. The Snapshot Schedule gains one sentence pointing a whole university, campus, college or faculty to it (clause 6.2), and the Order Form template gains its rows, list prices and declaration 6.6A. No other text changed. The Academic Snapshot is unchanged. Subscriptions still move to a new version only under Data Terms clause 27.2, and Snapshots and signed Order Forms stay under the version recorded with them.
- API: an Academic Institution Licence key reads every market at full depth at 1,000 requests a minute, with the bulk files; its keys share one limit of 10,000 different companies in any 30 days. The rate table on /developers lists it.
- Evaluation Terms version 2026-11-08: new Evaluation Order Forms incorporate licence version 2026-11-08, whose Order Form template has the Academic Institution Licence rows. The special terms are unchanged. Order Forms already signed keep the version recorded with them.
2026-11-05
Licence version 2026-11-07: terms for a single company report and filing alerts
- New binding licence version 2026-11-07 at /licences. It adds one document, the Company Report and Filing Alerts Schedule, and changes no other text. The company report is one company's filed history, bought once. Filing alerts are a monthly subscription that emails you when a company you watch has a new filing. Both state facts only and cover neither France, Sweden nor Australia. Subscriptions still move to a new version only under Data Terms clause 27.2, and Snapshots and signed Order Forms stay under the version recorded with them.
- Evaluation Terms version 2026-11-07: new Evaluation Order Forms incorporate licence version 2026-11-07. Order Forms already signed keep the version recorded with them.
2026-11-05
Spreadsheets: formulas in Google Sheets and Excel
- An add-on for Google Sheets and an add-in for Excel pull filed figures into a cell with the user's own key: =PIT("2330.TW","revenue",2024) and =PIT_HISTORY("2330.TW","revenue",5); in Excel, =TA.PIT and =TA.PIT_HISTORY. Each keeps the source notices for the markets used in a Sources tab. They call the existing API; no field changed. Install: /developers/spreadsheets.
2026-11-05
Emissions data: API, by signed Order Form
- GET /api/v1/emissions/{id}?id_type=siren returns every row we hold for one company number or site ID, as filed: source, layer, year, Scope only where the source gives it, unit as filed, flags and the full attribution notice. Filters: source, layer, year, scope. POST /api/v1/emissions/match says which of up to 1,000 IDs we hold, and how many rows. This replaces the line in the entry below that it has no API.
- A key reads it only under a signed Order Form that names Emissions Data, and only the layers and sources named there (Data Terms clause 5.1A). No key has it by default, and free and demo keys never do. Modelled rows come only when asked for, on their own. Reference: /developers#emissions; OpenAPI: /openapi/emissions.json.
- No market, field or endpoint of the company data changed. Emissions Data is still not a market and is not in its bulk files.
2026-11-05
Emissions data: on sale, by signed Order Form
- We now supply Emissions Data (Source Conditions Schedule, Parts 6 to 9) under a signed Order Form that names it, as files. This is the day clause 6.2 of that Schedule refers to. It covers the reported, related and modelled sources in Parts 7 and 8, except Part 7.4 (Japan), which we do not yet supply. See /emissions.
- Emissions Data is not a market. Our market and entity totals do not change. It has no API, and it is not in the bulk files.
- Rows left out of the delivery files: 468 marked excluded_from_sale (clause 6.6), and 54,685 where a name was read as, or could not be told apart from, that of a natural person (clause 6.7). Those names were read by a language model with a second model checking the doubtful ones, and we read samples; this can miss a record and can remove a company in error (Data Terms clause 11.8). Figures in the rows supplied are not changed.
2026-11-05
Japan: detailed line items added
- Japan: added 635,738 filed figures from the primary financial statements of the annual securities reports we already held, for 4,958 companies, in thirteen line items: trade_receivables, trade_and_other_receivables, inventories, trade_payables, trade_and_other_payables, ppe, noncurrent_assets, current_assets, current_liabilities, retained_earnings, depreciation_amortization, interest_expense and capex. Each carries its report's filing date and the group or parent basis. Definitions, the element each is read from and the measured share of company-periods are at /api/v1/fundamentals/dictionary. Figures we already held did not change.
- Signs are as filed: capex is negative. Lines follow the accounting standard of the report's own summary. A group reporting under US GAAP tags no statements, so it has no group lines here, only its parent's. Japanese-GAAP balance sheets often list inventories by kind with no total, and those are not added up, so inventories is present only where the report states the total.
- 162 reports of September and October 2016 gain nothing, because EDINET no longer serves them. Where a company changed its year end, a fiscal-year label served from one period does not take lines from the other. New reports carry their line items from the next weekly run. No calculated figures are added.
2026-11-05
Latvia: detailed line items added
- Latvia: added 1,764,502 filed figures from the register's annual-report files for 132,864 companies, in six line items: trade_and_other_receivables, inventories, ppe, noncurrent_assets, depreciation_amortization and interest_expense. Definitions, the column each is read from and the measured share of company-periods are at /api/v1/fundamentals/dictionary. Figures we already held did not change.
- The register's file writes 0 where a report has no line, so a zero cannot be told from a line not reported. A line item of zero is left out, so a missing figure can mean zero or not reported.
- trade_and_other_receivables is all debtors, and can hold other receivables and prepaid expenses. ppe is the total of the form's fixed-assets section, and can hold investment property and right-of-use assets. depreciation_amortization is the form's value adjustments, so it includes impairment, and only a by-nature income statement has it. No calculated figures are added. Reports newer than the last monthly load gain their line items with the next one.
2026-11-05
Australia: official income figures for large entities added
- Australia: added official income figures for about 6,600 large entities from the Australian Taxation Office's Corporate Tax Transparency reports (total income, taxable income and tax payable, 2013-14 to 2024-25), keyed by ABN. These are tax figures, not accounts. Each is dated by when the ATO's file was public, not by a filing date. Australia does not count as one of the 12 markets, and our market and entity totals do not change.
2026-11-05
Licence version 2026-11-06: new versions of the Free Licence take effect when published
- New binding licence version 2026-11-06 at /licences. It changes only clause 6.3 of the Free Licence Schedule: a new version takes effect when we publish it and applies to Free Data obtained after that. We list each new version here and no longer email free-key holders about it. Free Data you obtained earlier stays under the version in force when you obtained it. Subscriptions still move to a new version only under Data Terms clause 27.2, and Snapshots and signed Order Forms stay under the version recorded with them. The 2026-11-05 texts remain readable at their permanent addresses.
- Evaluation Terms version 2026-11-06: new Evaluation Order Forms incorporate licence version 2026-11-06. Order Forms already signed keep the version recorded with them.
2026-11-05
Licence version 2026-11-05: emissions data sections, a company limit, and corrected wording
- New binding licence version 2026-11-05 at /licences: the Data Terms, the Source Conditions Schedule, the Free, Personal, Commercial, Redistribution, OEM and Snapshot Schedules, and the Order Form. New orders, new free keys and new Evaluation Order Forms use it from today. A subscription moves to it from its first renewal at least 30 days after we email notice of it (Data Terms clause 27.2). For the free service it applies to Free Data obtained from 19 November 2026 and, for a free key, not earlier than 30 days after we email its holder (Free Licence clause 6.3). Snapshots and signed Order Forms stay under the version recorded with them. The 2026-11-03 texts remain readable at their permanent addresses.
- Emissions data: the documents now describe a separate set of reported and modelled emissions data from public sources. It is not part of the free tier, and is supplied only under a signed Order Form that names it. We have not started supplying it; this changelog will record the day we do.
- Personal and Commercial Schedules: clause 5.1A adds a limit of 10,000 different companies at full history in any 30 days. Other companies give their most recent fiscal year. For a whole market, see the Snapshot Licence.
- New Zealand charities: the documents and the source notice now say that a return amended after we first stored it stays as stored. The dating issue they listed was corrected on 2 November 2026.
- Estonia: the documents now say which zeros are left out. Total assets, total liabilities and equity stated as zero are left out; a subtotal stated as zero may be given.
- Latvia and Japan: the documents now say that the data can include more lines of a company's statements as well as its totals and summary figures. We have not started supplying these lines; this changelog will record the day we do.
- Taiwan: we corrected how the Source Conditions Schedule describes the Taiwan Stock Exchange's letter. The conditions on the data are unchanged.
- Data Terms: new definitions and terms for public bodies. Snapshot Schedule: new terms for co-authors, referees and replication packages. The clauses on our liability are unchanged.
- Evaluation Terms version 2026-11-05: new Evaluation Order Forms incorporate licence version 2026-11-05. Order Forms already signed keep the version recorded with them.
2026-11-05
Slovakia and Estonia: detailed line items added
- Slovakia: added 6,912,874 filed figures from the register's statements for 333,083 companies, in seven line items: noncurrent_assets, ppe, inventories, trade_receivables, trade_payables, depreciation_amortization and interest_expense. Estonia: added 1,543,574 figures from the register's key-figure file for 196,753 companies, in two: noncurrent_assets and depreciation_amortization. The file holds no other line of this kind. Definitions, the filed line each is read from and the measured share of company-periods are at /api/v1/fundamentals/dictionary. Figures we already held did not change.
- Signs are as filed. Estonian depreciation is an expense and so negative. In Slovakia about 1.5% of trade receivables and 2.6% of trade payables are negative as filed, mostly micro entities' payables. Slovak trade receivables and payables are the short-term lines only.
- Slovak depreciation includes impairment allowances on the full and micro models and is depreciation alone on the non-profit model. Estonian depreciation includes impairment and its reversal. Slovak assets also hold accruals on the full and non-profit models, so current plus non-current assets can be below total assets.
- An Estonian non-current assets figure filed as zero is left out, as balance-sheet totals of zero are, so a missing figure can mean zero or not reported. No calculated figures are added for either market.
2026-11-05
Taiwan: detailed line items added
- Taiwan: added 872,307 filed figures from the XBRL archive for 2,705 companies, in eleven line items: trade_receivables, inventories, trade_payables, ppe, noncurrent_assets, current_assets, current_liabilities, retained_earnings, interest_expense, cash_flow_operating and capex. Definitions, the filed line each is read from and the measured share of company-periods are at /api/v1/fundamentals/dictionary. Figures we already held did not change.
- Signs are as filed: Taiwan capex is negative. Depreciation and amortisation are two separate lines in Taiwan, so we serve no combined figure and no EBITDA.
- Free cash flow, working capital and current ratio are now calculated on read for Taiwan with `form` derived, only where every input comes from one filing. They are not in bulk files. A new quarter has no line items until its archive has been read.
2026-11-03
Licence version 2026-11-03: Australian income tax figures named in the documents
- New binding licence version 2026-11-03 at /licences: the Data Terms, the Source Conditions Schedule, the Free, Personal, Commercial, Redistribution, OEM and Snapshot Schedules, and the Order Form. New orders, new free keys and new Evaluation Order Forms use it from today. A subscription moves to it from its first renewal at least 30 days after we email notice of it (Data Terms clause 27.2). For the free service it applies to Free Data obtained from 17 November 2026 and, for a free key, not earlier than 30 days after we email its holder (Free Licence clause 6.3). Snapshots and signed Order Forms stay under the version recorded with them. The 2026-11-01 texts remain readable at their permanent addresses.
- Australia: the documents now cover three income tax figures for large Australian entities, from the Australian Taxation Office. These are not accounts and not revenue. They are licensed to you directly by the Australian Taxation Office under CC BY 3.0 AU. We have not started supplying them; this changelog will record the day we do. Our market and entity totals do not change.
- OEM Schedule: clause 5.1 now says clause 6.6 on open-licence data applies to all such data, not only to New Zealand charities. Liability is unchanged.
- Evaluation Terms version 2026-11-03: new Evaluation Order Forms incorporate licence version 2026-11-03. Order Forms already signed keep the version recorded with them.
2026-11-03
Japan: group revenue and US GAAP groups corrected
- Japan: added 4,428 figures from the annual securities reports we already held, with their original filing dates, which we had not read: 1,666 group revenue, 1,583 parent revenue, 328 operating income and 851 other group figures, in 2,461 filings of 346 companies. Group revenue is now present for banks, insurers and other filers that state it under a different line, and groups reporting under US GAAP now have group figures (form `annual/usgaap`). Figures we already held did not change.
- An `as_of` query on an earlier date now returns these figures where their filing date is on or before it. In some Japanese companies the group's revenue replaces the parent's in the latest view, and net margin and asset turnover change with it.
2026-11-03
API: company.basis now says the basis of the figures in the response
- New Zealand: `company.source.url` was built from the issuer id and landed on the register's search or error page. It now opens the charity's own page. `company.source.id` is unchanged.
- `company.basis` was the basis of the first row we store for the company, so a company filing both could say solo above consolidated figures. It is now the basis the figures in that response share, and null where they differ or there are none, in which case each figure's own `basis` is the answer. Null was already a possible value. Figures are unchanged. Every row still carries its own `basis`, which is what to read for one figure.
2026-11-03
Taiwan: 45 objects removed
- Taiwan: removed 45 objects that should not have been served, listed in the Deletions Feed as corrections. 43 were left from an earlier load and showed half-year income as Q2 2026 for companies that file individual statements; our Taiwan data does not yet include those companies' figures. Two were MOPS test codes holding other companies' filings. Taiwan now counts 2,706 entities.
2026-11-03
Free keys: the metric filter stays inside the most recent fiscal year
- On a free or demo key, a query with `metric` for a company outside the sample could answer with the last year that had that metric, however old, when the company's most recent fiscal year did not report it. It now answers with no rows, as the free tier describes: the most recent fiscal year each company reported.
2026-11-02
New Zealand charities: dates corrected
- Dating error corrected (Data Terms clause 10.5), disclosed on the methodology page since 2026-10-19. `filed` is now the New Zealand calendar date of the register's record date; about 600,000 rows (26%) had carried its UTC date, one day early. Each corrected date moved one day later, never earlier.
- 9 company-periods the register no longer holds under those year ends were removed and listed as action `withdrawn`. One charity, CC58573, lost all its periods this way; the register now holds its three returns under a 30 June year end, so they are served under those year ends, dated by the register's record date of 6 October 2026.
- Refreshed from the register: 42,121 rows added, among them 284 charities new to the data, for 27,407 in all. Figures already held did not change: a later amendment to a return does not replace them. 3 new periods whose year label would have displaced a period we hold were left out. New Zealand charities now refresh monthly.
- The New Zealand bulk file and the public sample were rebuilt from the corrected data, and the known-issue note beside New Zealand has been removed.
2026-11-02
`as_of` no longer shows a later activity code or address; documentation corrected
- `activity_code` and `address`: llms.txt said they were empty, the private-companies page said they were not included, and the sample page said France only. None of these matched the API. `activity_code` is filled for France (APE/NAF), Sweden (SNI), Estonia (EMTAK) and Slovakia (SK NACE), and is empty for Belgium, Denmark, Latvia and the other markets. `address` is filled for France, Sweden, Estonia, Slovakia and Latvia. Some companies in these markets have no value. The data did not change.
- With `as_of`, `company.activity_code` and `company.address` are now given only where their date is known to be on or before that day. Sweden's code appears from SCB's file date and Estonia's is that of the latest report filed by then; France's and Slovakia's codes and every address have no known date and are null. Until now the block showed the latest value on every query. `company.name` stays the name we hold today. A query without `as_of` is unchanged.
- The field's limit is now stated wherever it is described, and in the API's schema: the code describes the legal entity, not its group, so a French group's parent can carry the head-office code 7010Z.
- French start date: llms.txt, the private-companies page and two package READMEs said 2017, the methodology said 2012, the research page said substantially complete from 2017, and the MCP server's description said complete from 2022. Counted over the French file of 21 October 2026: about 700 of 6.2 million filings are dated before 2017, the first in December 2012. All these places, and the home page, now say filing dates from 2017, and accounts for older fiscal years may carry a 2017 or later date.
- Corrected: Korea's first year on the home page is 2016, not 2015, and the Swedish example ID in the developer reference and methodology now returns data.
2026-11-01
Licence version 2026-11-01: French condition narrowed; simpler OEM paperwork
- New binding licence version 2026-11-01 at /licences: the Data Terms, the Source Conditions Schedule, the Free, Personal, Commercial, Redistribution, OEM and Snapshot Schedules, and the Order Form. New orders, new free keys and new Evaluation Order Forms use it from today. A subscription moves to it from its first renewal at least 30 days after we email notice of it (Data Terms clause 27.2). For the free service it applies to Free Data obtained from 15 November 2026 and, for a free key, not earlier than 30 days after we email its holder (Free Licence clause 6.3). Snapshots and signed Order Forms stay under the version recorded with them. The 2026-10-29 texts remain readable at their permanent addresses.
- French data: our own condition still forbids searches or filters by the disqualification, sanction or criminal status of any person, or by the insolvency of a natural person, including a sole trader. A company's own insolvency proceedings, cessation or striking-off may now be used to select, filter or label its data, for example as a research sample or a model label. Article A.123-69 of the French Code de commerce applies as before.
- OEM Schedule: partners may use our published standard Customer and End User terms instead of writing their own; the routine check is a yearly self-certification, and we audit only on reasonable grounds of a breach; deletions may be handled by automated pulls of the Deletions Feed. Liability is unchanged.
- Evaluation Terms version 2026-11-01: new Evaluation Order Forms incorporate licence version 2026-11-01. Order Forms already signed keep the version recorded with them.
2026-11-01
New market: Slovakia
- Slovakia: structured financial statements of about 372,000 companies and other legal persons from the Register of Financial Statements (Register účtovných závierok, RÚZ), financial years from 2019. `filed` is the later of the statement's filing date and the last day the register changed the report holding the figures, so a figure is never dated before its filing, and usually a day or so after it.
- Not included (known issues, stated on the methodology page): statements filed only as a PDF, among them those of many of the largest companies and the banks; statements of banks, insurers, funds and public bodies; single-entry statements. Natural persons who are entrepreneurs are never included.
- Search, the API (market SK), the attribution notices, the methodology and the developer reference include it. The data now comes from twelve official sources.
2026-10-29
New markets: Estonia, Sweden and Latvia
- Estonia: annual reports of about 330,000 companies, associations and foundations from the e-Business Register (RIK) open data, financial years from 2019, each figure dated by the date the register records the report as submitted. Licensed to you directly by RIK under Creative Commons Attribution 4.0. About 1,900 reports, many of them consolidated, are not included, because the register enters their key figures by hand after the report is submitted.
- Sweden: digitally submitted annual reports of about 585,000 companies from Bolagsverket, from 2020. `filed` is the Sunday ending the week in which Bolagsverket's bulk file places the report, a proxy for its registration date, expected not to be earlier and up to six days later; not yet compared report by report (known issue).
- Latvia: annual-report figures of about 149,000 companies from the Register of Enterprises, financial periods ending 2020 or later. The files state no filing date, so `filed` is a proxy: the date the register created its record of the report, never earlier than that record.
- Search, the API (markets EE, SE and LV), the attribution notices, the methodology and the developer reference include them. Slovakia is described in the Source Conditions Schedule and follows once its data is loaded.
2026-10-29
Licence version 2026-10-29: Estonia, Sweden, Slovakia and Latvia in the Source Conditions
- New binding licence version 2026-10-29 at /licences: the Data Terms, the Source Conditions Schedule, the Free, Personal, Commercial, Redistribution, OEM and Snapshot Schedules, and the Order Form. New orders, new free keys and new Evaluation Order Forms use it from today. A subscription moves to it from its first renewal at least 30 days after we email notice of it (Data Terms clause 27.2). For the free service it applies to Free Data obtained from 12 November 2026 and, for a free key, not earlier than 30 days after we email its holder (Free Licence clause 6.3). Snapshots and signed Order Forms stay under the version recorded with them. The 2026-10-04 texts remain readable at their permanent addresses.
- The Source Conditions Schedule adds Estonia (Creative Commons Attribution 4.0), Sweden, Slovakia and Latvia (CC0 1.0), each from the day we first supply its data (clause 1.8). Estonian data, like New Zealand charities data, is Directly Licensed Data: its register licenses it to you directly, and nothing in your licence restricts what that open licence permits. For Swedish, Slovak and Latvian data, the data as you obtain it from the register is unrestricted, and the copy we deliver is supplied under your licence.
- Clauses 10.1 and 10.6 now say what the data holds: for each entity, metric, period and basis, one figure, from the earliest filing we read; a later correction or restatement is not stored beside it. Denmark's and Korea's sections describe the corrected data, and Latvia's filing date is stated as a proxy rule.
- Evaluation Terms version 2026-10-29: new Evaluation Order Forms incorporate licence version 2026-10-29. Order Forms already signed keep the version recorded with them.
2026-10-29
Denmark: equity checked against each filing's balance sheet
- Correction of our own reading (Data Terms clause 10.5). Some Danish filings tag a part of equity as Equity. Dades A/S (CVR 10432928) tags its share capital, 575,000,000 at 2023-12-31 and 2024-12-31 and 580,000,000 at 2022-12-31, while its 2024 report shows total equity of 9,130,000,000. We served those figures as equity, and liabilities computed from them as assets minus equity (25,902,000,000 at 2024-12-31), so debt_to_equity and roe for those years were wrong too. The issue had been disclosed on the methodology page since 2026-10-20.
- Equity is now left out, and no liabilities are computed from it, where the filing itself shows that the figure is not its total equity: it is larger than the filing's balance-sheet total and no negative liabilities line explains that; it equals the share capital the filing tags while the filing's other equity lines are not zero and do not add up to it; the balance sheet adds up with another figure the filing tags instead, including the sum of its own capital, retained earnings and reserves; it stands beside a larger equity figure the filing tags for the same date; it repeats the filing's own figure for the year before while the balance sheet contradicts it; or the filing tags two different equity figures and its balance sheet confirms neither. Where a filing tags two equity figures and its balance sheet adds up with exactly one, that one is used. Equity and liabilities are also left out where the filing's own figures show them to be in another scale than its assets (a balance sheet in two scales whose asset lines confirm the assets, a current-year column a thousand times the filing's own comparative column, or a thousands separator read as a decimal point).
- Liabilities are no longer computed as assets minus equity where the liabilities totals the filing states contradict the equity figure by more than 0.5%, also where the equity equals the sum of its own tagged lines in a Danish GAAP filing whose liabilities total is complete. An IFRS liabilities total is served only where it adds up with equity to the balance-sheet total: it is left out where the balance sheet adds up only with liabilities presented beside it (held for sale, deferred tax, provisions, subordinated capital or insurance provisions), or not at all; where it equals the balance-sheet total; where the stated total is not the assets; where it is a thousandth or a thousand times the figure the balance sheet adds up with; or where the filing's current and non-current totals contradict it. IFRS equity may be the owners' share where a filing presents a non-controlling interest outside equity; where the filing shows that, no liabilities are computed from it. Equity is never rebuilt from its parts, and a figure is never rescaled.
- 5,334 company-periods changed: 410 equity figures left out, 83 replaced by the figure the balance sheet confirms, 758 liabilities figures left out or no longer computed. These are corrections of our own reading.
- Separately, as a policy and not a correction, liabilities are no longer computed as assets minus equity where the result would be below zero, even where the filing's own negative liabilities lines give that figure: 4,333 figures.
- Also separately, equity and liabilities are withheld, without our having verified them, for 483 company-periods whose assets and equity are about a thousand or a million times below the company's filings on either side (or, for its latest period, below the previous one), unless the filing's own comparative column gives the previous filing's figures, or that far above the filings on either side, except where we have checked the figure against the filing's own text: the neighbouring filings put their scale in doubt, they do not show them wrong, and they are not corrections of our reading.
- Each corrected period is listed in the Deletions Feed as action `correction`; anyone holding a copy must delete the listed records within 30 days of listing, as the Data Terms require.
2026-10-29
Denmark: filing dates corrected, 2012 reports added, every report read again
- Dating error corrected (Data Terms clause 10.5). Until 10 April 2015 the Danish register recorded each publication as a date only, stored as midnight Copenhagen time, and our crawler took the UTC date of that stamp. Every Danish report published up to that day, and any later one published between midnight and 01:00 Copenhagen time (02:00 in summer), was dated one day early: about 3.1 million rows, 11.6% of the Danish data. `filed` is now the Copenhagen calendar date of publication for every Danish report. Each corrected date moved one day later, never earlier. The stored dates were corrected on 2026-10-29; the error had been disclosed on the methodology page since 2026-10-19.
- 2012 added. The register's XBRL filings begin in June 2012; earlier reports are scans or PDFs. 51,030 company-periods were added, published from June 2012 to 1 January 2013 (46 of them on 1 January 2013, which had been missed), among them the first for 2,685 companies not in the data before. Danish coverage now starts in June 2012.
- 186 company-periods first published in 2012 (about 1,250 rows) had been served from a later re-publication. Each was replaced whole by its 2012 original; where that original is a blank form (every figure 0, while the later re-publication states the figures), the period now has no rows. The replaced rows are listed at /api/v1/fundamentals/deletions as action `correction`. Subscription and Free Licence holders must delete the listed records within 30 days of listing, that is by 2026-11-27 (Data Terms clause 11.3).
- Every Danish report was read again with a corrected parser, and each company-period was replaced whole by the new reading, except 4,141 periods whose new reading failed the wrong-unit check (a thousand or a million times off the company's other years); those keep their earlier reading. In 837,145 re-read periods the figures changed; those are corrections of our own reading, made in place (they are not listed in the Deletions Feed). `GrossResult` is read as gross_profit where a filing tags only that (about 22% of filings). Filings from accounting software that exports equity, liabilities and profit as negative numbers now carry the usual signs where the filing proves it (its own balance sheet, or its negative share capital and liabilities); a few filings whose signs nothing in them proves are served as tagged. Net profit is read from the income statement rather than from the profit-distribution note. IFRS reports tagged in the 2011 IFRS taxonomy, filings that write their currency as ISO4217:DKK, and IFRS reports that tag only the separate (parent-company) statements (now labelled `annual/ifrs/separate`) are read; they had no rows. One program's XBRL layout, which had parsed to nothing (about 6% of 2013–2014 filings), is now read. Where a filing states a figure twice, the unrounded one is used; where it states two different equity figures or operating-income lines, the one its own balance sheet or income statement confirms. A share-capital figure tagged as equity is no longer served as equity where the filing's own figures show it to be only part of equity, in Danish GAAP and IFRS reports (1,577 periods in this re-read; the check in the entry above covers the rest); where the filing's balance sheet adds up with it, it is still served, and counted as not confirmed where the year's result is missing from it. A revenue tagged with the opposite sign is turned where the filing's own operating lines prove it. A period read from a group report or a country-by-country report published before the annual report is now read from the annual report; for two of them the replaced rows were dated before the group report's own document existed. A filing that tags every figure as 0 yields no rows only where it is shown to be a blank form; a dormant company's all-zero year keeps its zeros.
- `form` labels: `/liquidation` marks accounts drawn up in liquidation (the accounts of the year the liquidation begins, and the final report); `/correction` marks a period the register holds only as a corrected report; `/same-as-adjacent`, always last, marks both of two adjacent annual periods whose figures are identical; they are served as filed. Every Danish row read in the refresh carries `src`, the register's id for the publication.
- Removed and listed as action `correction`: 14,278 company-periods whose filing yields no figures any more, most of them blank forms; 4 periods that had been read from a group or country-by-country report instead of the annual report; and 5 records that a weekly update had added to a period from a later report, so that every period now comes from one report.
- One company whose reports the register no longer holds was removed and listed as action `withdrawn`.
- The corrected Danish data is in the API and in the Danish bulk file built after the correction. Holders of an earlier Danish file or Snapshot receive the corrected data at no charge (Data Terms clause 10.5).
2026-10-23
Korea: reloaded from DART; each year dated by its original annual report, with that report's figures
- Dating error corrected (Data Terms clause 10.5). A company that cannot file its annual report (사업보고서) on time first files a deadline-extension notice (사업보고서제출기한연장신고서), which holds no financial statements, and files the report later. Our loader had dated such a year by the notice, so its figures carried a date before the report was filed; the methodology page listed this as a known issue from 20 October 2026. Every Korean year is now dated by its original annual report: the later of the report's DART receipt date and the date in its receipt number. 215 company-years moved to their report's date, 3 to 212 days later (median 15 days), and 10 more moved 1 to 3 days later to the date in the receipt number. None moved earlier. For example, 삼부토건 (001470.KS) FY2025 moved from 2026-03-23, its notice, to 2026-04-07, its report.
- Figures as the original report filed them. OpenDART's statement API returns the latest version of a report, so where a report had been corrected ([기재정정]) we served the correction's figures under the original report's date. For a corrected report the original filing's XBRL is now read instead: 3,288 figures in 723 company-years (420 companies) changed to the original's. For example, DH오토넥스 (000300.KS) FY2024 total assets are 69,586,035,922, as filed on 2025-04-01, not the 66,061,636,175 of the 2026-06-19 correction. 69 figures that cannot be identified in the original's XBRL are no longer served, rather than taken from the correction. Every Korean row now carries the original report's receipt number in `src`.
- Income-statement figures are now taken only from the income statement and balance-sheet figures only from the balance sheet. 10 figures that had come from another statement changed value, and 169 were removed where the report has no such line in that statement.
- Period ends: 176 company-years now carry their report's own period end. 60 had been served under a period end later than their filing date (a June or March year end labelled 31 December), 7 under another month's end, and 94 March and August year ends were dated the 30th instead of the 31st. Where a company has two annual periods ending in one calendar year (a change of year end, or a fund that reports every six months), the year now carries the later one: 15 company-years changed period this way.
- Where DART lists a year's report only as an attachment addition ([첨부추가]), that filing is the original report, with an attachment added later under the same receipt, and it is read as the original: 213 company-years, of which 194 are unchanged, 3 are dated later (the report rather than a deadline-extension notice) and 16 now carry the original's figures instead of a later correction's.
- 55 company-years are no longer served: their report was amended and the original has no XBRL file. A year is left out rather than served with another filing's figures or date. 10 company-years were added. Korean coverage after the reload: 2,239 companies and 257,496 rows (258,705 before).
- Korea can be bought on its own again as a single-market Snapshot, and the known-issue note beside Korea on the sales pages, the developer pages and Korean company pages has been removed. The Korean bulk file and the public sample were rebuilt from the reloaded data, and the sample has Korean rows again.
2026-10-15
US: each figure from the earliest filing that reports it; debt_to_equity is liabilities ÷ equity from one balance sheet; derived liabilities; each year's figures at its own year end
- US `debt_to_equity` is now total liabilities ÷ equity, the definition on the methodology page and the one every other market uses. Until now, annual US values were long-term debt ÷ equity for filers that tag long-term debt, and liabilities ÷ equity for the rest. MSFT FY2026, for example, goes from 0.070226 to 0.714282. Both figures now come from ONE balance sheet, the same 10-K: where a year's liabilities and equity, each from its earliest filing, come from different filings, the ratio uses the liabilities in the equity's own filing, or is left out, and the API does not compute it on read for that year either. A liabilities total from one 10-K over equity from another is neither filing's ratio: Praxair's liabilities over the Linde plc shell's equity had made LIN FY2017 −7,202.44 in the staged data; it is now −5.769753, the shell's own balance sheet. Annual US ratios are marked `derived` and dated with that filing.
- Filers whose 10-K reports no total-liabilities line (AMZN, WMT, KO, INTC, CMCSA and about a thousand others) now have liabilities derived from that 10-K: total liabilities and equity, minus equity including non-controlling interest, minus temporary (mezzanine) equity, all at the same date and dated with that filing (`form` = `derived`). The derivation from the earliest filing's balance sheet also replaces a Liabilities total that only a later filing tags for that date, a comparative that is often restated: VFC FY2014 is 4,349,258,000 from the 10-K of 2015-03-03, not the 4,214,418,000 tagged in 2016, and BRK-B FY2022 is 467,835,000,000 (filed 2023-02-27), not the figure restated for the 2023 insurance accounting standard (506 years: 409 keep their value with an earlier date, 97 change value). In all, 8,380 annual rows of 1,129 tickers. WMT FY2026, for example, has liabilities of 178,488,000,000 and `debt_to_equity` 1.791742. Where the rule cannot be trusted it is not applied: blank-check companies, mezzanine shares under tags the rule does not subtract, equity totals that do not reconcile, and the other cases listed on the methodology page. On filers that do tag liabilities, where it can be checked, it reproduces the tagged figure exactly in 97.3% of company-years and within 1% in 98.4% (35,582 checked).
- Each fiscal year's annual figures are now taken at that year's own year end, and within that date the figure from the EARLIEST filing, normally the year's original 10-K. A 10-K also tags the prior year end, opening balances restated for a new accounting standard (dated the day after a year end) and the odd stray date, and the latest of those used to win within a year's label. 2,440 annual rows move back to the year end. AIG's FY2020 liabilities are again 519,282,000,000 at 2020-12-31, filed 2021-02-19, not a 2021-01-01 balance filed in 2024 (its FY2020 `debt_to_equity` becomes 7.82499). Commercial Metals' FY2017 `debt_to_equity` of 6,078 came from a 259,000 equity fragment dated 2017-09-01; it is now 1.123822. A fact dated after the filing that reports it (a debt maturity tagged as a balance) is no longer used.
- US revenue is each year's own revenue line in the FIRST filing that reports it, normally the original 10-K, under whichever of the four revenue tags that filing used. It used to be the series of the tag a company used in the most years, whose earliest value for an old year is often a restated comparative: MSFT FY2016 revenue was 91,154,000,000 from the ASC 606 restatement filed 2018-08-03 and is now 85,320,000,000 from the 10-K of 2016-07-28; AAPL FY2017 and FY2018 are now dated 2017-11-03 and 2018-11-05 instead of 2019-10-31. Where that filing tags several different figures for the year, a figure below the same filing's gross profit or operating income, or under a tenth of another of its revenue figures, is not revenue: APOG FY2015-18 is its net sales (0.93-1.33bn), not a 49-80m segment tagged as Revenues, so its `gross_margin` is 0.22-0.26 instead of 2.87-6.79; the CHS Inc. tickers FY2015-17 are 30.3-34.6bn, not a figure a thousand times smaller. Of the figures left, the one the company's later annual reports keep while dropping the others is the line (LEG FY2019-22: net trade sales of 4,280,200,000 to 5,146,700,000, not gross sales under Revenues; PG FY2014: 83,062,000,000, not 29,400,000,000); else the line those reports settled on in its other years; else, as before, the tag the company uses in the most periods; later reports never choose a figure under half of another. A year whose first filing has no figure left has no revenue, and a later filing's figure is never used instead: PG FY2015 is 76,279,000,000 from its 10-K of 2015-08-07, not the 70,749,000,000 restated in 2016, and AON FY2015 (11,682,000,000) and BWXT FY2014 (2,923,019,000) are their originals' figures too, while CAL FY2016-19, whose originals tag only an 85-100m component beside a gross profit above 1bn, have none. Against the data served today, 2,418 annual revenue figures keep their value with an earlier date, 798 change value (168 of them within the same filing, in 77 tickers, each listed in the upload's dry-run report), 2,625 years gain a figure and 339 lose one: 267 because the first filing's figures are set aside (175 below that filing's own gross or operating profit, 27 of those a zero; 88 under a tag the company elsewhere shows as a part of revenue and never shown to be the line there; 4 with every figure ruled out), and 72 under the year-end rules above. Annual `gross_margin` above 1 falls from 111 to 8, with none new. 1,992 of 45,062 annual revenue figures are dated after the year's first 10-K, all because that 10-K tags none of the four revenue tags; there the first filing that does is used. Quarterly revenue follows the same rules: 951 quarters lose a figure, mostly fee income or a part below the 10-Q's own operating income.
- US `equity` is chosen within a filing: the parent's share (StockholdersEquity) where that filing tags it, else the total including non-controlling interest from the same filing. It used to be whichever of the two a filer tagged in more years, so DIS and BKR showed the group total and KO and WMT the parent's share; DIS FY2023 is now 99,277,000,000 instead of 103,957,000,000. The parent's tag is no longer taken from a LATER filing when the first one tagged only the total: DOV FY2019-21 keep their original 10-K dates (FY2019 2020-02-14), and KNX FY2016 is Swift's own 672,255,000 rather than Knight's figure from the reverse-merger 10-K. Where a filing's StockholdersEquity contradicts the same filing's total (opposite sign, zero, or under 5% of it) and no non-controlling interest explains the gap, the total is used when that filing's balance sheet or the company's next 10-K confirms it: OXY FY2018 is 21,330,000,000, not the −172,000,000 its 10-K tags as StockholdersEquity (`roe` 0.193671, not −24.0), and NFG FY2024, DBI FY2019-21, NNBR FY2019 and FY2021, TTEC FY2015, DEA FY2014 and LBRT FY2017 likewise (24 annual rows, 59 quarterly). 18,379 equity rows of 793 tickers change value at the same period end, 3,845 of them annual. Quarterly `debt_to_equity` changes with them.
- Every stored annual ratio is dated by its own two inputs: `filed` is the later of their filing dates and there is no ratio when they describe different period ends. It used to take the latest filing date of any figure of that year, so one late figure re-dated every ratio of the year (DOV FY2019 `net_margin` had carried 2023-02-10). 42,740 annual ratios keep their value with an earlier date. Each is also taken from ONE filing: where the year's two inputs, each from its earliest filing, come from two filings, the ratio is the pair that one of them reports, dated by it, and it is left out where neither reports both and the two share no figure for the year (a shell or blank-check company beside the business it became). LIN FY2017 `roe` is 0.207212 from its FY2018 10-K, not −645.5 from Praxair's net income over the Linde plc shell's own equity; CLOV FY2019 `roe` 0.744543, not 20,630.5. 7,999 stored annual ratios have inputs filed on different days: 7,309 are the pair one filing reports and 690 are one company's figures with none in common to break the tie. The API no longer computes any US annual ratio on read, at any `as_of`: the US storage manifest written by this upload carries `rules_version` 2026-10, which tells the API that every annual ratio is the loader's, stored or left out on purpose (WLKP FY2014 `net_margin` and `roa`, SLRC FY2021 `roa` and the Grayscale trusts' FY2021-22 `roa` were still computed on read before). A ratio computed on read, in every market, is dated the same way; it used to take both dates from whichever row came first.
- Quarterly rows are no longer relabelled by the 52/53-week rule. 3,618 quarterly rows ending 1 to 7 January had been labelled Q1 of the year before, replacing that year's real first quarter; they now carry their own calendar quarter, and 3,143 first quarters come back, for example DIS FY2020 Q1 revenue of 18,009,000,000 for the quarter to 2020-03-28. A quarterly balance-sheet figure is kept only at a real period end.
- In all, 27,143 annual US `debt_to_equity` values change, 29,499 appear (3,704 of them from derived liabilities) and 128 disappear (99 with no liabilities, 24 whose liabilities and equity come from different filings, 5 other). The upload also removes 4,202 other keys across 1,060 tickers for which these rules find no figure (257 of them on tickers that have left the SEC's list; AIXN FY2016, for example, is now its own year to 2016-05-31 and loses the keys only a later 2016-12-31 comparative had), and adds 72,361.
- A full upload of a per-ticker market (US, Taiwan, Korea, Japan) now counts in the coverage figures every ticker that market serves, including tickers the run did not stage and that are served as last published, as the 2026-10-09 entry said it would. Weekly increments keep adjusting the counts as before. The 174 US tickers that have left the SEC's list are re-staged under these rules from their own filings, up to the last filing their published data held. Five tickers that are on the SEC's list but give no row under the current rules are removed, with their old rows: FTW, FTW-WT, HYPG and JMKE (JMKE had served assets of $1), and BRZL, a symbol the SEC now assigns to another issuer. Removing a ticker is a reviewed step of a manual upload, and each removed object is first copied to a backup; the monthly job only reports such tickers. US coverage is 7,170 tickers and 2,622,245 rows.
2026-10-12
France: 3,229 filings removed as corrections; new deposits checked before publication
- 3,229 filings from 2,526 companies (14,501 rows) were removed. 385 were in a wrong unit or currency, or in a currency that could not be confirmed as EUR, for example group accounts presented in US dollars but labelled EUR by the register, or balance sheets keyed in thousands. 2,844 failed basic balance-sheet checks: almost all do not add up, and a few belong to another entity. The filings are removed, not converted or repaired. 501 companies had only such filings and no longer appear.
- Every removed filing is listed at /api/v1/fundamentals/deletions as action `correction`. Anyone holding a copy must delete the listed records within 30 days of listing, that is by 2026-11-11, as the Data Terms require.
- From 2026-10-12, every new French deposit is checked before it is published: a deposit that does not balance is not published, and a deposit that may be in another unit or currency is held for review first.
- This is in addition to the 102 filings from 86 companies removed for wrong units on 2026-09-29.
2026-10-09
US: first scheduled full refresh; how the counts changed
- The first scheduled full US refresh from SEC EDGAR ran on 6 October. Counted coverage is now 7,007 tickers and 2,516,774 rows, against 6,999 and 2,521,151 before. 61 tickers left the SEC's ticker list: 33 were renamed, or were warrants and units that expired, and their filer continues under another ticker; 28 were deregistered. That is offset by 69 new tickers and 1,609 new filings. No continuing company lost a row.
- Retired tickers are still served as last published; they are not yet counted in the coverage figures, which will be aligned with what the API serves.
- If an upload fails, the coverage figures are no longer updated for that run.
2026-10-07
Scheduled refreshes running again; company names for the US, Taiwan and Korea
- The scheduled refreshes for France, Belgium and Denmark (weekly), Japan, and the monthly US update had not been running since our storage move in September, because of a configuration error in the jobs' storage credentials. Updates for those markets in that period came only from manual runs. Fixed on 2026-10-07; all five ran successfully on 6 and 7 October. Taiwan, Korea and the weekly US refresh were not affected.
- Company names are now served for listed companies in the US, Taiwan and Korea: the `name` field had been null for, for example, AAPL and 2330.TW. Names come from each market's official list: the SEC company tickers file, the TWSE and TPEx company lists, and OpenDART's corporation codes. They are refreshed monthly. Some Taiwan tickers, mostly delisted companies, still have no name.
- Names containing HTML entities, mostly Danish (for example `&` or `ø`), are now decoded in every response.
- Documentation corrected: the research page said a later filing for the same period is added beside the first one. It is not stored at all, as the methodology says; the first filing stays as filed. The private-companies page and llms.txt now say that `activity_code` and `address` are present but empty for now.
2026-10-04
Licence version 2026-10-04: Redistribution and OEM on sale, Taiwan in every licence
- New binding licence version 2026-10-04, in force from today, at /licences: the Data Terms, the Source Conditions Schedule, the Free, Personal, Commercial, Redistribution, OEM and Snapshot Schedules, and the Order Form. Earlier purchases stay under the version recorded with them; the 2026-10-02 texts remain readable under /licences/v/2026-10-02/.
- Redistribution is on sale at US$9,900 a year, billed annually only. Checkout is self-serve; the key and the bulk files are released after a short check, normally within 2 Business Days. OEM (white-label) is available from US$2,500 a month by signed Order Form. The all-markets Snapshot with redistribution (US$29,500) is quoted and invoiced, and Academic Snapshots (US$1,500) are sold by invoice: email contact@tradingagentapp.com.
- Taiwan data, including the MOPS XBRL archive from 2013, is now included in every licence, including Redistribution, OEM and Snapshots. Until this version Taiwan was outside every redistribution grant.
- Taiwan documentation corrected: income-statement figures are single-quarter (three-month) amounts. Taiwan files cumulative year-to-date totals and we convert them by subtracting the earlier quarters of the same year, so do not difference adjacent quarters again. The API's `notes`, the developer page, the methodology page, the Taiwan notebook and the SDK documentation had said the figures were cumulative; the figures served did not change in this release.
- Source labels corrected: no market is described as public domain any more. US SEC EDGAR data is public information; Korea's OpenDART data is public data (공공데이터) whose permitted use is not restricted (data.go.kr 15060626); the Taiwan manifest names both routes, the TWSE OpenAPI (Open Government Data License v1.0) and the MOPS archive (not open data). The index response's `source` now points to each market's own licence or terms.
- Bulk files now come with the Redistribution Licence and with an OEM Agreement whose Order Form includes them. Personal and Commercial customers who bought under the 2026-10-02 or earlier texts keep bulk files for as long as those texts govern their subscription: a new version applies to a subscription only from its first renewal at least 30 days after we email notice of it, or when the customer accepts it at a new checkout.
- An OEM key now reads only the markets its Order Form names: the per-company API, the bulk files and the signed-in download answer 403 `market_not_licensed` for any other market. It gets bulk files only if its Order Form includes them; otherwise the bulk endpoint answers 403 `bulk_not_in_order_form`. For an OEM key, the API index and the bulk index carry a new `oem_scope` field with the markets it covers and whether bulk files are included. No other key changed.
- Deletions Feed: every entry is marked `withdrawn` (the register withdrew the record, or we did under an upstream change), `delete` (a natural person, a non-diffusible French company, an objection or a legal requirement) or `correction` (our own error, such as a duplicate). Entries marked `delete` go only to identified key holders, never to the public demo key.
- France: companies that INSEE or the register treats as non-diffusible (SIRENE statutDiffusionUniteLegale = P, or RNE diffusionINSEE = N), and any record whose register management number shows a natural person, are excluded from every output and listed as `delete`.
- France: per-company pages (/data/….FR) are set to noindex and are no longer listed in the sitemaps, until INPI accepts their indexing in writing. The pages, the API and the downloads are otherwise unchanged.
- Free Licence: Free Data — the demo key, free keys, the sample file, the data pages and per-company downloads — is supplied under the Free Licence (/licences/free), and free and demo API responses say so in a new `licence` field. Requesting a free key now needs the Free Licence box ticked.
- The Deletions Feed and quality responses now carry an `attribution` field, like every other API response. No existing field changed.
- The rate limits for each key type and licence, including the daily caps on the demo key and free keys, are now listed at /developers#rate-limits. The limits themselves did not change.
2026-10-02
Licence version 2026-10-02: Japan named in the licence texts
- New binding licence version 2026-10-02: the 2026-09-22 texts with Japan (EDINET, under the Public Data License 1.0) added to the data-sources and upstream-conditions clauses. No other change. If you edit or process Japanese figures further, add a statement that you did so, as PDL 1.0 requires.
- Earlier purchases stay under the version recorded with them. The 2026-09-22 texts remain readable under /licences/v/2026-09-22/ (for example /licences/v/2026-09-22/personal). The attribution notices in responses and files did not change.
2026-09-29
Sole traders removed; unit errors in France and New Zealand corrected
- Natural persons are now excluded from every output — company pages, company-name search, the sitemaps, the API, bulk files, the sample and snapshots. 7,765 French entrepreneurs individuels (EI and EIRL, INSEE legal category 1000; 0.52% of the French data) and 1,043 Danish entities that may be sole proprietorships (0.19% of the Danish data) were removed. A sole trader is a person, and their accounts are personal data: INPI publishes the RNE under a legal obligation (GDPR Art. 6(1)(c)), a reuser has none, and INPI's reuse licence (art. 3) permits reuse of personal data only in compliance with the GDPR. Company fundamentals do not need data about individuals, so under data minimisation (GDPR Art. 5(1)(c)) it is not processed. The full reasoning and the identification rule for each market are at /fundamentals/methodology#natural-persons. The Danish rule is conservative and removes some companies whose filed name omits their legal form; it will be replaced by the CVR register's company form.
- Every removed filing — 22,112 French and 6,214 Danish records — is listed at /api/v1/fundamentals/deletions, to identified key holders only, as action `delete` with no reason attached (a list saying which numbers are people would itself be personal data). Register withdrawals now carry action `withdrawn`; the internal `reason` field is no longer served. Anyone holding a copy must delete listed records within 30 days. New registrations are now classified before they are published, so the weekly increments cannot add a sole trader back.
- France: 102 filings from 86 companies were presented in EUR millions and had been read as units — LVMH's FY2016 group balance sheet showed EUR 59,622 of total assets. The affected groups include Crédit Agricole CIB, Natixis, CNP Assurances, LVMH, SNCF Réseau, BNP Paribas Personal Finance and Dassault. The filings are removed rather than multiplied back: the unit is not stated, and a guessed figure served as if the company had filed it would be worse than a gap. The original ingest check looked only for a factor of a thousand and only on turnover, which that filing does not carry. Weekly increments now compare every incoming filing's total assets with the company's own history in the same reporting basis, and drop any filing a thousand or a million times off.
- New Zealand charities: 487 returns from 417 charities were completed in NZ$000s and read as dollars, mostly in FY2008-09 when the register was new. Removed on the same basis. The check looks in both directions; every case was a thousandfold shortfall and none an excess.
- The fill-rate table on the pricing page and /api/v1/fundamentals/quality had shown Japan only since 2026-09-28: a run over one market had overwritten the index instead of merging into it. All eight markets are restored.
- Corrected: the research page said a single-market snapshot carries redistribution rights. It does not; only the all-markets redistribution SKU does.
- Attribution travels with every delivered file. CSV exports (API format=csv, the download button and the sample) gained a `source_attribution` column at the END, carrying each row's source notice and the market's last-update date; no existing column moved. Bulk files and snapshots come with ATTRIBUTION.txt — the bulk response's new `attribution_url`, and a link beside the files at /account/snapshots — dated with the file's own data date, never the download date. The attribution texts were revised toward each source licence's prescribed form — Taiwan's Open Government Data License exhibit, Japan's PDL 1.0 「加工して作成」 statement, the CC BY 3.0 NZ licence URI and change note — and every one now says the data was processed by WU Capital Limited. Further alignment is in progress.
- Taiwan attribution corrected: only the latest periods (TWSE OpenAPI) are open data under the Open Government Data License. The historical periods come from the TWSE Market Observation Post System's XBRL bulk download, which the TWSE directed us to in its letter 臺證資字第1150018568號; they are not open data and the notice now says so. Taiwan remains outside every redistribution grant.
- Snapshots: a vintage now resolves to the newest file published on or before its date. Previously, once a market was rebuilt, a vintage whose date did not exactly match that market's file date could not be delivered.
2026-09-28
Japan live — 4,955 companies, listed and unlisted
- Japan (JP) is live: 4,955 companies and 557,628 rows from annual securities reports (有価証券報告書) filed with the FSA, 2016 to date. Both the group's accounts and the parent's own are published from the same report, with `basis` distinguishing them — a large filer's parent revenue can be half its group revenue, and nothing in the source's field names separates the two.
- Most Japanese filers of an annual securities report are NOT listed. On one sampled day, 87 of 217 had no stock code: motorway operators, YKK, regional railways, the Development Bank of Japan. Companies are therefore keyed by EDINET code (E01766.JP), the register's own identifier and the only one every filer has; the stock code is kept alongside for those that have one.
- Turnover is present on 96.5% of Japanese company-periods, the highest of any market here. `ordinary_income` is a Japan-specific metric: 経常利益 is struck before extraordinary items and is NOT the same as pretax income, so it is published under its own name rather than folded into one. IFRS filers additionally carry operating_income and pretax_income.
- Verification: the published rows were cross-checked against the primary financial statements in the SAME filing — a different taxonomy with different element names — over an 80-filing sample. 615 of 616 figures agree exactly.
- Known gaps, stated rather than estimated: investment funds file the same form with a fund code and have no company results table, so they are excluded; and 210 foreign issuers (Deutsche Bank, CITIC, Goldman Sachs International among them) file on a form whose CSV rendition EDINET does not produce. Some filers present the five-year summary in millions of yen, rounded or truncated — their own presentation, reported as published.
- Attribution: EDINET is published under 公共データ利用規約 第1.0版 (PDL 1.0), Japan's government open-data licence. Commercial use and redistribution are permitted and attribution in a prescribed form is a CONDITION, which every response now carries. Earlier notes in this repository described EDINET as public domain; that was wrong.
- Company-name search now works for Japanese script. Names are normalised through NFKC and CJK is indexed as character bigrams, so 日立 finds 日立製作所, 日立建機 and the renamed 日立金属. Before this, all 4,498 Japanese names tokenised to nothing and the index held 289 entries.
2026-09-23
Free tier covers every company; Denmark reads IFRS and ESEF, interims removed
- Free keys now answer for every company in the warehouse, at the most recent fiscal year each company reported. Full history, the `as_of` query (only filings dated on or before a chosen day) and the bulk files need a plan; `as_of` on a free key returns 403 `as_of_requires_a_plan` rather than being silently ignored. A published list of sample companies answers at full depth on any key.
- Denmark: IFRS filers are now read (listed and class D companies tagging `ifrs-full`). Their rows carry `form` `annual/ifrs`. Previously these filings parsed to nothing, so the largest Danish companies were missing. From financial year 2020, listed companies' annual figures are read from the register's ESEF-derived document rather than the metadata-only one beside it: 1,453 of 2,081 such reports now carry figures, for 503 companies, including Vestas, Novo Nordisk, DSV and Ørsted through 2025. The other 628 hold too few tagged figures in the register's version to read; parsing the original ESEF package is not yet done. About 36,000 rows were added, and about 400 companies that previously returned nothing now have data.
- Denmark: interim reports (quarters, half-years) had entered as fiscal years in 54 company-periods of the original load, and in 30 more briefly published earlier today by the IFRS re-read; all are removed; where one had displaced the company's annual report for that year, the annual figures are restored. Interims are identified by the register's own document type where it says interim, and otherwise by their dates (the filer chooses the type and sometimes labels a quarter as an annual report). This correction is ours, not a register withdrawal, so it is not in the deletions feed.
- Denmark: irregular annual reports — a first year of up to eighteen months, or a short year after a change of year-end — are kept and now carry their length in `form` (`annual/15m`, `annual/7m`). A regular year has no suffix. Existing rows were relabelled; no figures changed.
- Methodology: measured fill rates per metric are published for every market, and refresh cadences now state what actually runs: Belgium and Denmark weekly (Tuesdays), France weekly (Mondays), United States monthly (2nd of the month), Taiwan, Korea and New Zealand charities manual.
2026-09-22
Basis, company facts, deletions, bulk files, rate limits
- Every row now carries `basis`: consolidated, solo, or reported. France returns BOTH a company's group consolidation (form K) and its own accounts (C/S) for the same year where both were filed; previously one silently replaced the other. The `latest` view prefers consolidation at the same period end. Derived ratios are computed within one basis only.
- History and latest responses carry `company`: name, activity code (APE/NAF where the register states it), registered address, basis, and the register page the filings can be checked against.
- New endpoint GET /api/v1/fundamentals/deletions — records the source register withdrew, for licensees to mirror (INPI licence art. 2.4). New endpoint GET /api/v1/fundamentals/bulk — the whole market as gzipped CSV on paid plans, with sha256 and row counts.
- Rate limits: 60 requests/minute on the demo key, 120 on free keys, 300 on Personal, 1,000 on Commercial, 3,000 on Redistribution. 429 responses carry Retry-After and X-RateLimit-* headers.
- Company-name search now covers the 2.6 million register entities (France, Belgium, Denmark), in the site search and in the MCP server's search_companies.
- CSV exports gained a `basis` column after `form`. Existing columns did not move.
- France: the full INPI stock (deposits 2017 to March 2026, 1.4 million companies, 29 million rows) has been parsed and is being loaded; until it lands, coverage is the 850,000 companies from the register API, substantially complete from 2022.
- Korea: full-market pass completed (2,239 listed companies from OpenDART, consolidated).
- Licence documents: added the upstream-conditions clause (attribution, deletions, prohibited searches), continuity (delivered files stay usable if the service closes), and service levels. Terms of Service now state that a data licence prevails for the data it covers.
2026-09-21
Denmark live; France re-sourced from INPI
- Denmark: 549,000 companies from the Danish Business Authority's published annual reports (XBRL), 2013 onward. `filed` is the register's own publication timestamp. Turnover is present on about 12% of filings because reporting class B may publish gross profit instead; it is never imputed.
- France: switched from a ministry-derived extract with proxy dates to INPI's Registre national des entreprises directly. `filed` is now dateDepot, the register's deposit date. Balance sheets included. Source attribution changed accordingly; the ministry attribution string is retired.
2026-09-20
Belgium full market; Taiwan refresh
- Belgium: 674,000 companies from the National Bank of Belgium's Central Balance Sheet Office daily batches, statutory (solo) accounts, structured deposits from April 2022 onward.
- Taiwan: every listed company, quarterly, cumulative year-to-date per Taiwan convention.
2026-09-18
New Zealand charities
- 27,000 registered charities from the Charities Register (CC BY 3.0 NZ), annual returns from FY2008. Not listed companies: New Zealand company financials are not open data.
2026-09
Filing-dated store, data licences, free tier
- United States (SEC EDGAR, ~7,000 filers, annual and quarterly, 2014 onward) and Korea (FSS OpenDART) moved from a committed snapshot to the object store.
- Personal, Commercial and Redistribution data licences; 37 flagship tickers free at full fidelity with the public `demo` key; Python package pit-fundamentals and MCP server pit-fundamentals-mcp published.