WooCommerce Payments – BACS Extended
**Direct Bank Transfer (BACS) for WooCommerce** is a copy of the built-in WooCommerce “Direct bank transfer” (BACS) gateway, extended with a complete **payment reconciliation** workflow. Customers pay by bank transfer using their order number as the reference; you then import the incoming payments of your bank account and the plugin matches them against the open orders, so you can mark them as paid — per order or all at once.
It reads bank statements in **CAMT.053** (ISO 20022 XML) and in **CSV** with a flexible, user-defined column mapping. It is fully **HPOS** compatible and works in the classic and the **block** checkout.
Features
- **Extended BACS gateway** — a self-contained bank-transfer payment method (separate from core BACS) with bank account details, instructions and a clear payment reference.
- **Payment reconciliation** — import incoming payments and match them to open orders automatically.
- **Works with standard WooCommerce BACS** — optionally reconcile and book orders paid with the built-in WooCommerce *Direct bank transfer* (BACS) gateway too, so existing BACS orders are covered without switching payment method.
- **CAMT.053 import** — robust, namespace-agnostic ISO 20022 parser (works with camt.053 .02 / .08 / .14 and real-world bank quirks); only incoming credits are imported.
- **CSV import with a mapping editor** — the CSV has no fixed structure, so you describe it: which column holds the reference, the amount, the date, etc.
- **Reusable CSV profiles** — save a mapping per bank and reuse it on every import; an editor analyses a sample CSV and shows the column positions.
- **Automatic matching** — payments are matched by the order number found in the reference and by the amount (with a configurable tolerance).
- **Review list** — see every open order with its assigned payment, plus all imported payments and their status.
- **One-click booking** — mark a single order as paid, or book all matched payments at once.
- **Manual assignment** — assign a payment to an order by hand when the automatic match is not possible.
- **Duplicate protection** — the same payment can not be imported twice.
- **HPOS ready** — uses the WooCommerce order CRUD throughout; no direct database hacks.
- **Block checkout support** — appears in the modern WooCommerce block checkout as well as the classic checkout.
- **Order list column** — shows the BACS-X payment status (paid / awaiting) in the order list.
- **Internationalised** — full text-domain support; German and English documentation included.
