Match bank transactions to ledger entries with OpenAI embeddings, Slack, and Postgres

n8n · Finance, Accountants · checked 2026-10-29

Brand hub

Quick overview This workflow matches records from two HTTP APIs (for example, bank transactions and ledger entries) using fuzzy scoring and optional OpenAI-compatible embeddings, stores results in PostgreSQL, and sends ambiguous matches to Slack for signed-link human approval via n8n webhooks. How it works Runs on a manual trigger, a 4-hour schedule, or a POST webhook call and loads matching state plus an approval secret from PostgreSQL. Fetches the left and right record sets from two configured HTTP APIs, normalizes and de-duplicates them, and stops the run if either source fails. Generates candidate pairs using amount/date blocking, applies fuzzy similarity features (amount, date, counterparty, description, references, and learned aliases), and selects which items need embeddings.

At a glance

Brand
n8n
Jobs
Finance, Accountants
Sources
1

Dimensions

Sources

Last checked 2026-10-29. Description source: harvest.