Title: Payment and Shipping Method Checkout Fee for WooCommerce
Author: Ivan Popov
Published: <strong>December 21, 2019</strong>
Last modified: May 15, 2026

---

Search plugins

![](https://ps.w.org/payment-method-checkout-fee-for-woocommerce/assets/banner-772x250.
png?rev=2429427)

![](https://ps.w.org/payment-method-checkout-fee-for-woocommerce/assets/icon-256x256.
png?rev=2429427)

# Payment and Shipping Method Checkout Fee for WooCommerce

 By [Ivan Popov](https://profiles.wordpress.org/vipestudio/)

[Download](https://downloads.wordpress.org/plugin/payment-method-checkout-fee-for-woocommerce.2.1.0.zip)

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

 [Support](https://wordpress.org/support/plugin/payment-method-checkout-fee-for-woocommerce/)

## Description

This plugin lets you attach an extra fee — either a percentage of the cart subtotal
or a fixed amount — to any WooCommerce payment gateway or shipping method. Configuration
lives under **WooCommerce  Settings  Checkout Fee**.

Typical use cases:

 * Pass card-processing surcharges to customers paying with specific gateways.
 * Add a handling fee for Cash on Delivery.
 * Add a packaging/insurance fee for express shipping methods.

Features:

 * Per-method configuration — every payment gateway and shipping method has its 
   own settings.
 * Choose between a **percentage of cart subtotal** or a **fixed amount**.
 * Optional **taxable** flag so the fee can be included in tax calculations when
   required.
 * Customisable fee label shown to the customer.
 * Works with the classic checkout and the block-based Cart & Checkout.
 * Declares compatibility with WooCommerce High-Performance Order Storage (HPOS).

## Screenshots

[⌊You can find the configuration under WooCommerce → Settings → Checkout Fee.⌉⌊You
can find the configuration under WooCommerce → Settings → Checkout Fee.⌉[

You can find the configuration under WooCommerce  Settings  Checkout Fee.

[⌊Setup is that simple.⌉⌊Setup is that simple.⌉[

Setup is that simple.

[⌊Frontend.⌉⌊Frontend.⌉[

Frontend.

## Installation

 1. Upload the plugin folder to `/wp-content/plugins/` or install via the WordPress
    Plugins screen.
 2. Activate the plugin through the **Plugins** menu in WordPress.
 3. Go to **WooCommerce  Settings  Checkout Fee** and configure the fee for each payment
    or shipping method you need.

## FAQ

### Where is the configuration screen?

WooCommerce  Settings  Checkout Fee.

### Does the percentage fee include shipping or taxes?

No. The percentage is applied to the cart subtotal (line items, before shipping 
and taxes). Whether the resulting fee is itself taxed is controlled per method by
the **Taxable** option.

### Will it work with the new block-based Checkout?

Yes. The plugin hooks into `woocommerce_cart_calculate_fees`, which fires for both
classic and block-based checkout. The block checkout automatically recalculates 
totals when the customer switches payment method via the Store API.

### Is it compatible with WooCommerce High-Performance Order Storage (HPOS)?

Yes — compatibility is declared with both `custom_order_tables` and `cart_checkout_blocks`.

## Reviews

![](https://secure.gravatar.com/avatar/6e4d5236f3c4e22074b0b2f1c8f46226e1b84dff0ec2ddfdeeb803096f0a3a6e?
s=60&d=retro&r=g)

### 󠀁[Cool but…](https://wordpress.org/support/topic/cool-but-7/)󠁿

 [dantgal](https://profiles.wordpress.org/dantgal/) November 28, 2023

It's working great, but payment operators takes also its fee from shipping costs
which clients have to pay too. So I changed at file checkoutfee.php from: $originalNumber
= WC()->cart->get_cart_contents_total(); to: $originalNumber = WC()->cart->get_cart_contents_total()
+ WC()->cart->get_shipping_total(); and it's now adding to the fee the shipping 
costs – so working now as I wanted 🙂 Greetings!

![](https://secure.gravatar.com/avatar/6a14d76491b0f9088eba0a4df84fe7cbc799df6621a35036f3077055fa78738d?
s=60&d=retro&r=g)

### 󠀁[great plugin](https://wordpress.org/support/topic/great-plugin-37187/)󠁿

 [ottomania](https://profiles.wordpress.org/ottomania/) July 11, 2023

A very important and necessary plugin for all E-Commerce SitesThank you very much.
Health for your effort. Nice and very useful plugin.

![](https://secure.gravatar.com/avatar/6611850467c69afdc4c0b28ce8f5cf5a4089a1e32a849f32462795895d2f7e5a?
s=60&d=retro&r=g)

### 󠀁[Exactly what I was looking for](https://wordpress.org/support/topic/exactly-what-i-was-looking-for-564/)󠁿

 [nhldata](https://profiles.wordpress.org/nhldata/) February 4, 2023

Exactly what I was looking for. Super simply and works as advertised.

![](https://secure.gravatar.com/avatar/54012a660b6427dc9c55e1ba700793dcdcf0c3f9b92436aa07bf2ca4756b0740?
s=60&d=retro&r=g)

### 󠀁[Works well and for free! 🙂](https://wordpress.org/support/topic/works-well-and-for-free/)󠁿

 [BG2021](https://profiles.wordpress.org/enikolov/) December 30, 2022

It does it's work and for free! I made it with it. Ads in brackets the percentage
you set e.g."(2%)" to the title that customers read. It's % of the products in the
order (does not include the shipping fee).An idea for future versions might be adding:"
fixed amount" fee option to make the % fee from the total (so that includes also
the shipping) Option to set fees to turned off payment methods (as PayPal stays 
turned off for currencies that it does not support but still works for the non-default
currencies that the website supports) Thanks a lot to the Vipe team for that plugin!
It saved me 150 USD for other plugins at least…

![](https://secure.gravatar.com/avatar/a7b4cd88cf172b71771ded0ed6c4ec66f99d6e5eb423e2db017e31ee4619318e?
s=60&d=retro&r=g)

### 󠀁[Nice and clean](https://wordpress.org/support/topic/nice-and-clean-86/)󠁿

 [linterieur](https://profiles.wordpress.org/linterieur/) December 24, 2020

Very easy to install and it works. But….I would rather work with a fixed amount,
is that possible in future? gr Linda

 [ Read all 6 reviews ](https://wordpress.org/support/plugin/payment-method-checkout-fee-for-woocommerce/reviews/)

## Contributors & Developers

“Payment and Shipping Method Checkout Fee for WooCommerce” is open source software.
The following people have contributed to this plugin.

Contributors

 *   [ Ivan Popov ](https://profiles.wordpress.org/vipestudio/)

[Translate “Payment and Shipping Method Checkout Fee for WooCommerce” into your language.](https://translate.wordpress.org/projects/wp-plugins/payment-method-checkout-fee-for-woocommerce)

### Interested in development?

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

## Changelog

#### 2.1.0

 * Fix: percentage and fixed fees were never actually added to the cart because 
   of a mismatch between the option key used by the settings UI and the one read
   at checkout. Fees now apply as configured.
 * Fix: activation routine no longer deletes existing per-method settings and no
   longer force-resets the fee type to “percentage” on every activation.
 * Fix: removed `is_plugin_active()` call that could fatally error during activation
   on some hosts.
 * New: per-method **Taxable** option (previously every fee was implicitly taxable,
   with no way to change it).
 * New: declares compatibility with WooCommerce HPOS and Cart & Checkout Blocks.
 * New: one-time migration of legacy option keys (`{id}_name_label`, `{id}_name_percent`,`{
   id}_fee_type`) to a clean, prefixed namespace (`pmcf_{id}_*`).
 * New: own text domain `payment-method-checkout-fee-for-woocommerce` (previously
   strings used the `woocommerce` domain).
 * Improvement: configuration now lists every registered payment gateway, not just
   those available for the current empty admin cart.
 * Improvement: scripts are now enqueued via `wp_enqueue_scripts` and only on the
   checkout page.
 * Improvement: multi-package carts no longer apply the same shipping-method fee
   multiple times.
 * Cleanup: removed unused Monolog dependency and `vendor/` directory, shrinking
   the plugin download significantly.
 * Cleanup: removed dead admin page and orphaned admin JS/CSS that were not wired
   up to anything.
 * Tested up to WordPress 6.9 and WooCommerce 10.7.

#### 2.0.1

 * Bug fixing with label title.

#### 2.0.0

 * Major update with significant improvements.
 * Settings moved into the WooCommerce Settings tab.
 * Enhanced code quality.
 * Added an option to set a fixed fee.
 * Added support for shipping method fees.

#### 1.2

 * Code Improvement.
 * Added checks if WooCommerce is enabled so the website won’t crash if you disable
   it.

#### 1.0.0

 * Initial Release — 19.11.2019.

## Meta

 *  Version **2.1.0**
 *  Last updated **4 months ago**
 *  Active installations **200+**
 *  WordPress version ** 6.2 or higher **
 *  Tested up to **6.9.9**
 *  PHP version ** 8.0 or higher **
 * Tags
 * [checkout](https://wordpress.org/plugins/tags/checkout/)[fee](https://wordpress.org/plugins/tags/fee/)
   [payment](https://wordpress.org/plugins/tags/payment/)[shipping](https://wordpress.org/plugins/tags/shipping/)
   [woocommerce](https://wordpress.org/plugins/tags/woocommerce/)
 *  [Advanced View](https://wordpress.org/plugins/payment-method-checkout-fee-for-woocommerce/advanced/)

## Ratings

 5 out of 5 stars.

 *  [  5 5-star reviews     ](https://wordpress.org/support/plugin/payment-method-checkout-fee-for-woocommerce/reviews/?filter=5)
 *  [  0 4-star reviews     ](https://wordpress.org/support/plugin/payment-method-checkout-fee-for-woocommerce/reviews/?filter=4)
 *  [  0 3-star reviews     ](https://wordpress.org/support/plugin/payment-method-checkout-fee-for-woocommerce/reviews/?filter=3)
 *  [  0 2-star reviews     ](https://wordpress.org/support/plugin/payment-method-checkout-fee-for-woocommerce/reviews/?filter=2)
 *  [  0 1-star reviews     ](https://wordpress.org/support/plugin/payment-method-checkout-fee-for-woocommerce/reviews/?filter=1)

[Your review](https://wordpress.org/support/plugin/payment-method-checkout-fee-for-woocommerce/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/payment-method-checkout-fee-for-woocommerce/reviews/)

## Contributors

 *   [ Ivan Popov ](https://profiles.wordpress.org/vipestudio/)

## Support

Issues resolved in last two months:

     0 out of 1

 [View support forum](https://wordpress.org/support/plugin/payment-method-checkout-fee-for-woocommerce/)