WORKFLOW · N8N
Enrich a Google Sheet of companies with EU business register data
Prompts👁 0
WORKFLOW JSON
{
"meta": {
"templateCredsSetupCompleted": true
},
"name": "Enrich a Google Sheet of companies with EU business register data",
"nodes": [
{
"id": "a2000000-0000-4000-8000-000000000001",
"name": "Run it",
"type": "n8n-nodes-base.manualTrigger",
"position": [
-220,
0
],
"parameters": {},
"typeVersion": 1
},
{
"id": "a2000000-0000-4000-8000-000000000002",
"name": "Read the sheet",
"type": "n8n-nodes-base.googleSheets",
"position": [
20,
0
],
"parameters": {
"options": {},
"sheetName": {
"__rl": true,
"mode": "list",
"value": "gid=0",
"cachedResultName": "Sheet1"
},
"documentId": {
"__rl": true,
"mode": "list",
"value": "",
"cachedResultName": "Companies"
}
},
"typeVersion": 4.5
},
{
"id": "a2000000-0000-4000-8000-000000000003",
"name": "Look up the official register",
"type": "@apify/n8n-nodes-apify.apify",
"position": [
260,
0
],
"parameters": {
"build": "",
"memory": 1024,
"actorId": "gubidonius~company-registry-lookup",
"timeout": 600,
"resource": "Actors",
"operation": "Run actor and get dataset",
"customBody": "={{ JSON.stringify({ queries: [$json.company], countries: ['cz','ee','fi','fr','no','pl','sk'], maxResultsPerQuery: 1, onlyActive: true }) }}",
"actorSource": "store",
"authentication": "apifyApi"
},
"typeVersion": 1
},
{
"id": "a2000000-0000-4000-8000-000000000004",
"name": "Keep the columns worth writing back",
"type": "n8n-nodes-base.set",
"position": [
500,
0
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "f1",
"name": "company",
"type": "string",
"value": "={{ $json.name }}"
},
{
"id": "f2",
"name": "registrationNumber",
"type": "string",
"value": "={{ $json.registrationNumber }}"
},
{
"id": "f3",
"name": "vatNumber",
"type": "string",
"value": "={{ $json.vatNumber }}"
},
{
"id": "f4",
"name": "country",
"type": "string",
"value": "={{ $json.countryName }}"
},
{
"id": "f5",
"name": "registry",
"type": "string",
"value": "={{ $json.registry }}"
},
{
"id": "f6",
"name": "status",
"type": "string",
"value": "={{ $json.status }}"
},
{
"id": "f7",
"name": "incorporatedAt",
"type": "string",
"value": "={{ $json.incorporatedAt }}"
},
{
"id": "f8",
"name": "address",
"type": "string",
"value": "={{ $json.address }}"
},
{
"id": "f9",
"name": "city",
"type": "string",
"value": "={{ $json.city }}"
},
{
"id": "f10",
"name": "website",
"type": "string",
"value": "={{ $json.website }}"
},
{
"id": "f11",
"name": "registryUrl",
"type": "string",
"value": "={{ $json.registryUrl }}"
}
]
}
},
"typeVersion": 3.4
},
{
"id": "a2000000-0000-4000-8000-000000000005",
"name": "Write it back to the sheet",
"type": "n8n-nodes-base.googleSheets",
"position": [
740,
0
],
"parameters": {
"columns": {
"value": {},
"mappingMode": "autoMapInputData",
"matchingColumns": [
"company"
]
},
"options": {},
"operation": "appendOrUpdate",
"sheetName": {
"__rl": true,
"mode": "list",
"value": "gid=0",
"cachedResultName": "Sheet1"
},
"documentId": {
"__rl": true,
"mode": "list",
"value": "",
"cachedResultName": "Companies"
}
},
"typeVersion": 4.5
},
{
"id": "a2000000-0000-4000-8000-000000000006",
"name": "Read me",
"type": "n8n-nodes-base.stickyNote",
"position": [
-700,
-160
],
"parameters": {
"color": 4,
"width": 420,
"height": 520,
"content": "## What this does\n\nYou have a sheet with a column called company, holding names or registration numbers. This fills in the official register data next to each one and writes it back.\n\nEvery country returns the same field names, so one set of columns works for all seven. No mapping per country.\n\nCzechia (ARES), Estonia (Ariregister), Finland (PRH), France (Annuaire des Entreprises), Norway (Bronnoysund), Poland (MF VAT list), Slovakia (RPO).\n\n## Setup\n\n1. Install the Apify node. It is verified by n8n, so it works on Cloud and on self-hosted.\n2. Add your Apify API key in the node credentials. A free Apify account is enough to start.\n3. Point the two Google Sheets nodes at your sheet. Column A holds the company names.\n\nThe Actor is gubidonius/company-registry-lookup. One row comes back per company with the\nsame 28 field names whichever of the seven registers answered.\n"
},
"typeVersion": 1
}
],
"pinData": {},
"settings": {
"executionOrder": "v1"
},
"connections": {
"Run it": {
"main": [
[
{
"node": "Read the sheet",
"type": "main",
"index": 0
}
]
]
},
"Read the sheet": {
"main": [
[
{
"node": "Look up the official register",
"type": "main",
"index": 0
}
]
]
},
"Look up the official register": {
"main": [
[
{
"node": "Keep the columns worth writing back",
"type": "main",
"index": 0
}
]
]
},
"Keep the columns worth writing back": {
"main": [
[
{
"node": "Write it back to the sheet",
"type": "main",
"index": 0
}
]
]
}
}
}RELATED WORKFLOWS
COMMENTS
No comments yet — be the first.
