Bank-to-Ledger Matching Workflow: OpenAI Embeddings, Slack, Postgres
Bank-to-Ledger Matching Workflow: OpenAI Embeddings, Slack, Postgres
Regular price
£3.99
Regular price
£3.99
Sale price
Unit price
/
per
⬇
Instant Digital Download
∞
Unlimited Downloads
★
Lifetime Access in Your Account
Couldn't load pickup availability
🔥
128+ Sold
Popular with n8n builders
âš¡
23 people viewing
High interest right now
✅
9 added today
Fast-moving digital product
Bank-to-Ledger Matching Workflow: OpenAI Embeddings, Slack, Postgres
Regular price
£3.99
Regular price
£3.99
Sale price
Unit price
/
per
Bank-to-Ledger Matching with OpenAI Embeddings + Slack Human Approval
Automatically match bank transactions to ledger entries using fuzzy scoring and optional OpenAI-compatible embeddings—then route ambiguous cases to Slack for HMAC-signed, expiring human approval. Results, review queues, and embedding cache are stored in PostgreSQL as the workflow runs.
What this workflow does
- Triggers: Run manually, on a 4-hour schedule, or via a POST webhook.
- State + security: Loads prior matching state and an approval secret from PostgreSQL.
- Fetch & normalize: Pulls two record sets from configured HTTP APIs, normalizes and de-duplicates them, and stops if either source fails.
- Candidate pairing: Builds candidate pairs using amount/date blocking, then computes fuzzy similarity features across amount, date, counterparty, description, references, and learned aliases.
- Optional embeddings: Loads cached vectors from PostgreSQL and calls an OpenAI-compatible embeddings endpoint only for missing texts. Semantic similarity is fused into the text score without overriding numeric mismatches.
- One-to-one matching: Automatically matches only high-confidence, non-ambiguous pairs; creates a review queue for the rest with top candidates and reasons.
- Slack approval: Saves run summaries, auto-matches, review items, and any new embedding vectors to PostgreSQL, then posts review requests to Slack with HMAC-signed, expiring approval links.
- Decision handling: Serves a GET review page and a POST decision endpoint to apply reviewer approval/rejection in PostgreSQL and update learned aliases.
Use cases
- Reduce manual reconciliation by linking bank transactions to ledger entries with a confidence-based review loop.
- Improve matching quality over time using learned aliases and cached embeddings.
- Operationalize human-in-the-loop approvals for ambiguous matches in Slack.
Technical details
- Integrations: Slack, PostgreSQL, configurable HTTP APIs, and an OpenAI-compatible embeddings endpoint.
- n8n nodes used: if, code, no op, merge, webhook, postgres.
