NovaPay for OpenCart — card payment via online acquiring
Інтернет-еквайринг NovaPay для OpenCart 2.3, 3.x і 4.x: оплата карткою на стороні NovaPay, підписані постбеки, Pro — hold, журнал платежів і повернення з адмінки.
What each licence includes
| Feature | Free | Pro |
|---|---|---|
| Card payment on a secure NovaPay page — the cart and amount are passed into the session | ✔ | ✔ |
| Postback signature verification with NovaPay's public key | ✔ | ✔ |
| Underpayment protection: the amount from NovaPay is checked against the order amount | ✔ | ✔ |
| Status is pulled from NovaPay when the customer returns to the store | ✔ | ✔ |
| Sandbox and key verification with one button | ✔ | ✔ |
| Separate order statuses for pending, paid, declined and refunded | ✔ | ✔ |
| Ukrainian and English localisation of the admin and storefront | ✔ | ✔ |
| Two-stage payment with a hold | — | ✔ |
| Payment journal with bank status and order status | — | ✔ |
| Refunds from the admin, full and partial | — | ✔ |
| Reconcile the session status with NovaPay with one button | — | ✔ |
NovaPay Acquiring is a NovaPay online acquiring module for OpenCart 2.3, 3.x and 4.x. The customer pays by card on a secure NovaPay page, and the store receives a signed notification (postback) and moves the order to paid automatically — no manual statement reconciliation needed.
The base version is free. Accepting payments, verifying the postback signature and reconciling status on customer return all work without a licence key. Pro features (two-stage payment with a hold, a payment journal, refunds and status reconciliation from the admin) are unlocked with a licence key — buy below.
Live demo
You can try the module before buying — a separate demo store for each version: OpenCart 4.x, OpenCart 3.x, OpenCart 2.3. The demos run in the NovaPay sandbox: no real money moves.
How it works
At the payment step the customer clicks “Pay by card” — the module opens a NovaPay payment session and takes them to the payment page with the order amount and cart. After payment, NovaPay sends a postback signed with its key; the module verifies the signature, checks the amount against the order and sets the status to “Paid”. If the postback doesn’t arrive (firewall, maintenance) the status is pulled as soon as the customer returns to the store, or via the “Reconcile” button in the journal.




What’s in the free version
- Card payment on a secure NovaPay page — the cart and amount are passed into the session in full.
- Postback signature verification with NovaPay’s public key: a forged request cannot move an order to paid.
- Underpayment protection — the amount from NovaPay is checked against the order amount, a smaller amount is not accepted as payment.
- Reconciliation on customer return: the status is pulled from NovaPay, not guessed.
- The api-qecom sandbox for setting up and checking keys with one button.
- Separate order statuses for payment pending, paid, declined and refunded.
- Ukrainian and English localisation of the admin and storefront.

What Pro adds
- Two-stage payment (hold). Funds are blocked on the card and captured automatically when you move the order to paid — handy if the item still needs to be picked or checked for stock.
- Payment journal. All NovaPay payments in one list: amount, refunds, session status and order status, masked card, transaction ID.
- Refunds from the admin — full and partial, without going into the NovaPay dashboard.
- “Reconcile” — pull the current session state from NovaPay for a specific order when the postback has gone missing.

What you need to get running
An online acquiring agreement with NovaPay: they issue a merchant ID and accept your public key part, and give you their public key for verifying postbacks. Live and test keys are different. The module only accepts payment in UAH: if the cart is in another currency, the payment method simply isn’t shown, so the wrong amount is never charged.

Installation
OpenCart 4.x — Extensions → Installer → upload the zip, then Extensions → Payments → NovaPay → “Install” and “Edit”. OpenCart 3.x — the same way, via Extensions → Installer. OpenCart 2.3 — the built-in installer requires FTP to be enabled, so it’s simpler to unpack the contents of upload/ into the store root, then Extensions → Payments → NovaPay → “Install”.
Questions and answers
Can I start without a licence? Yes. Accepting payments and postback confirmation work in the free version without limits on turnover or order count.
Does the licence need renewing? No. For OpenCart the licence is perpetual: one payment, and the Pro features stay with you. Only the 7-day trial ends — after it Pro switches off and the free version keeps working.
One key for all three OpenCart versions? Yes, the licence is shared across the 2.3, 3.x and 4.x builds — two activations, so a live store plus a test one.
Why does an order stay in “awaiting payment”? Most often the postback isn’t arriving. Check that the postback URL from the settings is reachable from outside (firewall, Cloudflare, basic auth) and that you’ve entered NovaPay’s actual public key — without it notifications are deliberately rejected.
Why the store needs this
NovaPay is Nova Poshta’s acquiring service, and for a store that already ships with Nova Poshta this is the shortest path: one counterparty for both delivery and payment, one reconciliation, one manager on the other end.
Technically it’s still a regular payment gateway, and it carries the usual risks: the postback may not arrive, the customer may close the tab on the bank’s page, and the order has to close correctly either way.
Pricing
The Pro licence is 990 UAH, for one domain. The licence is perpetual: you pay once, with no annual fees.
The free version, meanwhile, isn’t limited by time or by the number of payments: accepting payments, signature verification and reconciliation all work without a key.
Under the hood
The postback signature is verified before the module does anything with the order — that’s not optional. After that, the status isn’t taken from the postback’s word: the module reconciles it with a request to NovaPay and only then moves the order.
That’s exactly why the order still closes when the postback gets lost along the way, and a repeated postback doesn’t create a duplicate.
The OpenCart core isn’t patched — everything runs through standard events, so store updates never overwrite the module.
Version history
1.0.0 — card payment acceptance via NovaPay, postback signature verification, status reconciliation with the bank; in Pro — two-stage payment with a hold, a payment journal and refunds from the admin.
Questions about the module?
Message us on Telegram — we reply within the working day. We will help with setup, compatibility and key activation.
No reviews yet. Be the first — right below.
Leave a review
Reviews are moderated before publication, which usually takes up to 24 hours.
No questions yet. Ask one — we answer within 24 hours.
Ask a question
We usually reply within 24 hours during working hours.
Buying the module
—