Every entry comes from an official national register β chambers of tax advisers, audit oversight bodies and ministries. Professionals can claim their profile and add what the registers never contain: software, languages, industries, price range.
Nothing exotic β the same stack the rest of Kontevia already uses.
Scrapers per country write into one ucetni table (Postgres in production, SQLite while building). Each row keeps the source register and the raw payload, so a profile can always be traced back and re-verified.
Leaflet with OpenStreetMap tiles β no API key, no per-view billing. Country bubbles at low zoom, individual pins from zoom 7 up, clustered server-side so the browser never loads more than a few hundred points.
Postgres full-text with trigram matching for names and firms. Every country and city gets a static, indexable page β that is where the organic traffic comes from, not from the map itself.
Verification by e-mail at the domain in the register, or by the registration number plus a one-time code. Once claimed, the owner edits software, languages, industries and price range; the register fields stay read-only.
France already ships coordinates. Everything else gets geocoded from postcode and city against the GeoNames postal dataset β offline, no per-request cost, refreshed with each import.
Static shell on Vercel (where kontevia.com already lives), data API and importers on Railway. Imports run monthly per country, because that is how often the registers themselves change.
18 countries loaded from official registers. The rest are in progress β several require a formal data request rather than a download.
| Country | Registers | Professions | Records |
|---|