Get in touch
Payments · WordPress

Mono Acquiring — monobank card payments for WooCommerce

Оплата карткою через еквайринг monobank у WooCommerce: рахунок, редірект на сторінку банку, автопідтвердження вебхуком з ECDSA-підписом. Pro — журнал платежів, hold, повернення, оплата в 1 клік і автофіскалізація для ПРРО.

Download for free
Version
v1.1.1
Platform
WordPress
Mono Acquiring — monobank card payments for WooCommerce

What each licence includes

Feature Free Pro
Visa/Mastercard payments on the monobank page
Automatic order confirmation by a webhook with ECDSA signature verification
Fallback status request when the customer returns
Test mode — a free test token, no bank agreement needed
Classic and block checkout (Checkout Blocks), HPOS compatible
Cart contents (basketOrder) passed through for receipts
Request logging in WooCommerce
A payment log — amount, statuses, invoice, masked card, RRN, bank reconciliation
Two-stage payment (hold) — holding funds and charging on order fulfilment
Refunds — full, partial and repeated, right from the order
Saved card — one-click repeat payments via a monobank wallet token
An auto-fiscalisation hook — fires an event for PRRO plugins (Checkbox, Vchasno.Kasa, Cashalot, etc.) after payment

Mono Acquiring for WooCommerce is a payment plugin that connects monobank acquiring to your store. The customer pays for the order by Visa or Mastercard on monobank’s secure page, and the plugin confirms payment itself: the bank sends a webhook, the plugin verifies its ECDSA signature and moves the order to the right status. No manual payment reconciliation — the status in WooCommerce always matches the status at the bank.

The basic version is free. Download: mono-acquiring-for-woocommerce-1.1.0.zip. A Pro licence unlocks a payment log with status reconciliation, two-stage payment (hold), one-click refunds, saved customer cards, and an auto-fiscalisation hook for PRRO.

What the admin gets

Mono Acquiring gateway settings in WooCommerce: tokens, payment type, statuses, Pro options
A single settings page under WooCommerce → Payments: live and test tokens, payment type (charge immediately or hold), order statuses, logging and Pro options. The webhook URL is set automatically with every payment — nothing to copy into the bank’s dashboard.
Pro payment log: success / hold / refund / decline statuses, masked card, RRN
The payment log (Pro): every transaction with its amount, monobank and WooCommerce status, invoice number, masked card and RRN. The reconciliation button pulls the current status from the bank, and refunds are done right from the log row.

How it works, step by step

  1. At checkout, the customer chooses “Card payment (monobank)” and confirms the order.
  2. The plugin creates an invoice via the monobank API and redirects the customer to the bank’s secure payment page. The cart contents (basketOrder) are sent along with the invoice, for receipts and fiscalisation.
  3. After payment, monobank sends a webhook with an ECDSA signature (X-Sign). The plugin checks the signature against the merchant’s public key and moves the order to “Processing” or “Completed”.
  4. If the webhook is delayed, when the customer returns to the store the plugin makes a fallback status request itself — the order won’t get stuck waiting.
  5. If payment fails, the customer returns to the store and the cart is kept — they can try again.

Pricing

890 UAH — a one-year licence. A year of updates, technical support and access to all Pro features. No auto-charges: renewal is always manual, and we don’t store card details.

You can take a longer term straight away — the longer, the cheaper per year:

  • 1 year — 890 UAH
  • 2 years — 1,690 UAH (−5%, 845 UAH/year)
  • 3 years — 2,350 UAH (−12%, 783 UAH/year)
  • 4 years — 2,920 UAH (−18%, 730 UAH/year)
  • 5 years — 3,340 UAH (−25%, 668 UAH/year)

When the term runs out, only updates and new features stop — Pro features keep working, the free version keeps running, and settings and data stay put. To reopen Pro, just renew the licence in your account. We’ll remind you by email 14, 7, 3 and 1 day before it ends.

One key, one domain. Moving your store? Deactivate the licence on the old domain and activate it on the new one yourself, no need to contact support.

Trial first, payment later. A fresh install is a clean free version: nothing Pro switches on by itself. You start the 7-day trial with the “Try Pro for 7 days” button in the gateway settings — enter your email and get a real key straight away. You can check the operations log, hold and refunds on your own store before buying. That’s exactly why refunds after payment aren’t offered — you see the module in action before you pay.

Technical requirements

  • WordPress 6.2+
  • WooCommerce 7.0+ (tested up to 10.7)
  • PHP 7.4+
  • A monobank token: a live one is issued in the merchant dashboard after signing an agreement; a test one is created free at api.monobank.ua — no agreement needed for testing

Under the hood

  • ECDSA webhook signature verification — every callback from the bank is validated via the X-Sign header (base64 ECDSA-SHA256) against the merchant’s public key. Faking a payment confirmation is impossible.
  • PSR-4 autoloading — the CatCodeMonoAcquiringWC namespace, no global clutter in WordPress.
  • Declared HPOS and Checkout Blocks compatibility via WooCommerce’s FeaturesUtil — the plugin won’t block enabling the new order tables.
  • Fallback status reconciliation — if the webhook doesn’t arrive (firewall, delay), the status is pulled by a direct API request when the customer returns.
  • The 7-day trial is issued by the licence server at your click: once it ends, Pro features simply switch off — the store keeps accepting payments.

How to install

  1. Download mono-acquiring-for-woocommerce-1.1.0.zip via Plugins → Add New → Upload Plugin and activate it.
  2. Open WooCommerce → Settings → Payments → Mono Acquiring.
  3. Enable the method and enter a token — a test one for checking, or a live one for real payments.
  4. Save. The plugin sets the webhook URL automatically on the first payment.
  5. For Pro features, after purchase paste the licence key from the email into the “Pro licence” field.

Version history

1.1.0 — August 2026
Free is really free: a fresh install no longer switches Pro on by itself, the trial only starts with the “Try Pro for 7 days” button. Pro features stay visible in place — greyed out, with a “Pro” badge and a line explaining what they give you. The licence is checked on the CatCode server with a 14-day grace period. The payment log no longer disappears from the menu without a licence, a “Test token” button was added, and merchant tokens are now stored encrypted. Fixed: a race between the webhook and the customer’s return could process payment twice (even with a lock, on HPOS), a late “processing” callback could overwrite the invoice’s final status, a partial refund closed the order as fully refunded, and the invoice currency was taken from the store instead of the order.
1.0.0 — July 2026
First release: creating an invoice and redirecting to monobank’s payment page, a webhook with ECDSA signature verification, a fallback status request, refunds, two-stage payment (hold), Checkout Blocks and HPOS support, test mode with a separate token.

Frequently asked questions

Do I need an agreement with monobank?

For real payments, yes — a live token is issued in the merchant dashboard. For testing, a free test token from api.monobank.ua is enough.

Which currencies are supported?

The main one is hryvnia (UAH). USD and EUR are also handled if they're enabled for your merchant.

Does the plugin break my checkout or theme?

No. It's a standard WooCommerce payment gateway: it only adds a payment method to the list. It works with both the classic checkout and Checkout Blocks.

What about "Payment in instalments"?

It's enabled in the monobank merchant dashboard and needs no changes in the code or plugin settings.

Can I move the licence to another domain?

Yes. The licence works on one active domain, and you can move it yourself: in the module's settings on the old domain click "Deactivate" — the slot frees up instantly, then activate the same key on the new domain. No extra charge; if you no longer have access to the old site, contact us and we'll free the slot manually.

What happens when the licence ends?

Only Pro features switch off — accepting payments and confirming orders keep working for free, settings and data stay in place. Renewing turns Pro back on with the same key. We'll remind you by email 14, 7, 3 and 1 day before it ends.

Questions about the module?

Message us on Telegram — we reply within the working day. We will help with setup, compatibility and key activation.

@catcode_support

Not quite what you are looking for?

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

Order a custom module