Get in touch
  • WordPress
  • Payments
  • v1.0.5

IBAN Smart Invoice — QR + Monobank auto-detect for WooCommerce

Pay-to-IBAN plugin for WooCommerce: an EPC QR code and Monobank/Privat24 buttons on the Thank You page. Pro detects the incoming payment itself and closes the order.

Download Free
Pro · one-year licence The more sites, the less each one costs
PHP
8.2 or newer
Version
Pro v1.0.5
Free v0.2.8 (wordpress.org)
Licence
two sites, annual
Trial
7 days, no card, one per site
Updated
29 October 2026
Or all 173 Pro modules with All Access — 4 990 ₴ / year

The module in action — 44 sec

Clear even without sound: Ukrainian subtitles

What Free has,
and what Pro adds

The free version works with no time limit. Pro adds the rest of the features in the table.

Feature Free Pro
An EPC SCT (BCD v002) QR code to the NBU standard ✔ ✔
IBAN / amount / reference on the Thank You page + copy buttons ✔ ✔
A "Open in Monobank" / "Open in Privat24" deep link ✔ ✔
E-mail instructions with the payment details in the "On-hold" e-mail ✔ ✔
HPOS compatibility + Cart/Checkout Blocks ✔ ✔
Ukrainian and English localisations ✔ ✔
Automatic order closing via a Monobank webhook — ✔
An "IBAN Payments" admin log (Unmatched / Matched / Partial / Overpaid) — ✔
Manually linking a payment to any order in one click — ✔
Handling overpayments and partial payments — ✔
A live payment status on the Thank You page (no reload) — ✔

What it looks like

Thank You page with a QR code and IBAN details
After placing the order, the customer sees the QR code, an “Open in banking app” button, and the payment details with copy buttons. In Pro, below it there’s a “Waiting for payment” indicator that changes itself to “Received”.
Admin IBAN Payments — All / Pending / Unmatched / Matched / Partial / Overpaid tabs
Pro: the “IBAN Payments” page — the full payment history with “Pending / Unmatched / Matched / Partial / Overpaid” tabs. A payment with no reference is linked to an order with one click.
Settings page: IBAN, recipient, Monobank token, toggles
Settings on a single page: IBAN, recipient, EDRPOU/tax ID, a payment-reference template, a Monobank token (encrypted), and toggles for the QR code and bank buttons.

The trial starts when you ask

A fresh install is the free version, nothing switches on by itself. The “Try Pro for 7 days” button → e-mail → the key right in the window and by e-mail.

One key — two sites

Moving the store? Unbind the licence on the old domain and activate it on the new one yourself. For studios — keys for 5 or 25 sites, or unlimited.

Technical requirements

  • WordPress 6.5+, WooCommerce 8.0+
  • PHP 8.2+ (required by the QR-code generation library)
  • A Ukrainian IBAN (UA format)
  • For Pro — a Monobank Personal API token, obtained for free in the Monobank app

Version history

v1.0.5 Current 29 October 2026

The licence description in the plugin: one key covers two sites, your store and a staging copy.

v1.0.4 27 October 2026

An amount with kopiykas in the payment QR code now always has two digits after the point (99.50, not 99.5), as the National Bank of Ukraine rules require.

v1.0.3 24 September 2026

Premium now activates next to the free copy from WordPress.org without a fatal error (both used to load the same library autoloader).

All versions (10)
v1.0.2 24 September 2026

The payment method now shows in the WooCommerce block checkout under the same conditions as in the classic one.

v1.0.1 15 September 2026

A purchased license stays yours: the Pro features keep working after the license term ends — the term covers updates and support.

v1.0.0 11 August 2026

The Premium build: automatic payment detection, the “IBAN Payments” log, partial payments and overpayments, and a live status on the thank-you page are now in one plugin instead of a separate add-on.

v0.2.2 16 July 2026

A full Ukrainian interface translation added to the package (114 strings, uk locale).

v0.2.1 15 July 2026

The plugin was published in the official WordPress.org directory under the slug catcode-iban-smart-invoice.

v0.1.1–0.1.5 May 2026

The Pro line: a Monobank webhook + Order Matcher (matching by reference and amount), an admin “IBAN Payments” log with tabs and one-click linking, handling partial payments with a hint on…

v0.1.0 15 May 2026

Initial release: a QR code to the NBU standard (EPC SCT, BCD v002), Monobank/Privat24 deep-link buttons, copy buttons for the payment details, a WC payment gateway, Cart/Checkout Blocks,…

Frequently bought with IBAN Smart Invoice

4 modules in one order — 40% cheaper than separately

“Store starter” bundle IBAN Smart Invoice Nova Poshta Premium Mono Acquiring Telegram notifications and Viber/SMS for customers Need more — all 173 modules in All Access for 4 990 ₴.
2 390 ₴ / year instead of 4 060 UAH bought separately
Buy the bundle →

Full module description

IBAN Smart Invoice is a WooCommerce plugin that shows an EPC QR code for payment and Monobank/Privat24 deep-link buttons right on the Thank You page. The customer scans the QR code in their banking app — the payment details fill in by themselves. The Pro version also automatically detects the incoming payment via the Monobank Personal API and closes the order itself.

It can be downloaded for free. It’s a single build: the QR invoice, payment details, bank buttons and the customer e-mail all work with no key, and Pro features are visible in place — greyed out, with an explanation of what they give you. There’s a separate, simplified version in the WordPress.org directory: wordpress.org/plugins/catcode-iban-smart-invoice — it has no automatic detection at all.

How it works, step by step

  1. The customer chooses the IBAN Smart Invoice method at checkout (its default title is “Оплата на IBAN/картку (Monobank / Privat24)”).
  2. On the Thank You page they see the QR code, deep-link buttons and the payment details.
  3. They scan the QR code in their banking app — the transfer fills in automatically, and all that’s left is to confirm it.
  4. Pro: within 5–30 seconds a Monobank webhook arrives, the plugin matches the amount and reference — the order moves to “Processing” by itself.
  5. Free: you see the transfer in your bank and move the order to “Processing” manually.

Under the hood

  • The Monobank token is encrypted via sodium_secretbox with a key derived from wp_salt('auth') — it’s never stored in the database in plain text.
  • One build instead of two plugins: Pro features are gated by a server-side licence, not a separate archive. The key is checked on the CatCode server.
  • The Order Matcher matches payments by reference and amount; partial payments are accumulated, and a “Received N UAH of M UAH” hint appears on the Thank You page.
  • Passed the Plugin Check audit — $wpdb->prepare(), escaped admin output, nonce checks; the free version of the plugin has been approved by WordPress.org reviewers.

How to install

  1. Plugins → Add New → Upload Plugin → choose iban-smart-invoice-1.0.3.zip → Install → Activate.
  2. If the simplified version from the WordPress.org directory is installed, deactivate it — this build includes everything it does. Settings and orders are kept.
  3. WooCommerce → Settings → Payments → IBAN Smart Invoice → enable the method, enter the IBAN, recipient, EDRPOU/tax ID.
  4. Premium: in the “Premium licence” block, paste the key and click “Activate licence” — or “Try Premium free for 7 days”.
  5. Paste in the Monobank Personal API token and click “Connect Monobank” — the bank will start sending statement data, and orders will start closing themselves.

Questions
about the module

Didn't find the answer? Message us on Telegram and we'll reply within a business day.

@catcode_support Setup, compatibility, activation
Is it safe to store the Monobank token?

Yes. The token is encrypted via sodium_secretbox with a key derived from wp_salt('auth'). The admin field only shows that a token is set, without revealing its value.

What if the customer overpays or pays partially?

Pro: an overpayment is recorded in meta with a note to check, and a partial payment is accumulated — the order waits for the remainder, and the customer sees "Received N UAH of M UAH". Free: you handle it manually from the bank statement.

What if the customer pays with no reference?

Pro: the payment lands in the "Unmatched" tab on the IBAN Payments page — you link it to the order with one click. Free: you reconcile the bank statement manually.

Can I test on staging and then move to production?

Yes. On staging, click "Deactivate on this site" — the slot frees up instantly, and you enter the key on production. No need to contact support.

Can I get a refund if it doesn't suit me?

There's a 7-day free Pro trial before you buy — you test every feature and only then decide. Details are in the Refund Policy.

Not quite what you are looking for?

We build custom modules for WordPress, WooCommerce, OpenCart and Shopify. Tell us about the task and we'll prepare an estimate.

Order a custom module