Open data

The whole dataset, in the form you can use it in.

Every table the site renders from, as CSV for a spreadsheet and JSON for code, generated at build time so a download is never a stale copy. 4,473 rows across 9 tables, licensed CC BY 4.0. There is no form and nothing is sent anywhere.

9 tables4,473 rowsCSV · JSON · APICC BY 4.0Generated September 2026

01Tables

TableWhat one row isRowsDownload
Systems

Every system Stackmark profiles: categories, deployment models, the company sizes it fits, the industries and regions it names, its cost band, and the date the record was last checked against its sources.

slug · name · categories · deployment · sizeFitMin · sizeFitMax · industries · priceBand · regions · hq · summary · lastVerified · sources

53CSVJSONone row per system
Module depth

The coverage matrix in long form: core, moderate, partner or none for each system and module. This is the table behind the module notes, the compare sheet and the fit assessment.

vendor · module · depth

848CSVJSONone row per system and module
Modules

What each functional area covers, in our own words, with the questions we put to a vendor about it in a demonstration.

slug · name · description · questions

16CSVJSONone row per module
Industries

The verticals the profiled systems position themselves in, with our note on why the finance requirements differ and the modules that decide the deal there.

slug · lede · keyModules

21CSVJSONone row per industry
Country localizations

Whether a system is localized for a country by the vendor, by a partner, not at all, or not yet verified by us, read from the vendor’s own availability documentation, with that source on every row. Countries are ISO 3166-1 alpha-2.

vendor · country · countryName · support · note · source

86CSVJSONone row per system and country
Documented implementations

A company someone has published as running a system — a vendor case study, a customer list, a press release — with the page that says so. Coverage of what has been documented and found, never an install count or market share. Fields the source did not state read “unstated” rather than empty.

id · company · vendor · industry · sizeBand · country · goLiveYear · kind · modules · source · sourceTitle · retrievedAt

352CSVJSONone row per published deployment
Implementation partners

Implementation firms as listed on the partner directories Stackmark harvests, with the tier the vendor publishes where it publishes one, the countries and specialisms the directory states, and the date each firm’s page was read.

slug · name · vendor · tier · tierLabel · countries · specialisms · certifiedExperts · retrievedAt · sources

2,738CSVJSONone row per firm
The finance stack

Finance-stack products and the systems each states an integration with, in long form, with the page that states it and whether that page is the system’s own marketplace or the product’s own site.

product · name · category · vendor · verifiedBy · pricingModel · source

56CSVJSONone row per product and system
Glossary

The vocabulary of a finance-system evaluation, defined without the vendor gloss, with a note on why each term bears on the decision.

slug · term · definition · whyItMatters · seeAlso · modules

303CSVJSONone row per term

manifest.json lists every table, its columns and its row count, for a script that would rather read that than this page. Multi-valued columns are semicolon-separated.

02The JSON API

The same tables are served as JSON documents at stable URLs, for anything that would rather fetch than download. One document per collection, each wrapped in an envelope naming the licence, the date it was generated, the newest verification date behind its rows and its own canonical URL, so a consumer reading one file needs nothing else.

It is read-only, because a static site has nothing to write to, and the version sits in the path rather than a header, because a static host cannot negotiate one. A breaking change becomes /api/v2/ and /api/v1/ keeps serving what it always did.

CollectionURLRows
Index/api/v1/index.json
Systems/api/v1/vendors.json53
Module depth/api/v1/module-depth.json848
Modules/api/v1/modules.json16
Industries/api/v1/industries.json21
Country localizations/api/v1/localizations.json86
Documented implementations/api/v1/implementations.json352
Implementation partners/api/v1/partners.json2,738
The finance stack/api/v1/stack.json56
Glossary/api/v1/glossary.json303

No key, no quota, no sign-up. If you are going to poll it, once a day is plenty: the files change when a record is re-verified, not continuously.

03Licence

Creative Commons Attribution 4.0 International (CC BY 4.0). Use it, reshape it, publish it, sell work built on it. The one condition is attribution: name Stackmark and link the page or the file you took it from.

The facts came from the vendors’ own documentation and every record cites the pages they were read from; the descriptions, the module questions, the industry notes and the depth ratings are Stackmark’s own words and judgement. Reuse carries both, so please keep the source column where a table has one.

Licence terms

04Cite this

Stackmark (2026). Stackmark ERP and finance software dataset. Retrieved 2026-09-08, from https://stackmark.co/data/

@misc{stackmark_dataset,
  author       = {Stackmark},
  title        = {Stackmark ERP and finance software dataset},
  year         = {2026},
  urldate      = {2026-09-08},
  url          = {https://stackmark.co/data/},
  note         = {Licensed CC BY 4.0}
}

Cite the retrieval date, not just the year: the dataset changes as records are re-verified, and every record carries its own lastVerified so a reader can tell how old a given fact is.

05What is not in here

  • Implementation timelines and cost multiples per vendor: the schema carries the fields, no vendor record populates them yet. The implementations table is a different thing — deployments others published, not our estimate of how long a project takes.
  • Most implementation rows state no size band, country or go-live year, because the sources do not: 337 of 352 have no band, 349 no year. The cells say “unstated” so the gap is countable rather than invisible.
  • Country localizations cover the systems whose availability documentation we have read, not all of them. The table says which.

Stated rather than left out. A dataset that only publishes what flatters it is a marketing asset, and the gaps are the part a researcher needs to know about.

Found something wrong? Every fact row on the site links to a prefilled issue, and the corrections log is that queue, in public. There is no form and no mailbox: a correction and its answer belong where the next reader with the same doubt will find them.