End-of-day reconciliation (ledger vs settlement file)
The bank operations job, end to end: the core ledger on one side, the settlement file the switch dropped on SFTP on the other, joined on transaction reference. Transactions that never settled take the 'invalid' port and are emailed to the ops desk as a CSV; everything that matched is written to the reconciliation table. The two sources are read on separate branches, so they are fetched at the same time and the join waits for both.
The pipeline
This is the actual graph the template creates — 10 steps; dashed lines are the failure/invalid paths.
Connects to
- PostgreSQL
- SFTP
How you know it worked
Six postings, four settlements, so two breaks. TXN-1004 and TXN-1006 arrive in MailHog as CSV attachments — one message each, because the foreach judges a transaction at a time — and the other four land in the reconciliation table.
Try this templateUsed in: Banking & finance
Related templates
Database → CSV on SFTP
Writes a CSV onto the SFTP server — including one deliberately broken row. It exists to give the validate-and-route demo something to find, which…
File in, validation, two destinationsSFTP CSV → validate → database, rejects emailed
Reads the CSV back off SFTP and takes it a row at a time: good rows are loaded into a table, a bad one is emailed to somebody instead of being…
Excel exportDatabase → Excel workbook in object storage
The same rows again, this time as a real .xlsx workbook dropped into MinIO. Nothing about the pipeline changes except the format — that is the…
Stop moving data by hand.
Start free with three projects, or talk to us about running it across your organisation.