Google Sheets + Dun and Bradstreet, Paydex filled in
Your company list is in Google Sheets, but the credit signal you need sits somewhere else. So you copy a DUNS number, paste it into a portal, wait for a page to load, hunt for Paydex, then paste it back. One row is fine. Fifty rows is a headache.
This Paydex automation hits RevOps folks first, because pipeline hygiene depends on clean enrichment. But marketing ops cleaning lists and agency teams qualifying accounts feel it too. You will get Paydex written back into your sheet automatically, with each processed row clearly marked Complete.
Below is the exact workflow logic, what it automates, and how to run it without turning your spreadsheet into a fragile science project.
How This Automation Works
The full n8n workflow, from trigger to final output:
n8n Workflow Template: Google Sheets + Dun and Bradstreet, Paydex filled in
flowchart LR
subgraph sg0["When clicking ‘Execute workflow’ Flow"]
direction LR
n0@{ icon: "mdi:play-circle", form: "rounded", label: "When clicking ‘Execute workf..", pos: "b", h: 48 }
n1@{ icon: "mdi:database", form: "rounded", label: "Get Companies", pos: "b", h: 48 }
n2@{ icon: "mdi:swap-horizontal", form: "rounded", label: "Only New Rows", pos: "b", h: 48 }
n3["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/httprequest.dark.svg' width='40' height='40' /></div><br/>D&B Info"]
n4@{ icon: "mdi:swap-vertical", form: "rounded", label: "Keep Score", pos: "b", h: 48 }
n5@{ icon: "mdi:database", form: "rounded", label: "Append to g-sheets", pos: "b", h: 48 }
n3 --> n4
n4 --> n5
n1 --> n2
n2 --> n3
n0 --> n1
end
subgraph sg1["Flow 2"]
direction LR
n6["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/httprequest.dark.svg' width='40' height='40' /></div><br/>Get Token1"]
end
%% Styling
classDef trigger fill:#e8f5e9,stroke:#388e3c,stroke-width:2px
classDef ai fill:#e3f2fd,stroke:#1976d2,stroke-width:2px
classDef aiModel fill:#e8eaf6,stroke:#3f51b5,stroke-width:2px
classDef decision fill:#fff8e1,stroke:#f9a825,stroke-width:2px
classDef database fill:#fce4ec,stroke:#c2185b,stroke-width:2px
classDef api fill:#fff3e0,stroke:#e65100,stroke-width:2px
classDef code fill:#f3e5f5,stroke:#7b1fa2,stroke-width:2px
classDef disabled stroke-dasharray: 5 5,opacity: 0.5
class n0 trigger
class n2 decision
class n1,n5 database
class n3,n6 api
classDef customIcon fill:none,stroke:none
class n3,n6 customIcon
The Problem: Paydex Lookups Don’t Scale in a Sheet
Paydex is useful, but getting it into your working list is usually messy. Someone exports a CSV, someone else runs lookups in D&B, and a third person tries to reconcile what happened after the fact. Meanwhile the list keeps changing: new DUNS values appear, some are duplicates, and some were already processed but not marked clearly. The result is predictable. You recheck the same rows, miss others, and the spreadsheet becomes “almost right,” which is honestly worse than wrong.
The friction compounds once the list is shared across a team. Here’s where it breaks down.
- Manual D&B lookups burn about 5 minutes per company, and that time disappears into browser tabs.
- People overwrite cells or paste Paydex into the wrong row, especially when sorting and filtering changes row order.
- There is no reliable “done” state, so the same DUNS gets rechecked next week.
- When the D&B response doesn’t include Paydex (subscription limits, missing data), the process stalls and nobody knows why.
The Solution: Google Sheets → D&B Data Blocks → Paydex Backfill
This workflow turns your Google Sheet into a simple enrichment queue. You run it, n8n reads rows that contain a DUNS number, and it skips anything already marked Complete so you don’t pay for the same lookup twice. For each remaining row, it calls the Dun & Bradstreet Data Blocks API, pulls the payment insight response, and extracts the Paydex score from the nested JSON. Then it writes the Paydex value back into the matching row and marks that row as Complete, which keeps your list stable for the next run. If you prefer dynamic security, the workflow can also fetch a fresh bearer token first using Basic Auth, then use that token on the Data Blocks calls.
The workflow starts when you manually launch it in n8n. From there, it reads your sheet, filters to only “not completed” rows, enriches each DUNS via D&B, and upserts the Paydex result back into Google Sheets. When it finishes, your sheet is updated and self-documenting.
What You Get: Automation vs. Results
| What This Workflow Automates | Results You’ll Get |
|---|---|
|
|
Example: What This Looks Like
Say you enrich 60 new companies each week. Manually, if each Paydex lookup and paste-back takes about 5 minutes, that’s roughly 5 hours of tedious work, plus the inevitable rechecks. With this workflow, you trigger a run (about 1 minute), let n8n call D&B in the background, then review the updated sheet when it’s done. Most teams get those 5 hours back, and the “did we already do this one?” question basically disappears.
What You’ll Need
- n8n instance (try n8n Cloud free)
- Self-hosting option if you prefer (Hostinger works well)
- Google Sheets as your enrichment queue and output table
- Dun & Bradstreet Data Blocks to return Paydex from DUNS
- D&B API credentials (from your D&B developer account)
Skill level: Beginner. You’ll connect accounts, verify column names, and run a test with a few rows.
Don’t want to set this up yourself? Talk to an automation expert (free 15-minute consultation).
How It Works
You launch the workflow from n8n. It’s a manual trigger in this template, which is perfect for list cleanups or weekly enrichment runs.
Your Google Sheet becomes the input. n8n reads rows that include at least a DUNS value, plus fields for Paydex and a Complete marker so it can track progress.
Only unfinished rows move forward. A filter checks the Complete column, and anything already done gets skipped. Small detail, big impact.
D&B returns payment insight data, and Paydex is extracted. The workflow calls the Data Blocks endpoint per DUNS, then maps the Paydex score into a single clean field you can write to a cell.
The sheet is updated by matching on DUNS. It uses an “append or update” action keyed to the DUNS column, writes Paydex, and sets Complete = Yes so reruns stay tidy.
You can easily modify which fields you pull (beyond Paydex) to enrich your list with more signals. See the full implementation guide below for customization options.
Step-by-Step Implementation Guide
Step 1: Configure the Manual Trigger
This workflow starts on demand, then reads the company list for enrichment.
- Add the Manual Launch Trigger node as the workflow trigger.
- Leave default settings as-is, since this is a manual run trigger.
- Connect Manual Launch Trigger to Retrieve Company List.
Step 2: Connect Google Sheets
These nodes read the company list and write back enriched results.
- Open Retrieve Company List and select your spreadsheet and sheet.
- Set Document to your company sheet (e.g.,
Company Sheet), and Sheet toSheet1. - Credential Required: Connect your googleSheetsOAuth2Api credentials in Retrieve Company List.
- Open Update Sheet Records and select the destination spreadsheet and sheet.
- Confirm Operation is set to
appendOrUpdate. - Credential Required: Connect your googleSheetsOAuth2Api credentials in Update Sheet Records.
Step 3: Set Up Filtering and D&B Data Retrieval
Filter out completed rows and request D&B payment insight data for each remaining company.
- In Filter New Entries, set the condition to check if Complete is empty using
={{ $json.Complete }}. - Connect Retrieve Company List to Filter New Entries.
- Configure D&B Data Fetch with the URL
=https://plus.dnb.com/v1/data/duns/{{ $json.duns }}?blockIDs=paymentinsight_L4_v1&tradeUp=hq&customerReference=customer%20reference%20text&orderReason=6332. - Set Authentication to
headerAuthand add header Accept =application/json. - Credential Required: Add header-auth credentials for D&B Data Fetch (not configured in this workflow).
- Connect Filter New Entries to D&B Data Fetch.
basicAuth and is not connected. If you plan to use it to generate a token, connect it to D&B Data Fetch and add the appropriate credentials.Step 4: Configure Data Mapping and Sheet Updates
Map the Paydex score from the D&B response and upsert records into the sheet.
- In Map Paydex Score, set Paydex to
={{ $json.organization.businessTrading[0].summary[0].paydexScoreHistory[0].paydexScore }}. - Connect D&B Data Fetch to Map Paydex Score.
- In Update Sheet Records, map duns to
={{ $('Retrieve Company List').item.json.duns }}. - Map paydex to
={{ $json.Paydex }}and set Complete toYes. - Confirm Matching Columns includes
dunsfor upsert behavior. - Connect Map Paydex Score to Update Sheet Records.
Step 5: Test and Activate Your Workflow
Run a manual test to verify data enrichment and sheet updates.
- Click Execute Workflow from Manual Launch Trigger.
- Verify that Filter New Entries passes only rows where Complete is empty.
- Confirm D&B Data Fetch returns data and Map Paydex Score outputs a
Paydexvalue. - Check Update Sheet Records for updated rows where paydex is filled and Complete is set to
Yes. - Activate the workflow once validation is successful.
Common Gotchas
- Dun & Bradstreet credentials can expire or need specific permissions. If things break, check your D&B API entitlements and token response (401/403) first.
- If you’re using Wait nodes or external rendering, processing times vary. Bump up the wait duration if downstream nodes fail on empty responses.
- Default prompts in AI nodes are generic. Add your brand voice early or you’ll be editing outputs forever.
Frequently Asked Questions
About 30 minutes if your Sheet and D&B access are ready.
No. You’ll mostly connect credentials and confirm your column names match the workflow.
Yes. n8n has a free self-hosted option and a free trial on n8n Cloud. Cloud plans start at $20/month for higher volume. You’ll also need to factor in Dun & Bradstreet API costs based on your contract.
Two options: n8n Cloud (managed, easiest setup) or self-hosting on a VPS. For self-hosting, Hostinger VPS is affordable and handles n8n well. Self-hosting gives you unlimited executions but requires basic server management.
Yes, and it’s one of the best reasons to use n8n here. You can extend the D&B HTTP Request to ask for additional blockIDs, then add new mappings in the “Map Paydex Score” (Set) step to write more columns back to Google Sheets. Common customizations include viability-style indicators (if your subscription supports them), extra firmographics, and a “Status” column for missing data so those rows don’t look silently broken. If you want a review step, add an IF node before writing back to the sheet and only mark Complete when the fields you care about are present.
Most of the time it’s an expired token, incorrect Basic Auth, or missing Data Blocks entitlements on your D&B account. Check the HTTP response in the D&B request node for 401/403 clues, then regenerate credentials or confirm your subscription includes the payment insight block. Also confirm you’re sending the Authorization header exactly as expected if you’re using the dynamic token node. Finally, bad or inactive DUNS values can return incomplete payloads, which can look like “the workflow broke” when it’s really “the data isn’t there.”
Hundreds per run is normal, as long as your D&B rate limits and plan allow it.
Often, yes, because the “skip completed rows + loop through the rest + upsert by key” pattern is where Zapier can get clunky and expensive. n8n also makes it easier to control authentication, especially if you want to fetch and reuse a bearer token, and to add guardrails when Paydex isn’t present. Another practical win is debugging: you can inspect the exact API response and adjust the mapping without rebuilding everything. Zapier or Make can still be fine for very small lists or one-off lookups, but they’re not as comfortable for repeatable enrichment runs. Talk to an automation expert if you want help choosing.
Once Paydex is backfilled and reliably marked Complete, your sheet stops being a chore and starts being an asset. Set it up once, then run it whenever new rows show up.
Need Help Setting This Up?
Our automation experts can build and customize this workflow for your specific needs. Free 15-minute consultation—no commitment required.