A build-to-order ERPNext app that pulls bank statements via CSV/MT940/open-banking APIs and auto-matches them against Payment Entries, Journal Entries and invoices using a configurable rules engine. ECOSIRE scopes, builds, installs and supports it for your Frappe/ERPNext v15/v16 site. Built to order by ECOSIRE for ERPNext v15, v16 — indicative price from $499.00 USD; request a quote for a scoped proposal.

A build-to-order ERPNext app that pulls bank statements via CSV/MT940/open-banking APIs and auto-matches them against Payment Entries, Journal Entries and invoices using a configurable rules engine. ECOSIRE scopes, builds, installs and supports it for your Frappe/ERPNext v15/v16 site.
今すぐのお支払いはありません。これはチームへの見積もり依頼を送信します。価格と次のステップをメールでご案内します。
Most finance teams hit the same wall in ERPNext: month-end bank reconciliation is still largely manual. ERPNext core ships a Bank Reconciliation Tool and a Bank Statement Import, but matching is one bank statement at a time, largely by hand, with limited fuzzy logic and no live bank feed. There is no native open-banking connection, no persistent multi-condition matching rules, and weak handling of the messy real-world cases — partial settlements, bundled payouts (Stripe, PayPal, marketplaces), FX differences, and bank charges — so reconciling hundreds of lines a month becomes a multi-day slog and the GL drifts out of trust.
`Bank Statement` and `Bank Statement Line` DocTypes with idempotent import that de-duplicates transactions by bank reference and value date
Statement ingestion from CSV, MT940 and CAMT.053 (ISO 20022) with per-bank column/field mapping templates
Open-banking / aggregator feed connector polled on a `scheduler_events` job, with encrypted credential storage and token refresh
`Reconciliation Rule` DocType: ordered, weighted match conditions (exact ref, amount tolerance, date window, counterparty name similarity, party map)
Server-side matching engine run via `frappe.enqueue` background jobs so multi-thousand-line imports never block the desk
Auto-proposes matches against existing Payment Entries, Journal Entries, Sales/Purchase Invoices and unreconciled GL entries
This build-to-order app closes that gap as a proper Frappe application installed on your bench. We add a Bank Statement and Bank Statement Line DocType pair that ingests transactions from CSV, MT940/CAMT.053, or a live open-banking/aggregator API, plus a Reconciliation Rule DocType where you define ordered, weighted matching conditions (exact reference, amount within tolerance, date window, counterparty name similarity, party mapping). A server-side matching engine — implemented as whitelisted methods with frappe.enqueue background jobs so large imports never block the UI — proposes matches against existing Payment Entries, Journal Entries, Sales/Purchase Invoices and unreconciled GL rows, and can auto-create the settling Payment or Journal Entry on confirmation.
Technically it is wired the ERPNext-native way. hooks.py doc events on Payment Entry and Journal Entry keep reconciliation state in sync when documents are amended or cancelled; scheduler_events (cron/hourly) poll the open-banking feed and refresh pending statements; a client script on the reconciliation workspace gives reviewers a fast keyboard-driven match/split/ignore screen. Unmatched or ambiguous amounts route to a configurable suspense/clearing account so nothing is silently dropped, and everything respects ERPNext permissions — we ship a dedicated Role and Role Profile plus Permission Level rules so approvers, clerks and auditors see the right scope. Multi-bank and multi-currency are first-class: each feed maps to a Bank Account and Company, and FX gain/loss on settlement posts to the accounts you nominate. Reads and writes are also exposed over the Frappe REST API so an external cash-management or treasury tool can push statements or pull reconciliation status.
Because this is build-to-order, you are not downloading a fixed app off a marketplace — ECOSIRE builds your version around your banks, statement formats and chart of accounts. Engagement starts with a short scoping call to confirm banks, feed method (file vs. API/aggregator), currencies and match tolerances. We build on a staging bench, run UAT against your real (sanitised) statements, then install on your production site (Frappe/ERPNext v15 or v16, self-hosted or Frappe Cloud). Typical delivery is 2-4 weeks from confirmed scope, and you receive the full source in a git repository along with a post-go-live support window.
Owns month-end close and wants bank reconciliation to stop being a multi-day manual grind. Needs a trustworthy GL, a visible suspense/clearing account for open items, and an exception report for the auditors.
Reconciles hundreds of lines daily and wants the software to propose matches, not force line-by-line hunting. Values the keyboard-driven match/split/ignore workspace and auto-created settlement entries.
Runs the Frappe/ERPNext bench and cares about clean install, encrypted bank credentials, scheduler health, permission scoping and a git repo they can maintain across v15/v16 upgrades.
Oversees several companies, banks and currencies in one ERPNext instance and needs per-bank rule sets, correct FX gain/loss posting and consolidated reconciliation status.
ecosire.com でライセンスを購入し、アカウント ダッシュボードから Bank Reconciliation & Open Banking アプリの ZIP をダウンロードします。
ZIP をベンチのアプリ フォルダーに抽出するか、抽出されたアプリへのパスを指定して「bench get-app」を実行します。
`bench --site SITE_NAME install-app APP_NAME` を実行し、続いて `bench maigrate` を実行して、Bank Reconciliation & Open Banking をインストールし、そのスキーマを適用します。
サイトの ECOSIRE ライセンス設定を開き、ライセンス キーをアクティブ化します。無料の ecosire_connect アプリと ecosire_license_client アプリが必要です。
| 基準 | エコシエール | カスタムビルド | 競合他社 | オドゥー ネイティブ |
|---|---|---|---|---|
| Bank feed / open banking | File import plus optional live open-banking/aggregator feed on a scheduler job | Whatever you have time to build and maintain | Usually file import only, few offer live feeds | |
| Auto-matching engine | Weighted multi-condition `Reconciliation Rule` engine with review queue | Bespoke logic you specify and debug yourself | Basic fixed matching, limited tolerance/fuzzy logic | |
| Suspense / clearing handling | Configurable suspense account + auditable exception report | Only if you design it in | Rarely handled explicitly | |
| Multi-bank / multi-currency | Per-bank rule sets, per-company mapping, FX gain/loss posting | Possible but significant extra build | Often single-bank, weak FX handling | |
| Fit to your banks & COA | Built around your statement formats, banks and chart of accounts | Fully bespoke by definition | Generic; you adapt to its assumptions | |
| Delivery model | Build-to-order, 2-4 weeks from confirmed scope, source in git | Months of in-house dev and QA | Instant download but fixed feature set | |
| Support & updates | Post-go-live support window + v15/v16 upgrade path | Your team owns all maintenance | Varies; often subscription-locked | |
| Source & lock-in | Full git repo handover, no subscription lock-in | You own it, at full build cost | Often closed or license-gated |
This is build-to-order, so there is no instant download. After a scoping call to confirm your banks, statement formats, currencies and match tolerances, typical delivery is 2-4 weeks from confirmed scope. Complex multi-bank open-banking integrations sit at the upper end; a CSV/MT940-only build is usually faster. You get a firm timeline in the quotation.
We build for Frappe/ERPNext v15 and v16, on self-hosted benches or Frappe Cloud. We confirm your exact version during scoping and ship the app tested against it so it installs cleanly with `bench get-app` / `bench install-app`.
Every engagement includes a post-go-live support window for bug fixes and match-rule tuning. Because you receive the full source in a git repository, you can maintain it yourself, or contract ECOSIRE for ongoing support, new bank feeds and version-upgrade compatibility. We do not force a subscription to keep your app running.
Both. We can build file-based import (CSV, MT940, CAMT.053) and/or a live open-banking/aggregator API connector polled on a Frappe scheduler job. Live feed availability depends on your bank or aggregator supporting an API in your region — we confirm what is feasible for your specific banks during scoping.
Matching is driven by a `Reconciliation Rule` DocType where you define ordered, weighted conditions — exact reference, amount within a tolerance, date window, counterparty name similarity and party mapping. The engine scores candidate Payment Entries, Journal Entries, invoices and open GL lines, auto-confirms high-confidence matches, and routes ambiguous ones to a review queue rather than guessing.
Nothing is silently dropped. Unmatched or ambiguous lines are parked against a configurable suspense/clearing account and surfaced in the exception report and review workspace, so open items stay visible and auditable until a human resolves them.
Yes. Each feed maps to a specific Bank Account and Company with its own rule set, and multi-currency is first-class — FX gain/loss on settlement posts to accounts you nominate and bank charges can be auto-allocated. This suits multi-entity groups running several banks in one ERPNext instance.
A build-to-order ERPNext app that pulls bank statements via CSV/MT940/open-banking APIs and auto-matches them against Payment Entries, Journal Entries and invoices using a configurable rules engine. ECOSIRE scopes, builds, installs and supports it for your Frappe/ERPNext v15/v16 site.