• Integrations · LiqPay API

LiqPay integration: card payment on the site

The integration of LiqPay is the connection of the payment gateway so that the buyer pays by card simply at the checkout, and the order itself changes to the paid status. There are four jobs here: the gateway itself, callback processing with signature verification, behavior in case of interrupted payment and refund from admin. The "pay" button is the easiest of them, and that's why the rest are usually not done. The term is 3-10 working days after receiving the keys. We name the amount after a free checkout check.

See how it works
Price
after a free audit
Guarantee
30 days after project sign-off
What do we watch first?
a real checkout, not the logos of payment systems in the footer
after a free audit
Price
30
Guarantee

days after project sign-off

a real checkout, not the logos of payment systems in the footer
What do we watch first?
free, 1-2 working days
Checkout Checkout
3-10
Connection period

working days after receiving the keys

status after payment and scenario of interrupted payment
Breaks most often
test mode plus one live payment with refund
How we accept work
30
Warranty period

calendar days for completed work

Who it's for

Situations where this service delivers results

Scenario 1 of 4

The order is made on the website, and the money is taken in hand

The buyer clicked "order", the manager sent the details to the messenger, then waits for the receipt screen and interrupts the status in the admin. For ten orders it is tolerable, for hundreds - a separate position. A checkout card removes three steps from this chain and transfers the reconciliation from the manager to the gateway callback.

We'll review your situation in a free audit
Cases

Tasks and results in numbers — all metrics measured by us

online store of natural cosmetics on beekeeping products

Task
Allow the buyer to pay by card immediately, instead of waiting for an invoice from the manager, and do not lose page speed at the same time.
Solution
Store on OpenCart: payment gateway, payment by PrivatBank card and post-payment, delivery by Nova Poshta. Markup Store, Organization, ContactPoint, work schedule and search action.
Result
Measured on 07/31/2026: First server response 126.3ms, full HTML load 172.4ms at 196.3KB - the fastest of the 24 stores measured. Catalog 81 product pages. Found defects: the site map has 271 entries for 116 unique addresses, some products are duplicated 2-4 times; analytics is outdated - there is Universal Analytics, and there is no GA4 property at all, that is, there is nowhere to transfer the purchase event.

online store of the official seller of garden tools

Task
Serve at the checkout both a retail customer with a card and a company with an invoice, adding payment in installments.
Solution
An OpenCart store with four payment methods - card gateway, cashless invoice, cash on delivery and payment in installments - and two carriers. HSTS enabled, two language versions.
Result
Measurement 07/31/2026: four payment methods and two carriers, HSTS with max-age 31536000. The site map has 1,300 unique addresses — about 1,213 product cards and about 70 categories. First server response 625ms, full download 752.5ms at 350.4KB. Defect found: 4,236 sitemap entries for 1,300 real addresses — an average of 3.3 duplicates per address.

the official online store of garden tools of the world brand

Task
Keep eight payment methods in one checkout — from card to cashless with VAT and purchase in installments — and do not break the registration process.
Solution
Shop on OpenCart using HTTP/2 with HSTS enabled: card gateway, purchase in installments, payment by details, cashless with VAT, cash on delivery, installments. Four delivery services with signed logos.
Result
Measurement 07/31/2026: eight payment methods and four carriers — the most complete set among measured stores. The site map has 8,690 unique addresses, of which 8,609 are pages. The first response is 789.4 ms, and in those milliseconds there is a 301 redirect to the language branch. Found defects: 33,493 entries in the site map for the same 8,690 addresses; JSON-LD only Organization and ContactPoint.
What's included

Complete list of work and what you get as a result

  • We connect LiqPay at the checkout: Visa, Mastercard, Apple Pay, Google Pay and Privat24 go through one gateway, a separate module for each method is not needed
  • We process a callback with signature verification — the status of the order changes by itself, without a manager in the bank’s office
  • We describe the scenario of an interrupted payment: the buyer returns to the site with a saved basket and can try again
  • We make successful and unsuccessful payment pages, where it is written what to do next, instead of "an error occurred"
  • We enable refunds from the admin — full and partial, without correspondence with gateway support
  • We establish statuses for payment: pending payment, paid, canceled, returned — and record what everyone is doing
  • We take the keys to the variables of the environment, we leave the test mode with a switch for further checks
  • We transfer the purchase event to GA4 with the amount and the order number - otherwise there is nothing to rely on for advertising
  • We chase away a live payment for a real amount and immediately return it: the test mode does not check the combat keys
  • We are writing instructions to the manager: where to view the payment, how to issue a refund, what to do with "the payment has been suspended"
  • The warranty period is 30 calendar days for the completed works
When this service isn't right

What's not included — so there are no surprises at delivery

  • The contract with the payment provider and passing the check is drawn up by you
  • Acquisition commissions and tariff agreements with the bank
  • Legal texts: offer, refund terms, privacy policy
  • Accounting reconciliation of payments and fiscalization of checks is a separate scope of work
  • Other payment systems in the same checkout are counted separately
Process steps

Transparent stages with approval at every step

Total duration:3–10 days

  1. Checkout by the buyer

    1-2 working days

    We put the goods in the basket, check out as a guest and remove the real list of payment and delivery methods. We compare it with the information page and fix the discrepancies.

  2. Keys, statuses, test mode

    1 working day

    We accept the public and private keys, take them to the environment variables, set up order statuses for payment and agree on which status means what for your manager.

  3. Gateway and callback

    1-3 working days

    We connect payment in the checkout and write a gateway response handler with signature verification and protection against repeated processing of the same payment.

  4. Error and refund scenarios

    1-2 working days

    Aborted checkout with saved cart, retry, success and bounce pages with human text, full and partial refund from admin.

  5. A purchase event in analytics

    1 working day

    We transfer the purchase to GA4 through Tag Manager with the amount and order number, check that the event is not duplicated when updating the thank you page.

  6. Live payment and transfer

    1 working day

    We pay for the test order with a real card for a small amount, return the funds from the admin account, show the manager both operations and give written instructions.

Free check of the payment script

We measure payment from the buyer's side, not from the code's side: we put the product in the cart, check out as a guest and see what methods the site really offers at the checkout step. Then we compare this list with what is written on the "Payment and delivery" page. Discrepancy happens more often than owners realize.

What we measure

  • What is actually available at checkoutIn the measured underwear store, the privat24, visa and liqpay logos stood in the footer of the site, and there were exactly two methods at the checkout step — both cash on delivery. We checked all four delivery methods: there is no card payment at all.
  • What happens after successful paymentDoes the status of the order change by itself, or does the manager reconcile the payments manually in the statement. The second works on ten orders and crumbles into hundreds.
  • What happens in case of unsuccessful paymentWhere does the buyer end up, does the cart stay, can he try again. The cheapest place where stores lose ready-made orders.
  • Callback and its signatureDoes the site check the signature of the gateway response with its private key. Without this reconciliation, the "paid" status is theoretically displayed externally, without money.
  • RefundsIs the return processed from the admin office and does your manager have a written procedure for this. Usually there is neither.
  • Is there a place to land the purchase eventLet's see what counter is on the site. The measured cosmetics store uses Universal Analytics, which Google turned off on July 1, 2023, and there is no GA4 property - you can connect the payment, count it as nothing.

What you get

  • The list of payment methods available in the actual checkout is next to the list from the information page.
  • List of raw scenarios: failed payment, retry, partial refund.
  • Analytics status: Is there somewhere to pass the purchase event.
  • Evaluation of works and term with division into obligatory and desirable.
  • A 20-30 minute conversation with you or your accountant on this list.

Timeline: 1-2 business days from when we receive the site address

Why is it free

Because it takes us hours to go through the checkout, and an error in order statuses costs your manager a daily manual reconciliation. It is cheaper to show the numbers and name the amount once. The list remains with you in any case - even if you change your mind about connecting payment.

What's next

Next - an estimate for a specific list of works with a deadline for stages, a contract, an invoice, an act.

Short form: your contact and site URL

  • Contract, act and 30-day warranty

    Every project gets a written contract: scope, deadlines, amount, acceptance procedure. After delivery — act and invoice, then 30 calendar days of warranty.

  • Sole proprietor & bank transfer

    The contractor is a registered sole proprietor. Payment by invoice with closing documents.

  • Rights & access — yours

    Code, design and materials transfer to you after full payment. Domain, hosting, repository and analytics are registered to you.

  • Client portal instead of email chains

    During the project you get access to a portal: contracts, invoices, acts and project status in one place.

  • European clients

    Among our work — projects for Norway, Bulgaria, Moldova and Spain.

  • Verifiable numbers

    Every case in the portfolio comes with a link to a live site and a technical measurement.

  • Audit first, then pricing

    There is no price list on the site intentionally: the scope of the same work differs multiples between clients.

  • We say "no" when unsure

    If the task isn't ours or the deadline is unrealistic — we tell you upfront.

Did not find your case?

Describe how it works on your side — we will tell you whether “LiqPay integration” fits and what it means in your situation. No brief and no call: one question, one answer.

What affects the price

Why two seemingly identical tasks are priced differently

  • Status of order statusesIf only "new" and "fulfilled" live in the store, you have to start four more for payment and decide what each one does: whether to remove the product from the balance or send a letter to the buyer. This is a conversation with your manager and takes longer than the gateway itself.
  • Platform and connection methodThe box module for OpenCart or WooCommerce is installed and configured in a day. A hand-written checkout or a custom Next.js frontend needs its own callback handler — that's writing code, not installation.
  • How many scenarios are we closingOnly a successful payment is the minimum. Aborted payment with cart return, retry, partial refund, payment that arrived late - each item has its own branch in the code and its own check.
  • Analytics statusThe purchase event must be transferred somewhere. If Universal Analytics is dead on the site and there is no GA4 property, we first put analytics, and this is a separate line of the estimate. The meter itself does not improve anything - it only lets you see.
  • How many payment methods will stand next to each otherEach additional method has its own status, its own return scenario, its own paragraph in the manager's instructions and its own commission. Therefore, the number of methods is not an end in itself: we count the ones that your segment pays for.
Technologies & integrations

What we build on and what it connects to

Stack

  • LiqPay API — one gateway closes Visa, Mastercard, Apple Pay, Google Pay and Privat24; limit: tariffs, limits and terms of payments are determined by the bank, not integration
  • Signature verification: signature = base64(sha1(private key + data + private key)) — without reconciliation, the "paid" status is displayed externally
  • OpenCart 3 and 4 are box modules, but not every supplier has a build for 4.x; we fix the version before the start
  • WooCommerce is an official plugin; edits in it do not go through every update, so we bring them out separately
  • Next.js — the callback handler is written by hand on the server route; it is longer than installing the module
  • HTTPS + HSTS — the gateway will not send a response via HTTP, and the browser warns the buyer exactly when the card is entered
  • Environment variables for keys - The private key in the repository is equal to the lost key

Integrations

  • LiqPay
  • Visa/Mastercard
  • Apple Pay / Google Pay
  • Privat24
  • postpaid as a parallel scenario
  • GA4 is a purchase event
  • Google Tag Manager
  • KeyCRM
Gateway in checkout against transfer by details

How this option differs from the alternative

Who confirms the paymentgateway callback, automatically
When the buyer paysimmediately, while the solution is still hot
The price of a status errorthe status sets the code, the error is reproducible and fixed
Refundsbutton in the admin, full or partial
Costsacquisition fee from each payment
What we need from you

We can't start without this — best to prepare in advance

  1. Public and private keys from the account of the payment provider are issued to you, not to the contractor.
  2. Access to the site and admins with the right to install modules.
  3. Decide which order statuses mean paid and canceled.
  4. Legal texts about refunds: they must be on the site before the payment is launched.
  5. A small value item that we will live checkout and return on.
  6. A manager or accountant who will handle the returns after the transfer.

If something is missing — let us know, we'll help you gather it or do it as a separate task.

FAQ

Most frequently asked questions — with concrete answers

There are already Visa and payment gateway icons in the footer of the site - is the payment connected?

Not necessarily, and this is the most common illusion. In the underwear store we measured, the privat24, visa and payment gateway logos hung in the footer, and in the real checkout there were exactly two ways - both "cash on delivery". We tested it on all four delivery methods, meaning card payment on the site is not connected at all. The logo in the footer is a picture, it does not enable anything. Therefore, we do not start the check with the code, but with the checkout process: product in the cart, guest registration, request for a list of available methods.

Why check the callback signature if no one knows the address of the handler?

Because it is the callback that tells the site "the money has arrived", and the address of the processor is visible in the code of the payment page. LiqPay sends two fields: data - a JSON-encoded amount and status, and signature, which is calculated as base64(sha1(private key + data + private key)). The handler must enumerate the signature with its key and match. If not, anyone can send "payment successful" and receive an order with the status of paid without money. In box modules there is usually a reconciliation, in hand-written processors there is usually not.

What happens if the buyer interrupts the payment halfway through?

Should return to the site with a saved cart and a clear message. A scenario we see regularly is a blank error page, an empty cart, an order in the admin in an uncertain status, and a manager who doesn't know whether to call or not. Some of these people just leave, and this is the most expensive loss in the store - it happens after the buyer has already said yes. The processing of an interrupted payment is included in the work and is not counted as a separate line.

How do you make sure the payment actually works?

The test mode shows that the code does not crash, and nothing more. Battle keys, real limits and real behavior of the bank are not checked in it. Therefore, our recommendation and our practice: after the tests, we make a live payment with a real card for a small amount, see how the status of the order changes by itself, and immediately issue a refund from the admin account. Two operations in ten minutes close the issue that would otherwise arise on the first client. Another recommendation: do not turn off the postpaid in the first month - it insures you while the statistics are collected.

Is it necessary to enable online payment at all?

No, and it is worth a separate conversation before the contract. In the underwear wholesale store we measured, there is no online payment on purpose, and the reason is written directly on the website: so that the buyer does not pay for a product that may not be available. For wholesalers with moving balances, this is a rational choice — prepayment would generate a stream of returns instead of sales. For retail, it's usually the other way around: the absence of a card at the checkout means orders that didn't arrive. Sometimes the right decision is to remove a payment method, rather than add one.

How many payment methods should be kept in the checkout?

As much as you are willing to serve. We've seen anywhere from two to ten in measured stores. The most complete set - eight ways and four carriers in the garden tool store; nearby store of the same profile lives on four methods, including invoice and payment in installments. A fair limit: Ten logos alone don't sell. It is important to have exactly the ways that your segment pays, and each extra one adds commission, status and a line in the reconciliation. The working basis for retailing is a card plus post-payment, further as needed.

How can I see how many orders are paid by card?

Through a purchase event in GA4 with the amount and order number - we transfer it within the works. But you have to transfer somewhere: in the measured cosmetics store, Universal Analytics is running on the site, which Google turned off on July 1, 2023, and there is no GA4 property at all. The analytics appear to be working and dead for the third year. Such things can be seen on the inspection before the start of work. And a separate limit: GA4 shows a trend, not an accounting truth — you need to compare its numbers with the gateway office deliberately, a discrepancy of several percent is normal there.

How long does it last and what is included in the warranty?

3-10 working days after receiving the keys. Schedule: Checkout 1-2 days, keys and statuses 1, gateway and callback 1-3, error and return scenarios 1-2, purchase event 1, live payment and transfer 1. It takes longer when the order does not have the required statuses and they are created together with the integration. The warranty period is 30 calendar days after acceptance: we correct errors free of charge. This does not cover new additions, changes in bank tariffs, and the consequences of independent changes in the code.

Start with the checkout aisle, not the estimate

Give the website address - in 1-2 working days we will return with a list of payment methods that are really available to the buyer, a list of raw scripts and an estimate of the works. If you do not need the card now, you will hear about it in the first email.

From measured casesMeasurement 07/31/2026: four payment methods and two carriers, HSTS with max-age 31536000

View cases
  • Reply within 2 hours
  • No commitment
  • We work under a contract

There is no price list on the site on purpose: the same work differs several times over between two clients, and a “from” figure explains nothing in that case. First a free audit — we count your pages, duplicates and speed — then we name the sum and the deadline and fix both in the contract.