Title: QuickPay.ge for WooCommerce
Author: REHOST
Published: <strong>August 2, 2026</strong>
Last modified: August 2, 2026

---

Search plugins

![](https://ps.w.org/quickpay-ge-for-woocommerce/assets/icon-256x256.png?rev=3631419)

# QuickPay.ge for WooCommerce

 By [REHOST](https://profiles.wordpress.org/rehostge/)

[Download](https://downloads.wordpress.org/plugin/quickpay-ge-for-woocommerce.2.9.14.zip)

 * [Details](https://wordpress.org/plugins/quickpay-ge-for-woocommerce/#description)
 * [Reviews](https://wordpress.org/plugins/quickpay-ge-for-woocommerce/#reviews)
 *  [Installation](https://wordpress.org/plugins/quickpay-ge-for-woocommerce/#installation)
 * [Development](https://wordpress.org/plugins/quickpay-ge-for-woocommerce/#developers)

 [Support](https://wordpress.org/support/plugin/quickpay-ge-for-woocommerce/)

## Description

**QuickPay.ge for WooCommerce** connects your store to all major Georgian payment
systems through a single integration. Instead of writing separate code for each 
bank, you integrate once with Quickpay.ge and get access to every gateway your business
has a merchant account with.

**Supported payment methods:**

 * BOG Card (Bank of Georgia)
 * BOG Installment
 * BOG Buy Now Pay Later (Part by Part)
 * TBC Card
 * TBC Installment
 * Credo Installment
 * Keepz (card + open banking + QR)
 * Flitt (card, installment, BNPL)
 * UniPay
 * Fastoo
 * CityPay (crypto)
 * Moka (United Payment)
 * PayPal
 * Paysera
 * Bank Transfer (manual IBAN)
 * Cash on Delivery

**Key features:**

 * **Unified checkout button** — single button that opens a branded Quickpay hosted
   payment page, or
 * **Per-gateway mode** — show each payment method as a separate option at checkout(
   with logos)
 * **Express “Buy Now” buttons** on product pages — bypass the cart entirely (Mode
   B)
 * **WC Blocks compatible** — works with the modern Cart and Checkout blocks
 * **HPOS compatible** — fully supports WooCommerce High-Performance Order Storage
 * **Automatic refunds** — trigger partial or full refunds directly from the WC 
   order screen
 * **Webhook verification** — all incoming webhooks are HMAC-SHA256 signed and verified
 * **Installment display** — show live installment plan labels on product pages
 * **Test mode** — test keys never hit real gateway APIs
 * **Debug logging** — detailed logs written to WooCommerce  Status  Logs
 * **WPML / Polylang ready** — all translatable strings registered for multilingual
   sites
 * **Georgian + English** — full UI translation in both languages

**How it works:**

 1. Merchant signs up at [quickpay.ge](https://quickpay.ge) and connects their bank
    merchant accounts
 2. Install this plugin and enter your API key
 3. Customers pay on the Quickpay hosted payment page (qpy.ge) — no card data touches
    your server
 4. A signed webhook confirms payment and WooCommerce order is updated automatically

#### Requirements

 * WordPress 6.3+
 * WooCommerce 8.0+
 * PHP 7.4+
 * A Quickpay.ge merchant account with at least one active gateway subscription

### Privacy Policy

This plugin communicates with the Quickpay.ge API (`api.quickpay.ge`) to:

 * Verify API key credentials and fetch available payment gateways
 * Create payment requests and retrieve payment status
 * Process refunds

Payment data (customer name, email, order amount) is transmitted to Quickpay.ge 
as part of the payment creation request. Please refer to the [Quickpay.ge Privacy Policy](https://quickpay.ge/privacy)
for details on how payment data is handled.

**Optional usage data:** if you enable “Share anonymous usage data” in Quickpay  
Settings  Advanced, the plugin sends your site URL, plugin version, WordPress/WooCommerce/
PHP versions on activation, deactivation, and a weekly heartbeat. This is off by
default and not required for the plugin to function.

No data is sent to any third-party service other than Quickpay.ge.

## Screenshots

[⌊Quickpay Settings page — API connection, display mode, gateway selection⌉⌊Quickpay
Settings page — API connection, display mode, gateway selection⌉[

Quickpay Settings page — API connection, display mode, gateway selection

[⌊Checkout with per-gateway mode — each payment method shown separately with logo⌉⌊
Checkout with per-gateway mode — each payment method shown separately with logo⌉[

Checkout with per-gateway mode — each payment method shown separately with logo

[⌊Checkout with unified mode — single Quickpay button⌉⌊Checkout with unified mode—
single Quickpay button⌉[

Checkout with unified mode — single Quickpay button

[⌊Product page with express "Buy Now" buttons⌉⌊Product page with express "Buy Now"
buttons⌉[

Product page with express “Buy Now” buttons

[⌊WooCommerce order detail with Quickpay payment info and refund controls⌉⌊WooCommerce
order detail with Quickpay payment info and refund controls⌉[

WooCommerce order detail with Quickpay payment info and refund controls

[[

## Blocks

This plugin provides 1 block.

 *   Quickpay Button

## Installation

#### Automatic installation

 1. Go to **Plugins  Add New** in your WordPress admin
 2. Search for “QuickPay.ge for WooCommerce”
 3. Click **Install Now**, then **Activate**

#### Manual installation

 1. Download the plugin zip from [quickpay.ge](https://quickpay.ge)
 2. Go to **Plugins  Add New  Upload Plugin**
 3. Upload the zip, then activate

#### Configuration

 1. Go to **Quickpay  Settings** in the WordPress admin sidebar
 2. Enter your API key from your Quickpay.ge dashboard
 3. Click **Test Connection** — the plugin will fetch your available gateways
 4. Copy the Webhook URL shown and paste it into your Quickpay.ge dashboard  Webhooks
 5. Go to **WooCommerce  Settings  Payments** and enable Quickpay

## FAQ

### Do I need a Quickpay.ge account?

Yes. The plugin is a client for the Quickpay.ge payment gateway API. You need a 
merchant account at [quickpay.ge](https://quickpay.ge) to use it.

### Does card data pass through my server?

No. Customers complete payment on the Quickpay hosted payment page (qpy.ge), which
is hosted entirely by Quickpay. No card numbers, CVVs, or sensitive payment data
ever touch your WordPress server.

### Which Georgian banks are supported?

Bank of Georgia (BOG), TBC Bank, Credo Bank, and others — see the full list in the
plugin description. Available gateways depend on which subscriptions are active 
on your Quickpay.ge account.

### Does it work with WooCommerce Blocks?

Yes. The plugin registers a native WooCommerce Blocks payment integration and declares
full cart/checkout blocks compatibility.

### Does it support HPOS (High-Performance Order Storage)?

Yes. The plugin declares `custom_order_tables` compatibility and uses `WC_Order`
objects throughout.

### Can I test payments without real money?

Yes. Use a test API key (starts with `qpk_test_`) — test keys route through sandbox
environments and never hit real gateway APIs.

### How are refunds handled?

You can issue full or partial refunds directly from the WooCommerce order screen.
The plugin calls the Quickpay API which forwards the refund request to the original
gateway. Refund confirmation arrives via webhook and is recorded in WooCommerce 
automatically.

### What is “Mode B” / express checkout?

Mode B (Express) lets you add “Buy Now” buttons directly on product pages. When 
a customer clicks, a Quickpay payment is created immediately and the customer is
redirected to pay — no cart step required. The WooCommerce order is created automatically
when payment is confirmed.

### Where do I find the webhook URL?

Go to **Quickpay  Settings** in your WP admin. The webhook URL is shown in the Connection
section. Copy it and add it in your Quickpay.ge dashboard under Settings  Webhooks.

### Does it support installment payment display?

Yes. In Mode B (product page express buttons), you can display static installment
labels (e.g. “from 50 GEL/month”) configured in the plugin settings.

## Reviews

There are no reviews for this plugin.

## Contributors & Developers

“QuickPay.ge for WooCommerce” is open source software. The following people have
contributed to this plugin.

Contributors

 *   [ REHOST ](https://profiles.wordpress.org/rehostge/)

[Translate “QuickPay.ge for WooCommerce” into your language.](https://translate.wordpress.org/projects/wp-plugins/quickpay-ge-for-woocommerce)

### Interested in development?

[Browse the code](https://plugins.trac.wordpress.org/browser/quickpay-ge-for-woocommerce/),
check out the [SVN repository](https://plugins.svn.wordpress.org/quickpay-ge-for-woocommerce/),
or subscribe to the [development log](https://plugins.trac.wordpress.org/log/quickpay-ge-for-woocommerce/)
by [RSS](https://plugins.trac.wordpress.org/log/quickpay-ge-for-woocommerce/?limit=100&mode=stop_on_copy&format=rss).

## Changelog

#### 2.9.14

 * Fixed: Installment gateways (BOG / TBC / Credo Installment) still showed “Incompatible
   with block-based checkout” on stores whose currency is not GEL. The blocks script
   skipped registering them entirely in that case, but WooCommerce decides block
   compatibility by diffing _enabled_ gateways against the client-side registry —
   it does not consult `is_available()` — so a gateway that is enabled but never
   registered is reported incompatible forever. They are now always registered, 
   with the GEL-only rule enforced in `canMakePayment()` instead, which WooCommerce
   skips in the editor but applies at real checkout. Checkout behaviour is unchanged,
   since the server already withholds these gateways from non-GEL carts
 * Fixed: The distributed plugin ZIP no longer bundles the `.wordpress-org` directory—
   roughly 8 MB of WordPress.org listing screenshots that merchants were downloading
   with every update. Excluded via `export-ignore`, with a matching guard in the
   packer’s filesystem fallback. The WordPress.org asset upload is unaffected, as
   that workflow reads the directory from the checkout rather than the ZIP

#### 2.9.13

 * Fixed: The real cause behind Quickpay payment methods showing “Incompatible with
   block-based checkout” — no block integrations were being registered at all. WooCommerce
   fires `woocommerce_blocks_loaded` from `Packages::on_init()` on `plugins_loaded`
   priority 10, the same hook and priority this plugin bootstraps on. Because the
   plugin header declares `Requires Plugins: woocommerce`, WordPress 6.5+ loads 
   WooCommerce first, so that action had already fired by the time the plugin called`
   add_action()` on it — the callback silently never ran, so neither the unified
   nor the per-gateway Cart/Checkout blocks integrations were ever registered, and
   the checkout script was never enqueued. Now guarded with `did_action()` and registered
   immediately when the action has already fired, matching the pattern WooCommerce
   core uses internally
 * Fixed: Removed a PHP 8 “undefined array key” warning when reading `display_mode`
   before the setting has been saved

#### 2.9.12

 * Fixed: Cart/Checkout blocks payment methods still showed “Incompatible with block-
   based checkout” after 2.9.11. Root cause: `wc-checkout-block.js` was reading 
   a `quickpay_data` settings key that WooCommerce never actually exposes — WooCommerce
   Blocks publishes each registered payment method’s data under the shared `paymentMethodData`
   setting, keyed by integration name, not as a standalone `{name}_data` key. Because
   of this, the script never received the enabled gateway list at real block checkout
   either, so in “each gateway separately” mode it silently fell back to registering
   a single generic option instead of one per gateway. Now reads `paymentMethodData.
   quickpay` (the same lookup `wc.wcSettings.getPaymentMethodData()` performs internally),
   fixing both the compatibility flag and the actual checkout behavior

#### 2.9.11

 * Fixed: In “each gateway separately” display mode, every individual gateway (BOG
   Card, BOG Installment, TBC Installment, PayPal, etc.) was flagged “Incompatible
   with block-based checkout” on the WooCommerce Payments settings screen. The Cart/
   Checkout blocks payment method registration for each gateway reads its data (
   name, icon, min/max amount) from the main Quickpay integration’s shared settings
   payload, but that payload was never enqueued in per-gateway mode because the 
   main integration reported itself as inactive — so the per-gateway checkout script
   had nothing to register from. The main integration now stays active in per-gateway
   mode purely to deliver that shared script/data; it no longer registers its own
   unified payment option there, so checkout behavior is unchanged

#### 2.9.10

 * Fixed: Payment method icons in the “each gateway separately” checkout list rendered
   at wildly inconsistent sizes on classic checkout, since gateway icon images differ
   in native dimensions — icons are now normalized to a consistent max size
 * Fixed: In “each gateway separately” display mode, the master Quickpay.ge gateway(
   superseded by its per-gateway entries) was incorrectly flagged as “not compatible
   with the Cart and Checkout blocks” on the WooCommerce Payments settings screen

#### 2.9.9

 * Security/Privacy: Removed telemetry pings on connect/disconnect that fired without
   opt-in consent — only activation, deactivation, and the weekly heartbeat send
   data, and only when opted in
 * Security/Privacy: Heartbeat telemetry no longer includes the merchant’s API key—
   only anonymous site/version data
 * Changed: Renamed internal option/transient names to a unique `quickpay_`-prefixed
   namespace (was `woocommerce_quickpay_settings` / `qp_*`) to avoid collisions 
   with other plugins

#### 2.9.8

 * Security: Webhook handler no longer processes requests when no webhook secret
   is configured — previously ran in a “degraded” unauthenticated mode
 * Fixed: Custom checkout CSS is now added via `wp_add_inline_style()` instead of
   an inline `<style>` tag
 * Added: `Requires Plugins: woocommerce` header
 * Changed: Usage telemetry (activation/deactivation/weekly heartbeat) is now opt-
   in and off by default — see Quickpay  Settings  Advanced
 * Added: rehostge as a contributor

#### 2.9.7

 * Fixed: Plugin URI and Author URI no longer point to the same page (required for
   WordPress.org Plugin Directory submission) — Plugin URI now points to the plugin’s
   dedicated page at quickpay.ge/wordpress-plugin

#### 2.9.6

 * Renamed plugin from “Quickpay for WooCommerce” to “QuickPay.ge for WooCommerce”(
   and slug from quickpay-for-woocommerce to quickpay-ge-for-woocommerce) to resolve
   a WordPress.org name collision with an unrelated plugin

#### 2.9.5

 * Added: option to use the WooCommerce order number as the bank transfer reference(
   Quickpay  Settings  Advanced)

#### 2.9.4

 * Copy fix: corrected inaccurate “no bank contract needed” description text

#### 2.9.2

 * Build fix: pack-release now uses git archive so stale deleted files on the server
   are never bundled into the ZIP

#### 2.9.1

 * WordPress.org compliance: removed self-hosted update mechanism — updates are 
   now served through WordPress.org
 * Code quality: escaping and nonce hardening across admin pages
 * Fixed: translator comment placement for correct POT/po file extraction
 * Fixed: remaining Plugin Check warnings (output escaping, generic hook names)

#### 2.9.0

 * Improved: admin dashboard stats now use WC HPOS-compatible `wc_get_orders()`
 * Fixed: per-gateway mode correctly removes master gateway from available methods
   list
 * Internal: version bump to force clean ZIP build for WordPress.org submission

#### 2.8.3

 * Security: Added UUID format validation in webhook handler
 * Code quality: Replaced inline PHP-in-JS with wp_localize_script for admin settings
   page
 * Added: readme.txt and LICENSE.txt for WordPress.org submission

#### 2.8.2

 * Added: Webhook rate limiting (30 req/min per IP)
 * Added: Structured logging via Quickpay_Logger
 * Improved: Cron fallback reconciliation for Mode B orders
 * Fixed: Per-gateway mode now correctly hides master gateway from checkout

#### 2.8.1

 * Added: WooCommerce Blocks (cart/checkout blocks) native integration
 * Added: HPOS (High-Performance Order Storage) compatibility declaration
 * Improved: Admin settings moved to dedicated Quickpay sidebar menu

#### 2.8.0

 * Added: Express product-page “Buy Now” buttons (Mode B)
 * Added: Per-gateway display mode with individual logos per payment method
 * Added: Installment plan labels on product pages
 * Added: WPML / Polylang string registration

#### 2.7.0

 * Added: Partial refund webhook handling (payment.partially_refunded)
 * Added: Debug logging option
 * Improved: Webhook signature verification with 5-minute replay window
 * Fixed: Order status idempotency (no double status updates on duplicate webhooks)

#### 2.6.0

 * Added: Cron fallback — polls pending orders every 15 minutes to catch missed 
   webhooks
 * Added: Admin “Refresh Status” button on order detail page
 * Fixed: Bank transfer payments now correctly use transfer_pending status

#### 2.5.0

 * Added: Checkout templates support
 * Added: Test mode indicator in WC payment gateway settings
 * Improved: API error messages with detailed context

#### 2.0.0

 * Complete rewrite for Quickpay.ge API v1
 * Added: WooCommerce order meta panel with UUID, status, and dashboard link

#### 1.0.0

 * Initial release

## Meta

 *  Version **2.9.14**
 *  Last updated **7 hours ago**
 *  Active installations **Fewer than 10**
 *  WordPress version ** 6.3 or higher **
 *  Tested up to **7.0.2**
 *  PHP version ** 7.4 or higher **
 * Tags
 * [BOG](https://wordpress.org/plugins/tags/bog/)[georgia](https://wordpress.org/plugins/tags/georgia/)
   [payment](https://wordpress.org/plugins/tags/payment/)[woocommerce](https://wordpress.org/plugins/tags/woocommerce/)
 *  [Advanced View](https://wordpress.org/plugins/quickpay-ge-for-woocommerce/advanced/)

## Ratings

No reviews have been submitted yet.

[Your review](https://wordpress.org/support/plugin/quickpay-ge-for-woocommerce/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/quickpay-ge-for-woocommerce/reviews/)

## Contributors

 *   [ REHOST ](https://profiles.wordpress.org/rehostge/)

## Support

Got something to say? Need help?

 [View support forum](https://wordpress.org/support/plugin/quickpay-ge-for-woocommerce/)