Portmone for WooCommerce — card, Apple Pay and Google Pay payments
Accept card, Apple Pay and Google Pay payments in WooCommerce through Portmone.com: an order is confirmed only after a server-side status check, with payment notifications and a connection check. Pro adds refunds, pre-authorisation and a payment journal.
What each licence includes
| Feature | Free | Pro |
|---|---|---|
| Card, Apple Pay and Google Pay payments on the Portmone.com page | ✔ | ✔ |
| Order confirmation only after a server-side status check with Portmone | ✔ | ✔ |
| JSON and XML payment notifications, re-checked through the API | ✔ | ✔ |
| Paid amount checked against the order total | ✔ | ✔ |
| The previous bill is closed on a retry — no double payment | ✔ | ✔ |
| HMAC-SHA256 request signing and a one-click connection check | ✔ | ✔ |
| Password and signature key stored encrypted in the database | ✔ | ✔ |
| Classic and block WooCommerce checkout, HPOS compatible | ✔ | ✔ |
| Full and partial refunds from the order screen | — | ✔ |
| Pre-authorisation: money blocked, captured on "Completed", released on cancel | — | ✔ |
| Payment journal with the Portmone status and a one-click check | — | ✔ |
Portmone for WooCommerce is a payment plugin that accepts card, Apple Pay and Google Pay payments through Portmone.com. The customer goes to the Portmone payment page, pays, and the order in your shop confirms itself. The key difference from the usual “redirect and take their word for it”: the plugin trusts neither the customer’s return nor the notification — before marking an order as paid, it asks Portmone for the status itself and checks the amount.
The base version is free. Accepting payments, server-side status checks, payment notifications and the connection check work without a licence and without a time limit. Pro adds refunds from the order screen, two-stage payments with money blocked on the card (pre-authorisation) and a payment journal.
Live demo
The screenshots on this page come from a CatCode test shop: a payment from the mobile block checkout, a retry after a declined card in the classic checkout, pre-authorisation captured on “Completed”, a refund and a check from the journal. Want to see the plugin in your own shop before buying? Turn on the 7-day Pro trial with the button in the settings.
What the customer sees


What the admin gets

- Payee ID, store login and password from your Portmone account. The password and the signature key are stored encrypted in the database.
- “Check connection” — the plugin requests a status with your credentials and, if a signature key is set, creates a 1 UAH test invoice and closes it straight away. A wrong password or key shows up in the admin, not in a customer complaint.
- Order notes: the Portmone order number, bill number, masked card and the result of every check.
- Time to pay — how many minutes the payment link stays valid.
- Order status after payment — “Processing” or straight to “Completed”.


How it works, step by step
- At checkout the customer picks “Card, Apple Pay, Google Pay (Portmone)” and places the order. It works in both the classic and the block checkout.
- The plugin creates a payment link in Portmone with a unique attempt number and the order amount and currency. If Portmone gave you a signature key, the request is signed with HMAC-SHA256.
- The customer pays on the Portmone page — by card, Apple Pay, Google Pay or any other method enabled for your shop. Card details never pass through your site.
- The customer returns to the shop. The plugin ignores whatever came in the URL or POST and asks Portmone for the status using the store login and password.
- Amount check. If less was paid than the order costs, the order does not become paid; it goes “On hold” with a note for the manager.
- The order moves to “Processing” (or the status you chose), stock is reduced and the customer gets the WooCommerce email.
- If the customer closed the tab and never came back, the Portmone notification to the address in the settings fires, and the plugin checks the status through the API in the same way. As a fallback, the status is also pulled on the “Thank you” page.
- A retry (card declined, the customer clicked “Pay” again): the plugin first checks whether the previous link was paid and closes the old bill in Portmone, so one order can’t be paid twice.
- With Pro in pre-authorisation mode the money is only blocked on the card. Move the order to “Completed” and the money is captured; cancel it and the block is released. Card schemes hold a block for up to 7 days.
How much it costs
890 UAH — a one-year licence. A year of updates, technical support and all Pro features.
You can take a longer term straight away — the longer it is, the cheaper each year works out:
- 1 year — 890 UAH
- 2 years — 1,690 UAH (−5%, 845 UAH per year)
- 3 years — 2,350 UAH (−12%, 783 UAH per year)
- 4 years — 2,920 UAH (−18%, 730 UAH per year)
- 5 years — 3,340 UAH (−25%, 668 UAH per year)
No auto-charges: renewal is manual, and reminders arrive by email. A purchased licence keeps the Pro features for good — when the term ends, the shop only stops getting new versions and support. Accepting payments works either way.
One key — one domain. Moving the shop? Deactivate the licence on the old domain with the “Deactivate here” button and activate it on the new one.
Trial first, then payment. The free 7-day Pro trial is turned on with a button in the plugin settings, no card needed. The trial never starts by itself: a fresh install is the plain Free version. After the trial only the Pro features switch off.
Technical requirements
- WooCommerce 6.0+ with the classic or block checkout, HPOS compatible
- WordPress 6.2+ · PHP 7.4+
- Shop currency: UAH, USD, EUR, GBP, PLN or KZT — the currencies Portmone accepts. With any other currency the payment method hides itself.
- An agreement with Portmone.com: Payee ID, store login and password. Test mode for the shop is enabled by your Portmone manager.
Under the hood
- Status comes only from the Portmone API. The customer’s return, the notification and the check button all lead to one place: a
resultrequest with the store login and password. Faking a payment by sending a POST to the site won’t work. - Amount and ownership checks: the order number must have been issued to this very order, the Payee ID must be yours, and the amount must not be lower than the order total.
- Protection against double confirmation: the customer’s return and the notification often arrive at the same moment. A database-level lock and a fresh re-read of the order (HPOS cache included) guarantee one “payment received” note and one stock reduction.
- Late statuses don’t roll back a payment: a late “declined” from an old attempt won’t turn a paid order into a failed one.
- Its own gateway ID: the plugin doesn’t clash with the official Portmone module if that one is installed too.
- The password is masked in logs and stored encrypted in the database.
- A Pro gate that doesn’t brick the shop: when the trial ends, only the Pro features stop. Money that was already blocked is still captured on “Completed”, so the customer’s funds don’t get stuck.
How to install
- Plugins → Add New → Upload Plugin: choose
portmone-for-woocommerce-1.0.0.zipand activate it. - WooCommerce → Settings → Payments → Portmone.
- Enter the Payee ID, store login and password (and the signature key, if Portmone gave you one), then save.
- Click “Check connection”.
- Send your Portmone manager the notification address — it is shown at the bottom of the settings page.
- For Pro: paste the licence key from the email you get after payment, or start the 7-day trial.
Version history
- 1.0.0 — September 2026
- First release: Portmone payment link, order confirmation only after a server-side status check, JSON and XML notifications, amount check, closing the previous bill on a retry, HMAC-SHA256 request signing, connection check, classic and block checkout, HPOS, Ukrainian translation. Pro: refunds (full and partial), pre-authorisation captured on “Completed” or released on cancel, payment journal.
Frequently asked questions
Do I need an agreement with Portmone?
Yes. Portmone issues the Payee ID, login and password when it connects your shop. Test mode for the shop is enabled by your Portmone manager.
The customer paid, but the order is still "Pending payment".
The status is checked when the customer returns, on the "Thank you" page and on every notification. Make sure "Check connection" passes and that Portmone sends notifications to the address from the settings. With Pro you can check the status from the journal in one click.
Do card details pass through my site?
No. The card is entered on the Portmone page.
I already have the official Portmone module. Will they conflict?
No, the plugins use different IDs and settings. Show only one of them at checkout, though.
What if I don't want to pay for Pro?
Accepting payments, status checks and notifications are free with no time limit.
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
—