WooCommerce Quickpay


With WooCommerce Quickpay, you are able to integrate your QuickPay gateway to your WooCommerce install. With a wide list of API features including secure capturing, refunding and cancelling payments directly from your WooCommerce order overview. This is only a part of the many features found in this plugin.


1. PHP: >= 7.4
2. WooCommerce >= 7.1.0
3. If WooCommerce Subscriptions is used, the required minimum version is >= 5.0


  1. Upload the ’woocommerce-quickpay’ folder to /wp-content/plugins/ on your server.
  2. Log in to WordPress administration, click on the ’Plugins’ tab.
  3. Find WooCommerce Quickpay in the plugin overview and activate it.
  4. Go to WooCommerce -> Settings -> Payment Gateways -> Quickpay.
  5. Fill in all the fields in the ”Quickpay account” section and save the settings.
  6. You are good to go.


2 augusti 2023
This plugin has been working for us without any complaints. Easy to use and administrate. I hope a payment redirect won’t be necessarry in the future, but would rather prefer the payment integrated in the checkout page. All in all the plugin does the job and offers a secure payment gateway from QuickPay.
3 januari 2020
We have been using this plug-in to capture payment for online webshop sales for 3 years without any problems. A well crafted and stable plug-in with frequent updates that we fully recommend.


15 augusti 2018
Seems to be working, but mainly support is quick and practical
9 mars 2018
Super plugin. Alt virker godt, og er nemt at opsætte og konfigurere.
Läs alla 11 betyg

Bidragsgivare och utvecklare

”WooCommerce Quickpay” är programvara med öppen källkod. Följande personer har bidragit till detta tillägg.

Bidragande personer

Översätt ”WooCommerce Quickpay” till ditt språk.

Intresserad av programutveckling?

Läs programkoden, kika på SVN-filförvaret eller prenumerera på utvecklarloggen via RSS.


= 7.3.4=
* Fix: MobilePay Subscriptions now calls WC_Subscription::cancel_order to leverage support of pending-cancel/cancelled logic when setting ”Cancelled agreement status” to ’Cancelled’.
* Fix: Change QuickPay to Quickpay in text strings
* Fix: Bump tested with WC version to 8.9


  • Fix: WC_QuickPay_Admin_Orders_Lists_Table::handle_bulk_actions_orders relied on WC_QuickPay_Subscription::get_subscription_id for fetching a subscription entity.
  • Feat: Add Requires Plugins header to define WooCommerce dependency which was introduced in WordPress 6.5


  • Fix: Bump tested with version to 6.5 (WP)
  • Fix: Bump tested with version to 8.8 (WC)
  • Fix: Deprecation notice for wc_get_log_file_path in 8.6 and above


  • Fix: Setting quickpay_complete_on_capture was missing from the settings UI


  • Feat: MobilePay Checkout has been removed due to EOL of the product after MobilePay/Vipps merge.


  • Feat: Add possibility to set a new order status upon cancelled payments
  • Feat: MobilePay Subscriptions is now transitioning orders with failed payments to ”failed” to maintain correct state of orders and their corresponding subscription.
  • Fix: WC_QuickPay_Helper::is_browser now checks if HTTP_USER_AGENT is set on the request.
  • Fix: Accessing the callback handler directly without a payload resulted in an Uncaught JsonException. This exception is now handled by returning an HTTP 400 response with a proper message.


  • Feat: Add payment gateway support for WC Checkout Blocks
  • Fix: Apple Pay – Rely on WC_Payment_Gateway::is_available when disabling gateways in checkout based on gateway specific criteria.
  • Fix: Google Pay – Rely on WC_Payment_Gateway::is_available when disabling gateways in checkout based on gateway specific criteria.
  • Fix: Anyday – Rely on WC_Payment_Gateway::is_available when disabling gateways in checkout based on gateway specific criteria.
  • Fix: Deprecation notice of dynamically declared property $instructions in WC_QuickPay (PHP 8.2)


  • Fix: Remove ISK from list of non-decimal currencies as the QuickPay API requires ISK amount to be multiplied


  • Fix: Update autofee helper text.
  • Fix: Bump tested WP version number to 6.3
  • Fix: Bump tested WC version number to 8.1


  • Fix: Manually creating a payment link from wp-admin on subscriptions with empty transaction IDs could lead to errors on link generation
  • Fix: Problem with transaction fee from callbacks triggering an error when setting it on the order object.


  • Fix: Remove strict return type from WC_QuickPay_Paypal::apply_gateway_icons


  • Feat: Added support for High Performance Order Storage / Custom Order Tables
  • Feat: Added template for meta-box-order.php
  • Feat: Added template for meta-box-subscription.php
  • Feat: Added support for Early Renewals modal
  • Fix: Added payment.quickpay.net as a whitelisted host to avoid problems with wp_safe_redirect when changing payment method in WCS 5.1.0 and above.
  • Fix: Adjust the link to payment methods documentation
  • Fix: WC_QuickPay::remove_renewal_meta_data wasn’t removing subscription meta data from renewal orders properly.
  • Fix: ’Create payment’ now patches transactions in ’initial’ state and creates new payments in case they have already been authorized.
  • Fix: ’Create payment’ now ensures unique order numbers by adding a random string to the order number before sending it to the API. This fixes problems with duplicate order number errors from the API.
  • Dev: Refactor order logic in general which means we are deprecating the WC_QuickPay_Order object and its methods. For better compatibility, and to avoid overhead, we are solely relying on the WC_Order object.
  • Dev: Introducing utility helper classes used to replace logic in the WC_QuickPay_Order object
  • Dev: Bump minimum required version of WooCommerce to 7.1.0
  • Dev: Bump minimum required version of WooCommerce Subscriptions to 5.0
  • Dev: Bump minimum required version of PHP to 7.4


  • Fix: Avoid requesting quickpay_fetch_private_key on all order / subscription related pages.


  • Fix: Add fees to basket items array
  • Fix: Refactor WC_QuickPay_Order::get_transaction_basket_params_line_helper
  • Fix: Remove shipping[tracking_number] and shipping[tracking_url] by default as they were empty anyway and resulted in problems with Resurs payments
  • Fix: Vipps – adjust payment method to ”vipps,vippspsp”
  • Dev: Introducing filter woocommerce_quickpay_transaction_params_basket_apply_fees


  • Fix: Rely on auto_capture_at instead of due_date for MPS payments
  • Fix: Enhance the way auto_capture_at is calculated. It now relies on the timezone used in WordPress but can be changed with the filter woocommerce_quickpay_mps_timezone


  • Feat: MobilePay Subscriptions – setting added to control status transition when a payment agreement is cancelled outside WooCommerce.
  • Dev: add filter woocommerce_quickpay_mps_cancelled_from_status
  • Dev: add filter woocommerce_quickpay_mps_cancel_agreement_status_options
  • Fix: Bump tested with WC version to 6.6
  • Fix: Bump tested with WP version to 6.0


  • Feat: Anyday – hide gateway if currency is not DKK and if cart total is not within 300 – 30.000
  • Fix: Remove VISA Electron card logo


  • Feat: Add Google Pay as payment gateway
  • Fix: Adjust SVG icons for Paypal, Apple Pay and Klarna to show properly in Safari
  • Feat: Only show Apple Pay in Safari browsers


  • Fix: MobilePay Subscription gateway is now available when using the ”Change Payment” option from the account page.


  • Feat: Add Apple Pay gateway – works only in Safari.
  • Feat: Show a more user-friendly error message when payments fail in the callback handler.
  • Dev: Add new filter woocommerce_quickpay_checkout_gateway_icon
  • Fix: Bump WC + WP tested with versions to latest versions


  • Dev: Add WC_QuickPay_Countries::getAlpha2FromAlpha3
  • Fix: Use alpha2 country code instead of alpha3 country code in MP Checkout callbacks


  • Fix: Modify force checkout logic used for MobilePay Checkout to enhance theme support.


  • Fix: WC_QuickPay_API_Transaction::get_brand removes prefixed quickpay_ when fallback to variables.
  • Fix: Refund now supports location header to avoid wrong response messages when capturing Klarna and Anyday payments.
  • Dev: Add filter woocommerce_quickpay_transaction_params
  • Dev: Add filter woocommerce_quickpay_transaction_params_description
  • Bump WC tested with version
  • Bump WP tested with version


  • Feat: MobilePay Checkout now automatically ticks the terms and condition field during checkout.
  • Fix: PHP8 compatability
  • Fix: Capture now supports location header to avoid wrong response messages when capturing Klarna and Anyday payments.
  • Fix: WC_QuickPay_API_Transaction::get_brand now falls back to variables.payment_methods sent from the shop if brand is empty on metadata.


  • Remove: BETA from MobilePay Subscriptions
  • Feature: Anyday split payments as payment gateway.
  • Feature: MobilePay Checkout now shows the description as copy in checkout/mobilepay-checkout.php by default which makes it easier by merchants to adjust their communication.


  • Remove: Bitcoin through Coinify


  • Feature: New setting ’Cancel payments on order cancellation’ allows merchants to automatically cancel payments when an order is cancelled. Disabled by default.
  • Fix: Orders with multiple subscriptions didn’t get the subscription transaction stored on every subscription.


  • Fix: Danish translations not being loaded when enabled.
  • Fix: Balance with decimals were incorrectly shown on ”Capture Full Amount” button
  • Fix: Bump ’tested with’ versions


  • Fix: Setting ”Complete renewal orders” triggered on regular orders as well when enabled.


  • Fix: Callbacks not being properly handled for non-subscription transactions


  • Feature: MobilePay Subscriptions gateway.
  • Feature: New setting ’Complete order on capture callbacks’ – Completes an order when a callback regarding a captured payment is received from QuickPay.
  • Feature: Add support for WCML country specific gateways added in WCML 4.10 (https://wpml.org/announcements/2020/08/wcml-4-10-currencies-and-payment-options-based-on-location/)
  • Change: Recurring payments are no longer synchronized due to ?synchronization being deprecated.
  • Fix: Undefined property: stdClass::$payment_method in WC_QuickPay_MobilePay_Checkout::callback_save_address
  • Fix: Hide balance amount field when payment cannot be captured
  • Fix: Show MobilePay logo as ”Method” in the order list
  • Breaking Change: Embedded / Overlay payments have been removed due to PSD2. Contact support@quickpay.net for questions regarding this decision.
  • Developer: Add filter woocommerce_quickpay_create_recurring_payment_data
  • Developer: Add filter woocommerce_quickpay_create_recurring_payment_data_{payment_gateway_id}
  • Developer: Add filter woocommerce_quickpay_callback_payment_authorized_complete_payment
  • Developer: Removed WC_QuickPay_Subscription::process_recurring_response as the logic has been refactored into hooks and callback handlers.


  • Fix: ”Capture specified amount” not working
  • Fix: Broken translations in payment meta box
  • Fix: Settings in alternative instances were not properly saved


  • Feature: Removal of currency settings. Transaction always follows the order to avoid human errors and to simplify the setup.
  • Feature: Removal of language settings. Transaction always follows the user’s language. Defaults to shop language, but Polylang and WPML users will get the language selected.
  • Feature: Add price formatting on capture button in the QuickPay Payment order meta box
  • Feature: Built in support for WPML language in payment window – this feature is auto-enabled.
  • Feature: Built in support for Polylang language in payment window – this feature is auto-enabled.
  • Fix: Improve support of currencies without decimals (i.e. JPY).
  • Fix: Ajax endpoints was added multiple times which caused some actions to be launched several times causing unexpected responses.
  • Dev: Add filter woocommerce_quickpay_can_user_manage_payments and woocommerce_quickpay_can_user_manage_payments_{action} which can be used to allow / disallow users from i.e. capturing or cancelling transactions manually.
  • Dev: Removal of WC_QuickPay::get_gateway_currency
  • Dev: Removal of WC_QuickPay::get_gateway_language – replaced by woocommerce_quickpay_get_language()


  • Fix: Installer – improve version comparer


  • Fix: PayPal orders not showing the QuickPay meta box
  • Fix: PayPal orders not being capturable from inside WooCommerce
  • Fix: Bump version numbers


  • Fix: Skip shipping row sent to PayPal as it can result in buggy calculations in PayPal.


  • Update: Klarna now uses ’klarna-payments’ as payment method.
  • Fix: Add $order check on failed transactions to avoid errors being thrown when running update_status on a bool value.
  • Developer: Pass WC_QuickPay_Order object to woocommerce_quickpay_transaction_params_shipping as second argument
  • Developer: Pass WC_QuickPay_Order object to woocommerce_quickpay_transaction_params_invoice as second argument


  • Fix: Validation problems when using MobilePay Checkout due to new validation error code grouping on WC 4.3


  • Basket now relies on item data instead of product data which could lead to problems with plugins adding item lines without product data.
  • Basket items now checks if VAT is enabled before actually extracting the rates.
  • Rely on WC_Order_Item_Product::get_product instead of the deprecated WC_Order::get_product_from_item
  • Bump WC tested version
  • Bump WP tested version


  • Feature: Add callback handler for recurring requests
  • Fix: Stop using WC_Subscriptions_Manager::process_subscription_payment_failure_on_order as this is deprecated.
  • Dev: Make synchronous recurring requests optional with the introduced filter: woocommerce_quickpay_set_synchronized_request
  • Dev: Blocked callbacks for recurring requests are now optional. Can be disabled with the filter: woocommerce_quickpay_block_callback


  • Fix: Add missing order payment box in backend for fbg1886, ideal, paypal and swish


  • Fix: MobilePay Checkout not saving address data properly when no customer account was set on the order.


  • Feature: Add UI setting for enabling/disabling transaction caching
  • Feature: Add UI setting for setting the transaction caching expiration time
  • Feature: Update a cached transaction on accepted callbacks
  • Feature: Add private key validation and success indicator next to the settings field – (requires permissions to read the private key via API)
  • Feature: Add button to flush the transaction cache from inside the plugin settings
  • Fix: Remove ”Cancel” transaction on partially captured transactions as this action is not supported
  • Fix: MobilePay Checkout is now only creating users if user registration is required. The behavior can be modified via the filter woocommerce_quickpay_mobilepay_checkout_create_user
  • Fix: Stop performing capture logic on order completion when the orders is not paid with QuickPay
  • Fix: Add permission check on ajax endpoint for clearing logs
  • Fix: WC_QuickPay_Order::get_order_id_from_callback fallback now allows both prefixed and suffixed order numbers
  • Fix: Recurring payments not being cancellable
  • Improvement: Do not reuse cURL instances to avoid problems with some cPanel PHP upgrades where KeepAlive is disabled by default
  • Developer: Add the possibility to hide buttons for clearing logs and transaction cache via filters.


  • Fix capture on complete in extra instances when gateways have not been instantiated.
  • Bump version numbers


  • Fix: Manual capture via meta box on recurring subscription orders.
  • Fix: 0 balance on capture button on recurring payments.
  • Fix: Typo in shop system version sent to QuickPay
  • Fix: Bump WC tested version
  • Fix: Bump WP tested version


  • Fix: Proper printing of validation errors returned from the API.
  • Improvement: Distinguish between capture exceptions and API exception when adding runtime errors on capture requests.
  • Improvement: Add order ID to API error message on capture errors not caused specifically by the QuickPay_Capture_Exception.
  • Developer: Add QuickPay_Capture_Exception.


  • Add: Separate PayPal payment instance
  • Improvement: PayPal instance will, by default, strip cart items when sending data to QuickPay.


  • Fix: Improvement of WC_QuickPay_Order::get_order_number_for_api to avoid errors if WC_QuickPay_Subscription::get_subscriptions_for_renewal_order returns no subscriptions.
  • Add: MasterCard ID Check logo


  • Fix: Unspecific CSS handle causing intermittent conflicts.


  • Fix: MobilePay Checkout – Check for company OR full name before deciding to disable auto-receiving shipping address from MobilePay.
  • Fix: Empty log entries is now fixed
  • Fix: Add instance check in order completion hook to prevent multiple capture calls on each order which should result in better performance.
  • Feature: Persist payment capture errors on order completion to be shown in wp-admin.
  • Feature: Show error alert on manual capture failures from the order transaction box.
  • Feature: Show error alert on refund failures. This also blocks WooCommerce from refunding the order items if the refund fails.
  • Improvement: Pass the order object to woocommerce_quickpay_transaction_params_variables
  • Improvement: Send company name (if available) with shipping_address.name if no firstname/lastname has been set on the order.
  • Improvement: Remove object type casting on woocommerce_quickpay_automatic_shipping_address and woocommerce_quickpay_automatic_billing_address to allow NULL checks in the MP Checkout address saver helper methods.
  • Improvement: Convert all arrays to short syntax
  • Tested with WC 3.8.1


  • Fix: Fix missing shipping information on MobilePay Checkout orders if no shipping address is specified in the MobilePay app
  • Fix: Bump minimum PHP version to 5.4


  • Fix: Make .is-loading in backend more specific.
  • Feature: Trustly as separate payment method instance
  • Feature: iDEAL as separate payment method instance
  • Feature: Swish as separate payment method instance
  • Feature: FBG1886 as separate payment method instance
  • Feature: QuickPay – Extra – A flexible payment method instance which takes custom payment methods and icons from the settings panel. This can be used to offer i.e. Dankort payments through NETS if embedded payments are enabled on the main instance.
  • Feature: Possibility to disable cancellation of subscription transactions programmatically through ’woocommerce_quickpay_allow_subscription_transaction_cancellation’
  • Enhancement: Optimized images for Swish and Resurs.
  • Enhancement: Updates helper texts on embedded window and text_on_statement on the settings page
  • Enhancement: Only load the backend javascripts on relevant pages


  • Feature: Add support for embedded payments through overlay with Clearhaus
  • Developer: Add action ’woocommerce_quickpay_callback_subscription_authorized’ and ’woocommerce_quickpay_callback_payment_authorized’ for easier way of handling authorized callbacks for specific transaction types.
  • Remove eDankort
  • Fix: Minor syntax-error in backend javascript


  • Fix: Patch payments in ’process_payment’ to make sure all transaction variables are up to date to avoid problems when gateway switching after cancelling a payment.
  • Fix: Optimize gateway availability check on MobilePay Checkout payments in order to remove the fast checkout button when a subscription is in the cart.


  • Fix: Add fallback in WC_QuickPay_Subscription::process_recurring_response to save transaction ID in case WC_Order::payment_complete fails to do so.
  • Fix: Add ”needs payment” check on authorized subscription callbacks before creating a recurring payment.
  • Tested up to WC 3.6.5


  • Feature: Possibility to fetch the API private key directly from the settings page. Requires an API user with permissions to perform GET requests to /accounts/private-key.
  • Fix: Minor helper text update for GA tracking ID on the settings page.
  • Fix: Add fallback for saving transaction IDs on orders since this seemed to randomly fail when using WC_Order::payment_complete to set it.
  • Tested up to WP 5.2.2
  • Dev – Add action: woocommerce_quickpay_meta_box_subscription_before_content
  • Dev – Add action: woocommerce_quickpay_meta_box_subscription_after_content
  • Dev – Add action: woocommerce_quickpay_meta_box_payment_before_content
  • Dev – Add action: woocommerce_quickpay_meta_box_payment_after_content
  • Dev – Add filter: woocommerce_quickpay_capture_on_order_completion


  • Feature: Add Mobilepay Checkout support
  • Feature: Add Vipps
  • Feature: Add replaceable template file through woocommerce-quickpay/checkout/mobilepay-checkout.php
  • Feature: Add Resurs
  • Feature: Add Bitcoin
  • Tweak: Add capture callback handler for Sofort to properly handle transactions not sending authorized callbacks.
  • Tweak: Add filter: woocommerce_quickpay_callback_url
  • Tweak: Add action: woocommerce_quickpay_after_checkout_validation
  • Tweak: Add filter: woocommerce_quickpay_get_setting_{setting}
  • Tweak: Add action: woocommerce_quickpay_accepted_callback_before_processing
  • Tweak: Add action: woocommerce_quickpay_accepted_callback_before_processing_{operation}
  • Tweak: Add action: woocommerce_quickpay_save_automatic_addresses_before
  • Tweak: Add action: woocommerce_quickpay_save_automatic_addresses_after
  • Tweak: Add filter: woocommerce_quickpay_automatic_billing_address
  • Tweak: Add filter: woocommerce_quickpay_automatic_shipping_address
  • Tweak: Add filter: woocommerce_quickpay_automatic_formatted_address
  • Tweak: Add filter: woocommerce_quickpay_mobilepay_checkout_checkout_headline
  • Tweak: Add filter: woocommerce_quickpay_mobilepay_checkout_checkout_text
  • Tweak: Add filter: woocommerce_quickpay_mobilepay_checkout_button_theme
  • Tweak: Add filter: woocommerce_quickpay_mobilepay_checkout_button_size
  • Tweak: Updates the MobilePay logo
  • Tweak: WC_QuickPay_Helper::get_callback_url now relies on home_url instead of site_url to ensure better compatibility with WPML.
  • Fix: WC_QuickPay_Address::get_street_name and WC_QuickPay_Address:get_house_extension throwning a warning if no house number is found on an address.
  • Remove: Remove non-CRUD data fetching for WC versions below 3.0.
  • Add: Bitcoin icon
  • Add: Swish icon
  • Add: Trustly icon
  • Add: Paysafecard icon


  • Add public admin notices infrastructure
  • Add possibility to manually create payment links for orders and subscriptions as WooCommerce admin.
  • Removes legacy WC_QuickPay_Order. Now only supports WC 3.x
  • Removes WC_QuickPay_Order_Base
  • Add filter: woocommerce_quickpay_order_action_create_payment_link_for_order
  • Add action: woocommerce_quickpay_order_action_payment_link_created
  • Introduce customer email sent on manual payment link creation.


  • Tested up to WC 3.4.2
  • Add arg (bool) $recurring to filter ’woocommerce_quickpay_order_number_for_api’
  • Add methods to get street name used for Klarna
  • Add methods to get house number used for Klarna
  • Add methods to get house extension used for Klarna


  • Add filter woocommerce_quickpay_transaction_fee_data
  • Clean up WC_QuickPay_Base_Order::add_transaction_fee
  • Move WC compatibility headers from README to the plugin core file


  • Update version requirements


  • Specify version number on static files in attempt to fix caching issues


  • Fix: Add check if rates are not empty in WC_QuickPay_Base_Order::get_transaction_basket_params_line_helper
  • Improvement: Remove shipping from the basket data and add it to the shipping data array instead
  • Improvement: Add mobile phone to invoice_address and shipping_address params.
  • Fix: Check transaction balance before ’capture on complete’ and adjust the amount captured in case a partial capture has been performed already.
  • Improvement: Add WC_QuickPay_API::patch
  • Improvement: Better error explanation when refunding in-refundable transactions through the WooCommerce interface.
  • Add: Verified by Visa logo
  • Add: MasterCard SecureCode logo
  • Add: Apple Pay logo
  • Add: ’WC requires at least’ and ’WC tested up to’ helpers when upgrading WooCommerce
  • Remove: Compatibility for WC 2.x
  • Improvement: Update PHP docs
  • Remove: Asynchronous loading of transaction data in the order overview to avoid hammering the backend with HTTP requests in case of large order views.
  • Add: Transaction data caching. Currently only used in order list view.
  • Add: Introducing filter woocommerce_quickpay_transaction_cache_enabled to enable/disable transaction caching. Defaults to true.
  • Add: Introducing filter woocommerce_quickpay_transaction_cache_expiration to control how long transactions are cached for. Defaults to one week.
  • Improvement: Move transaction data in the order overview from the shipping_address column to a separate payment column. Includes an updated UI.
  • Add: Introducing hook woocommerce_quickpay_accepted_callback to target any accepted callback
  • Remove: variables.plugin_version on payment creations.
  • Add: Shopsystem data to payment creations – name + version
  • Add: New filter ’woocommerce_quickpay_transaction_params_shopsystem’


  • Add vat_rate to refund requests


  • Add check for change_payment request in callback handler when authorizing new subscriptions to avoid subscriptions going into ’processing’ limbo.
  • Update ard logos to svg according to the new payment window from QuickPay
  • Add iDEAL logo
  • Add UnionPay logo
  • Add Cirrus logo
  • Add BankAxess logo
  • Add filter: woocommerce_quickpay_checkout_gateway_icon_url
  • Move client redirect for bulk actions inside permission check to avoid incorrect redirects for regular users.
  • Add additional checks for vat rates to avoid division by zero errors.
  • Update ’Test up to’ to 4.9.0


  • Add filter woocommerce_quickpay_order_number_for_api
  • Change order of transaction ID meta key searches


  • Remove SWIPP as possible payment option icon.
  • Add setting: Autocompletion of successful renewal/recurring orders.
  • Add payment type check in woocommerce_order_status_completed to early break out if a different gateway is used on the order.
  • Fix issue where fee was not capturable from the order view with MobilePay payments.


  • Add WooCommerce 3 compatibility release
  • Add filter woocommerce_quickpay_transaction_params_variables
  • Add filter woocommerce_quickpay_is_request_to_change_payment
  • Add subscription status check in the subscription_cancellation hook to avoid transactions being cancelled on subscriptions that are actually active.
  • Bulk action to retry failed payments and activate the subscription on successful captures.
  • Add transaction metadata accessor method
  • Add transaction state accessor method
  • Add shipping to transaction basket items.
  • Fix typo in Paypal on icon selection
  • Remove SWIPP support
  • Isolating meta view to separate view file.
  • Fix incorrect page check for adding meta boxes.


  • Minor settings helper text updates.
  • Add support for qTranslateX in the callback handler. Added logic to prevent browser redirects resulting in callback data loss.
  • WP-SpamShield – Bypass security check on QuickPay callbacks.
  • Improve product switching (downgrade/upgrade)
  • Fix syntax error in classes/updates/woocommerce-quickpay-update-4.6.php resulting in update not completing in case of caught exceptions.
  • Remove obsolete Google Analytics Client ID setting.


  • Fix issues with WooCommerce-check failing on network-sites.


  • Add dependency check before loading class files to avoid site crashes in case WooCommerce is disabled.


  • Exclude TRANSACTION_ID from being copied from subscriptions to renewal orders.
  • Update translations


  • Make WC_QuickPay_Views::get_view PHP 5.3 compatible.
  • Patch cases where transaction ID was not always found on renewal orders.


  • Fix issue with WC_QuickPay_Install not being included properly on plugin activation


  • Remove: WC_QuickPay_Install_Helper
  • Improvement: Stop relying on register_activation_hook when upgrading.
  • Improvement: Show admin notice when a database upgrade is required. This action must be triggered manually and it will run in the background.
  • Add views folder
  • Add WC_QuickPay_Views to simplify view handling.


  • Fix issue with older PHP version not bein able to use return value in write context in WC_QuickPay_Settings.


  • Replaced Paii logo with Swipp


  • Feature: Add basket content to transactions.
  • Feature: Always add invoice + shipping information on transactions.
  • Feature: Add Klarna as separate payment method.
  • Feature: Add Swipp as separate payment method.
  • Feature: Add Sofort as separate payment method
  • Feature: New filters added. (woocommerce_quickpay_transaction_params_shipping, woocommerce_quickpay_transaction_params_invoice, woocommerce_quickpay_transaction_params_basket)
  • Feature: Visualize required settings on the settings page.
  • Feature: Add admin notice if required fields are not configured.
  • Feature: Add button in the plugin settings’ ”Logs”-section for easy debug log access.
  • Feature: Add direct link to the wiki from the settings page.
  • Feature: Add live API key validator on the settings page.
  • Feature: Simplifying the settings page by removing unused fields.
  • Feature: Add hook ’woocommerce_quickpay_loaded’.
  • Feature: Add hook ’woocommerce_quickpay_accepted_callback_status_{$state}’.
  • Removed: Autocapture settings for subscriptions. Subscriptions now rely on the main autocapture settings (Physical/virtual products).
  • Removed: WC_QuickPay_Order::get_callback_url – deprecated since 4.2.0.
  • Bug: Remove subscription cancellation from callback handler, on ’cancel’-callbacks to avoid situations where subscriptions ends up in a faulty ”Pending Cancellation” state.
  • Bug: Fix bug where fees area added on top of each other.
  • Bug: Clean up old payment IDs and payment links before creating a new payment link used to update a credit card. Legacy data caused problems in some cases.
  • Improvement: Complete refactoring of how subscriptions are handled. The subscription transaction ID is now stored on the ’shop_subscription’-post. Now only payment transactions are stored on regular orders which should improve the renewal/capturing process and make the UI more intuitive. This should also eliminate a lot of quirks when it comes to renewal orders.


  • Fix bug where certain customers are not able to manually pay a failed recurring order.
  • Add convenience wrapper WC_QuickPay_Subscription::cart_contains_failed_renewal_order_payment()
  • Add convenience wrapper WC_QuickPay_Subscription::get_subscription_for_renewal_order()
  • Add convenience wrapper WC_QuickPay_Subscription::get_subscriptions_for_order()
  • Add convenience wrapper WC_QuickPay_Subscription::cart_contains_renewal()
  • Add ?synchronized query parameter to recurring requests.
  • Add WC_QuickPay_Order::get_payment_method_change_count()
  • Add WC_QuickPay_Order::increase_payment_method_change_count()
  • Hook into woocommerce_subscription_payment_method_updated_to_*
  • Use $order->update_status on failed recurring payments instead of WC_Subscriptions_Manager::process_subscription_payment_failure_on_order to get a correct count of failed payments.
  • Append the payment count (or timestamp to ensure backwards compatibility) to the order numbers sent to the QuickPay API when manually paying a failed recurring order.


  • Fix: Problem with fees being incorrectly stored when using custom decimal pointers. Rely on wp_format_decimals.


  • Add support for subscription_payment_method_change_customer
  • Add transaction state check in WC_QuickPay::subscription_cancel
  • Add WC_QuickPay_Order::is_request_to_change_payment()


  • Add possibility to disable transaction information in the order overview
  • Fix bug in WC_QuickPay_Helper::price_multiply which didn’t properly format prices where are not standard English format.
  • Add WC_QuickPay_Helper::price_multiplied_to_float
  • Add WC_QuickPay_Helper::price_custom_to_multiplied
  • Add unit tests and composer.json to repository


  • Fix problem where settings could not be saved for MobilePay and ViaBill


  • Fix problems with some merchants experiencing failed orders after successful payments.


  • Add WC_QuickPay_Order::has_quickpay_payment().
  • Add WC_QuickPay_API_Transaction::get_brand().
  • Add WC_QuickPay_API_Transaction::get_currency().
  • Add WC_QuickPay_API_Transaction::get_balance().
  • Add WC_QuickPay_API_Transaction::get_formatted_balance().
  • Add WC_QuickPay_API_Transaction::get_remaining_balance().
  • Add WC_QuickPay_API_Transaction::get_formatted_remaining_balance().
  • Add WC_QuickPay_API_Transaction::is_operation_approved( $operation ).
  • Add WC_QuickPay::plugins_url.
  • Add WC_QuickPay_Helper::has_preorder_plugin.
  • Feature: Add support for WooCommerce Pre Orders
  • Feature: Add Card icons to transaction meta data. Issue #62986808298852.
  • Feature: Add possibility to capture a specified amount and not only the full order amount.
  • Add Translation template (woo-quickpay.pot).
  • Fix: Meta-box being shown when any transactionID if mapped on the order. Issue #145750965321211.
  • Fix: Avoid multiple hooks and filters. Thanks to David Tolnem for investigating and providing code example.
  • Improvement: Compressed PNG card icons.
  • Improvement: Update existing payment links on process payment.
  • Improvement: Stop clearing the customer basket on payment processing. This step has been moved to ”thank_you”-page.
  • Improvement: Update translations.
  • Rename WC_QuickPay_API_Transaction::create_link to WC_QuickPay_API_Transaction::patch_link.
  • Remove: WC_QuickPay::prepare_extras()


  • Add support for multiple subscriptions.


  • Fix problem with Paii attempted to be loaded after removal.


  • Only make transaction status checks on orders with _transaction_id AND payment methods ’quickpay’, ’mobilepay’ and ’viabill’
  • Remove Paii gateway instance


  • Fix I18n textdomain load bug
  • Add wpml-config.xml
  • Add title to wpml-config.xml
  • Add description to wpml-config.xml
  • Add checkout_button_text to wpml-config.xml
  • Add ’order_post_id’ param to callback URL on recurring payments to ensure compatability with third party software changing the order number.
  • Add maxlength on text_on_statement


  • Fix incosistent subscription check which might cause problems for some shops.


  • Update translations
  • Change QuickPay_Helper::get_callback_url() to use site_url instead of home_url. This ensures callbacks to always reach the WordPress core.
  • Add WC_QuickPay_Subscription as convenience wrapper
  • Support for WooCommerce Subscriptions > 2.x
  • Removed support for WooCommerce Subscriptions 1.x.x
  • Refactor the method for checking if WC Subscriptions is enabled to support flexible folder names.
  • Deprecate the TRANSACTION_ID meta tag.
  • Refactor WC_QuickPay_Order::get_transaction_id – rely on the built in transaction ID if available.
  • Rely on WC_QuickPay::scheduled_subscription_payment() when creating the initial subscription payment.
  • Add curl_request_url to WC_QuickPay_Exception to optimize troubleshooting.
  • Add possibility to clear the debug logs.


  • Add: WC_QuickPay_API_Subscriptions::process_recurring_response().
  • Fix: First autocapture on subscriptions not working.
  • Fix: Problems with recurring payment references not working properly.
  • Remove: recurring from callback_handler switch.


  • Minor update to WC_QuickPay_Order::get_clean_order_number() to prevent hash-tags in order numbers, which is occasionally added by some shops.


  • Change method descriptions.
  • Disable unnecessary debug information.


  • Fix: Short order numbers resulted in gateway errors.


  • Feature: Add support for both fixed currency and auto-currency. Auto currency should be used when supporting multiple currencies on a web shop.


  • Tweak: Refactor filter: woocommerce_order_status_completed. Now using the passed post_id.
  • Feature: Add setting, checkout_button_text – button text shown when choosing payment.
  • Feature: Add property WC_QuickPay::$order_button_text.
  • Feature: Add WC_QuickPay_Install to handle DB updates for this and future versions.
  • Feature: Add setting, quickpay_autocapture_virtual – Makes it possible for you to set a different autocapture configuration for virtual products. If the order contains both a virtual and a non-virtual product, it will default to the configuration set in ”quickpay_autocapture”.
  • Add filter: woocommerce_quickpay_transaction_link_params.
  • Fix: Paii specific settings (category, reference_title, product_id).
  • Remove: WC_QuickPay_Helper::prefix_order_number().
  • Feature: Support ”WooCommerce Sequential Order Numbers” order number prefix/suffix.
  • Remove: WC_QuickPay::find_order_by_order_number() – rely on the post ID now stored on the transaction.
  • Fix: Remove currency from recurring requests
  • Feature: Add support for text_on_statement for Clearhaus customers.
  • Feature: Add customer_email to payment/subscription links. (Used for PayPal transactions).
  • Feature: Add support for subscription_payment_method_change
  • Feature: Add transaction ID, transaction order ID, payment ID and payment links to the meta content box for easy access and better debugging.
  • Update translations.


  • Fix: Payment icons not working in WooCommerce 2.4.
  • Fix: JSON encode and typecast error objects in case no specific error message is set from QuickPay
  • Fix: Add additional params to http_build_query to support server setups requirering param 2+3 to work properly
  • Fix: …