What a batch does
1
Import
Drop a CSV or XLSX file. Topograph reads the columns and proposes which one
holds the country, the identifier, the legal name and the address. You
confirm or correct the mapping once, and the file becomes a saved batch you
can come back to at any time.
2
Match
Each row is searched in its country’s register, by identifier when you
have one, otherwise by legal name. Rows that resolve unambiguously are
matched on their own. Rows that need a decision wait for you in a review
queue.
3
Get data
Pick the data points you need (company details, legal representatives,
other key persons, establishments, shareholders, subsidiaries, ultimate
beneficial owners) and the request mode. Topograph fetches them for every
matched row, ten at a time, and keeps going while you close the tab.
4
Export
Download the whole batch, or the rows you selected, as CSV or XLSX. One
row per company you imported, in the order of your file, with the match
and the data alongside your original columns.
Importing a file
The file needs a header row and one company per row. Any column layout works. Topograph looks at the headers and a sample of rows to suggest which columns are:- Country: an ISO code (
FR,DE), a country name, or a US state code. A column of US states can be read asUS-AK,US-CAand so on with one checkbox. If a row has no country, a fallback country can be applied to it. - Identifier: the register number, SIREN, Companies House number, EIN or whatever your file holds. Leading zeroes are preserved.
- Legal name.
- Address: either one combined column or separate street, city, postal code and region columns. Addresses are optional, but they are what tells two companies with the same name apart.
Limits per batch: 50,000 rows, 100 columns, 5 MB.
How matching works
After a search, each row lands in one of these states:
The table shows the state of every row with a badge. A green check means the
match was reviewed; an amber triangle means one field, such as the postal
code, disagrees with your input.
Reviewing
Review opens the rows that need a decision one after the other. Each one shows your row and the suggested company side by side, with the evidence as plain sentences (“Legal name agrees once the legal form is added”, “Postal code differs: 72714 vs 72715”, “Address not included in this register’s search results”) and the reasoning behind the suggestion one click away. From the dialog you can confirm, mark no match, skip, search another name in the same country, or type an identifier by hand. Keyboard shortcuts cover the whole pass: arrow keys to pick a candidate,N for no match, ⌘↵ to confirm,
S to skip, / to search.
Clicking a single row in the table reviews only that row.
Fixing a row
Any row can be edited: country, identifier, legal name, address. Saving new inputs clears the row’s match and any data fetched for it, so search the row again afterwards. Searching a row that already has a reviewed match or fetched data asks for confirmation first.Getting data
Get company data works on the rows in view: every matched row in the current filter, or the rows you selected. The dialog shows how many rows will be fetched, which of them already have data, the data points to fetch, the request mode, and the price per company for each country in the batch, with an upper bound for the whole run before you commit.- Verification mode uses authoritative sources first. It is slower and is the right choice for KYB files.
- Onboarding mode uses the fastest available sources first. See Modes.
Data statistics
Open Data statistics from the Data step to see how many rows returned each data point. The breakdown separates successful results, data not offered by the country, onboarding mode limits, failures, pending results and data not requested. Successful empty lists are counted and labelled separately within the obtained total. These counts cover the whole batch, regardless of table filters or selection. They use each row’s latest saved result, so fetching a row again does not count it twice.Following progress
The filter bar has two steps. Match shows To review, Matched and Unmatched; Data shows Not fetched, Ready and, only when they exist, Partial and Failed. A running run shows how many rows are in flight and how many are queued, and Activity lists every run of the batch with the option to stop the rows that have not started yet. Runs continue on our side. You can close the page, come back later and pick up where the batch is.Exporting
Export downloads the rows in view (or your selection) as CSV or XLSX. The file has a fixed layout, one row per imported company, in the order of your file:- your input:
input_country,input_identifier,input_legal_name,input_address_json; - the match:
matched_country,matched_identifier,matched_legal_name,matched_address_json,match_type,search_status; - the data:
data_status,request_id,requested_datapoints, and one JSON column per data point (company_json,legal_representatives_json,other_key_persons_json,establishments_json,shareholders_json,subsidiaries_json,ultimate_beneficial_owners_json); error_codeanderror_messagefor rows that could not be completed;schema_version,batch_id,source_rowandcompleted_at.
Good to know
- Batches belong to a workspace. Requests made from a batch use that workspace’s register credentials and appear in its history.
- Ownership graphs and document orders are not part of batches yet. Open the request behind any row to order documents for that company.
- In a development environment, batches work end to end on generated data, so you can test an import without spending credits.