All modulesMagento 2 moduleVersion 1.0.3 · 15 Oct 2026

Bank payment reconciliation

The module reads the bank statement (CAMT.053 or CSV), finds the order for every credit and issues the invoice for an exact match. What is not certain waits in a review list with one click. Every action is written to the order history.

€590 + VAT · one-off licence, no subscription

Bank payment reconciliation
About the module

What it does.

“Every morning I open online banking and look for who paid which order. Then I issue the invoices by hand.” Anyone who sells with payment by bank transfer (UPN QR, Hub3, plain transfer) does this every day.

What it looks like in practice

In the morning the bank statement arrives, by e-mail or as a file you upload. The module reads 12 credits and shows a preview: “9 match, 3 for review”. For the nine, the reference and the amount equal the order, so they get an invoice, the orders move to Processing and the customers get “Payment received”. One payment is 40 EUR for a 50 EUR order: the module does not invoice it by itself, it shows a partial payment and asks whether you wait for the rest. One transfer has no reference, but the name and amount fit exactly one order: a suggestion at 80 %, confirm with one click. Nothing happens without a trace: every action is in the order history.

What changes

  • The statement reads itself. CAMT.053 XML of any version and CSV. The module recognises format, character set and columns; if it cannot recognise the columns, you tell it once and it remembers.
  • A preview before anything is written. You see how many credits the file has, how many duplicates and what would happen to each. Debits are not stored.
  • It finds the order. By reference (SI00, HR00, RF or just the order number, also in the text of the transfer), amount, date and payer name. For every suggestion you see why the module suggests it.
  • An invoice only when it is certain. Auto-invoice is off by default; turn it on after you have checked a few imports. The invoice is issued only if reference, amount and payment method match exactly one open order.
  • Partial payments and overpayments. Payments for the same order are summed up and the invoice is created once the order is covered. An overpayment invoices the order amount, and you see the difference until you mark it as done.
  • A payment for a canceled order. Its own state, no automatic changes. You decide: refund or a new order.
  • Statements arrive by themselves. By upload, from a dedicated mailbox (no PHP IMAP extension, verified certificate) or from a server folder where your bank automation drops them.
  • Careful with personal data. The payer’s IBAN is encrypted, source files are deleted after the time you set (14 days by default), the payer’s name is removed after the time you set (24 months by default), roles without the permission see the payer as “M**** N****”. The module is a controller's tool: you are the controller of the payers' personal data.
  • No duplicates. You can upload the same file twice and statements can overlap: every payment is recognised and stored once.

Who it is for

For shops whose customers often pay by invoice or UPN QR: toner, office supplies, B2B, anything where there are so many transfers that searching the statement takes an hour or more every day. It pairs well with the Magelan UPN payment slip and Hub3, because it understands their reference.

How you set it up

In Stores › Configuration › Magelan › Bank reconciliation you enter the shop’s IBAN and pick the payment methods to reconcile. Then in Sales › Operations › Bank reconciliation › Upload statement you upload one statement and read the preview. The mailbox and the server folder can follow later. If you like, we do the first import together and check that your bank reads correctly.

Good to know

  • The parsers follow public standards (ISO 20022 CAMT.053) and typical online-banking exports. They are tested on prepared sample files; we will publish the list of banks tested with real statements as soon as we have one. The preview shows what the module read before anything is written.
  • Gmail and Microsoft 365 mailboxes usually need an app password or OAuth. We recommend a dedicated mailbox for statements.
  • Flik and card payments are not on the bank statement and are not part of the module.
  • The module itself does not stop the reminder or cancel modules from canceling an unpaid order before the money arrives; such a payment gets the state “Cancelled order” and waits for your decision. Once the invoice is issued, they no longer cancel the order.
  • The module is not an archive of statements. Source files are deleted after 14 days (configurable, also at once) and the payer's name and IBAN are removed after 24 months (configurable); amount, date and the link to the order stay, and the invoice in Magento stays. Keep the original statements in your bookkeeping as the law requires (in Slovenia generally 10 years). Agree the anonymisation period with your accountant.
  • Verified with real CAMT.053 statements from Delavska hranilnica and Intesa Sanpaolo (former Banka Koper): 900+ incoming payments, 780+ SI00 references recognised. Other banks and CSV exports follow ISO 20022 and common layouts and are tested with synthetic files.

Want it in your store?

Buy the module and we install it for you: free of charge for existing Degriz customers, by time spent for others. Building a new store? Add it to your project in the Konfigurator.

Screens

Take a look at every step.

www.degriz.eu
Upload a bank statement (CAMT.053 or CSV): step one of three
Upload a bank statement (CAMT.053 or CSV): step one of three
www.degriz.eu
Import preview: credits, duplicates, match suggestions and unmatched payments
Import preview: credits, duplicates, match suggestions and unmatched payments
www.degriz.eu
The list of payments with status, confidence and the linked order
The list of payments with status, confidence and the linked order
www.degriz.eu
Settings (Stores > Configuration > Magelan)
Settings (Stores > Configuration > Magelan)
Installation

How to install it.

The module is in development, so there are no installation instructions yet. We will publish them on this page when it is ready.

Technical details

Compatibility.

Just the facts.

Code
degriz_bankrec
Platform
Magento 2
Licence
One-off
Change log

Version 1.0.1 · 14 Oct 2026

  • Fix: the reference SI99 (payment without a reference) is no longer read as a real reference, so payments match orders more accurately.
  • Tested with real statements from two banks.

Version 1.0.0 · 13 Oct 2026

  • First release: incoming payments from a bank statement are matched with open orders automatically.
  • Statements are uploaded in the admin, received by email (IMAP) or dropped into a server folder; CAMT.053 and CSV formats are supported.
  • You see a preview before the import, and payments already imported are not duplicated.
  • On an exact match the invoice is issued automatically (off by default), uncertain payments wait for your review.
  • Partial payments, overpayments and a payment-received notice to the customer.
After purchase

You are not left alone.

We develop and maintain the module ourselves, so you write to the people who know it line by line.

Installation

For existing Degriz customers we install the module free of charge. For other buyers we charge the installation by time spent.

Support

A bug that repeats on a clean Magento with the Luma theme we fix free of charge. Settings, customisations and other themes by time spent.

Updates

The licence includes updates for the Magento versions on the supported list.

We agree on a date after reviewing the request. User guides in the guide centre

Bank payment reconciliation

€590 + VAT

One-off licence for one production installation of Magento, no subscription.

Write to us

For existing Degriz customers we install the module free of charge, for others by time spent. We agree on a date after reviewing the request.

Frequently asked questions

Questions we get most often.

Which banks do you support?

The module reads the standard CAMT.053 format (all versions) and CSV from online banking. It is not tied to a particular bank. It has been tested on prepared samples; we will publish a list of banks tested with real statements once we have one. The preview before import shows what the module read before anything is written.

Does the module issue the invoice by itself?

Only if you switch it on. Automatic invoicing is off by default: the module matches the payments and shows them for review, and the invoice is created with one click. Once you have reviewed a few imports, you can switch automatic invoicing on; it issues an invoice only if the reference, the amount and the payment method match exactly one open order.

What happens if the customer pays too little or too much?

Too little: the module shows a partial payment and does not issue the invoice. You choose whether to wait for the rest or invoice the whole order. Too much: the invoice is for the order amount and the difference stays visible until you mark it as handled. Partial payments for the same order are added up automatically.

What if the customer paid but the order was already cancelled?

The payment gets a special status and nothing changes on the order. You decide: a refund or a new order.

Do I have to upload statements by hand?

Not necessarily. Besides manual upload, statements can arrive by e-mail to a dedicated mailbox or to a folder on the server where your bank's automation drops them.

Do I need a special PHP extension for e-mail?

No. The module reads the mailbox itself, without the IMAP extension, and verifies the server certificate. Gmail and Microsoft 365 usually require an app password or OAuth; we recommend a dedicated mailbox for statements.

What if I upload the same statement twice or statements overlap?

Every payment has its own key and is stored once. The module recognises the same file and tells you when it was imported.

What does the module store about payers and for how long?

Only incoming payments: name, encrypted IBAN, purpose, amount and date. Outgoing payments are discarded after reading. Source files are deleted after 14 days (configurable); the payer's name, IBAN and purpose are removed after 24 months (configurable); amount, date and the link to the order stay. The module is not an archive of statements: keep the originals in your bookkeeping as required by law, generally 10 years in Slovenia. Roles without the permission see the payer hidden.

Does it work with Flik or card payments?

No, those payments are not on the bank statement. The module is for bank transfers: UPN QR, Hub3 and plain transfers.

Does it work with the UPN payment order and Hub3 modules?

Yes, it understands their reference (SI00 and HR00 with the order number). It also works with other payment methods that you choose in the settings.

What if the module does not recognise my CSV columns?

A screen opens where you choose once which column is which, and the module remembers the layout.

Do you help with installation and the first import?

Yes. We do the installation and a test on a statement from your bank by the hour; at the first import we check together that your bank is read correctly.

Anže Voh, Degriz

Questions about this module?

Write to us and we will answer personally.

[email protected] · 040 807 231

Bank payment reconciliation€590 + VATAdd to cart

Online store configurator

Redesigning your store or building a new one?

Put your own quote together in the configurator and see the price straight away. A few minutes, no obligation, no meeting needed.

  • Price straight away
  • No obligation
  • Straight to the developer
Open the configurator

Free and with no obligation