Get in touch
OpenCart

LiqPay — Card Payments for OpenCart 2.3, 3.x and 4.x

Приймання оплати карткою Visa/Mastercard, Apple Pay та Google Pay через LiqPay в OpenCart. Автопідтвердження замовлення serviceUrl-вебхуком з перевіркою HMAC-MD5-підпису. Pro — журнал платежів, двоетапна оплата і повернення з адмінки.

Download for free
Version
v1.0.5 (OpenCart 4)
v1.1.1 (OpenCart 3.x)
v1.1.1 (OpenCart 2.3)
Compatibility
OpenCart 2.3.0.x, 3.0.2 – 3.0.5.0 та 4.0.2 – 4.1.x
Platform
OpenCart
LiqPay — Card Payments for OpenCart 2.3, 3.x and 4.x

What each licence includes

Feature Free Pro
Card payment via Visa/Mastercard, Apple Pay, Google Pay through the LiqPay page
Order auto-confirmation via a serviceUrl webhook with HMAC-MD5 signature verification
Transaction status reconciliation when the customer returns (Status API)
Test mode on sandbox keys — a full test payment before signing the contract
The private key is stored encrypted in the database
UAH, USD, EUR currencies; status and geo-zone settings
Request logging to the OpenCart log
Payment log — status, amount, masked card, transaction number; one-click reconciliation
Two-stage payment — AUTH hold and SETTLE capture when the order is fulfilled
Refunds — full and partial, straight from the log

LiqPay for OpenCart is a payment module that accepts card payments (Visa/Mastercard, Apple Pay and Google Pay) through the secure LiqPay payment page. Once the customer pays, LiqPay sends a signed serviceUrl webhook, the module verifies the HMAC-MD5 signature and moves the order to the correct status itself. There’s no manual “paid or not” reconciliation — the status only changes once the money has actually gone through.

The base version is free. Download: liqpay.ocmod.zip (OpenCart 4.x) or liqpay-oc3.ocmod.zip (OpenCart 3.x). Free covers card payment acceptance and webhook-based order auto-confirmation; Pro adds a payment log with status reconciliation, two-stage payment (AUTH + SETTLE), and full and partial refunds straight from the admin panel.

What the admin gets

LiqPay for OpenCart — free version, Pro fields locked
Card payment acceptance works without a key. The payment log and two-stage payment are greyed out, with a line explaining what they offer.
LiqPay for OpenCart — trial period modal
The trial doesn’t switch on by itself: enter an email and a 7-day key arrives instantly in the modal and by mail.
LiqPay for OpenCart — Pro active
With an active key, the transaction log, admin-side refunds and two-stage AUTH/SETTLE payment all open up.

How it works — step by step

  1. At checkout the customer chooses “Card payment (LiqPay)” and confirms the order.
  2. The module builds a signed request and redirects the customer to the secure LiqPay payment page — card, Apple Pay or Google Pay. Card details are entered on LiqPay’s side and never reach your store.
  3. After payment, LiqPay sends a serviceUrl webhook to the extension/liqpay/payment/liqpay.callback route. The module verifies the HMAC-MD5 signature against the raw request body and sets the order to the chosen “paid” status.
  4. When the customer returns to the store, the status is additionally reconciled via the Status API — the order is only completed if the transaction genuinely succeeded.
  5. With Pro: under the two-stage scheme, funds are only held (AUTH), and captured (SETTLE) automatically once you move the order to the “paid” status. Refunds — full or partial — are issued from the payment log.

Pricing

1,490 UAH — one-off purchase. The licence is perpetual: you pay once, and updates and technical support are included in the price. One key covers one domain and its subdomains.

Moving your store to another domain? Deactivate the licence on the old one and activate it on the new one yourself in your account.

The licence is perpetual — nothing expires or switches off. One key covers one domain; if you move your store, deactivate the licence on the old domain and activate it on the new one yourself.

One key covers one domain. If you move your store, deactivate the licence on the old domain and activate it on the new one yourself, without contacting support.

Trial first, payment after. A fresh install is the free version: Pro doesn’t switch itself on, and nothing shuts off after a week. When you want to try Pro, click “Try Pro” in the module settings, enter your email and get a 7-day key (also sent by email). That means you can check the transaction log, AUTH/SETTLE and refunds on your own store before buying — which is exactly why refunds after purchase aren’t offered.

Installation

  1. Admin panel → Extensions → Installer → upload liqpay.ocmod.zip and click “Install”.
  2. Admin panel → Extensions → Payment → find LiqPay and click “+” (this creates the module’s table, event and permissions).
  3. Click “Edit”: enable the module, enter the keys from your LiqPay account. For testing, leave “Test mode” on and enter a pair of keys with the sandbox_ prefix.
  4. There’s no need to register a webhook URL in your LiqPay account — the module passes it with every payment.

Technical requirements

  • OpenCart 3.0.2 – 3.0.5.0 (the liqpay-oc3.ocmod.zip build) or 4.0.2 – 4.1.x (the liqpay.ocmod.zip build)
  • PHP 7.4+
  • LiqPay public and private key — from your LiqPay account; testing requires a separate pair of sandbox_ keys

Under the hood

  • The signature is verified against the raw request body — OpenCart HTML-escapes POST data, so the webhook reads `php://input` directly; otherwise the signature wouldn’t match.
  • Double payment verification: a signed webhook plus a Status API reconciliation when the customer returns.
  • Idempotency — a repeated webhook doesn’t change the status a second time and doesn’t downgrade an already-confirmed order.
  • The private key is encrypted with a key derived from the store’s path and database name — settings copied to another site won’t decrypt.

LiqPay is a trademark of JSC CB “PrivatBank”. This module is an independent integration and is not affiliated with LiqPay or PrivatBank.

Version history

1.0.4 — 2 August 2026
Fixed an underpayment issue: a callback for an amount less than the order total is no longer stored as a successful payment — the order stays unpaid with an underpayment note, and the next callback for the full amount correctly moves it to “Paid”. The licence now survives catcode.com.ua being unreachable: a network error is no longer treated as an “invalid key” response, so Pro doesn’t switch off during an outage (the 14-day grace period finally works). Partial refunds in the log are now totalled cumulatively — the remaining balance is correct after several refunds. The trial only starts on your own click; a fresh install is a clean free version.
1.0.1 — 23 July 2026
Fixed a checkout conflict on OpenCart 4.0.2.x: the geo-zone check no longer loads a catalog model missing in that version and no longer blocks the payment method selection.
1.0.0 — July 2026
First public release.

Frequently asked questions

What do I need to connect it?

The public and private keys from your LiqPay account. Enter them in the payment method settings in the OpenCart admin panel — and your store accepts cards.

Is the order confirmed automatically?

Yes. LiqPay sends a signed webhook to the serviceUrl, the module verifies the HMAC-MD5 signature and moves the order to the paid status only once the payment has actually gone through.

Does the module work on OpenCart 3?

Yes, two builds are included: one for OpenCart 3.0.2 – 3.0.5.0 and one for 4.0.2 – 4.1.x.

How does Pro differ from the free version?

Free accepts payments and confirms orders automatically. Pro adds a payment log with status reconciliation, two-stage payment, and refunds straight from the admin panel.

Are you affiliated with LiqPay or PrivatBank?

No, this is an independent CatCode module built on the public LiqPay API. There is no affiliation with LiqPay or PrivatBank.

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