Different payment gateways can have very different processing costs. Credit card processors and digital wallets may charge a percentage of each transaction, while payment methods such as cash on delivery can create additional administrative or handling expenses.
By default, WooCommerce does not provide flexible settings for adding a different fee to each payment method. However, with the right plugin, you can automatically add fixed or percentage-based fees according to the payment gateway selected by the customer.
In this guide, we will explain how WooCommerce payment method fees work, when you might want to use them, and how to configure them without writing custom code.
Table of Contents
- Why Add Payment Method Fees in WooCommerce?
- Fixed vs Percentage-Based Fees
- Common Payment Gateway Fee Examples
- How to Add Payment Method Fees in WooCommerce
- Adding Fees on the Checkout Pay Page
- Applying Fees to Subscription Renewals
- Should Payment Method Fees Be Taxable?
- How to Display Payment Fees Transparently
- Legal and Payment Gateway Considerations
- Testing Your Payment Gateway Fees
- Conclusion
Why Add Payment Method Fees in WooCommerce?
Every payment method has its own cost structure. Some payment gateways charge a percentage of the transaction, while others apply a fixed fee or a combination of both. Manual payment methods may also require additional processing or administrative work.
Adding a payment method fee can help you:
- Recover some or all of your payment processing costs.
- Cover additional handling costs associated with manual payment methods.
- Encourage customers to choose lower-cost payment options.
- Keep product prices consistent instead of including the highest possible processing cost in every product price.
- Show customers exactly what they are paying for.
For example, you may want to add a fee when a customer selects a credit card gateway, while keeping direct bank transfer free. Or you may charge a fixed fee for cash on delivery.
Fixed vs Percentage-Based Fees
There are two main ways to calculate payment gateway fees in WooCommerce: fixed fees and percentage-based fees.
Fixed fees
A fixed fee adds the same amount to every qualifying order, regardless of the order value.
For example:
- Order total: $100
- Payment method fee: $3
- Final total: $103
Fixed fees can be useful for payment methods with predictable administrative or handling costs, such as cash on delivery or manual payment processing.
Percentage-based fees
A percentage-based fee changes according to the value of the order.
For example:
- Order subtotal: $100
- Payment method fee: 2.5%
- Calculated fee: $2.50
- Final total: $102.50
This approach is often suitable when a payment processor charges a percentage of each transaction.
Combined fixed and percentage fees
Some processors charge both a fixed amount and a percentage. In that case, you may want to combine the two fee types.
For example, a fee configured as $0.30 plus 2.9% would add $3.20 to a $100 order.
The most appropriate calculation method depends on the costs associated with each gateway and how much of those costs you want to recover.
Common Payment Gateway Fee Examples
Payment method fees can be configured for many different situations, including:
- Credit card fee: Add a percentage fee to help cover card processing costs.
- PayPal or digital wallet fee: Apply a separate rate when a digital payment method has higher transaction costs.
- Cash on delivery fee: Add a fixed amount to cover collection and handling expenses.
- Manual payment fee: Charge a fixed administrative fee for payment methods that require manual processing.
- Bank transfer: Leave the fee at zero to encourage customers to select a lower-cost payment method.
You do not need to apply a fee to every gateway. Each payment method can have its own configuration, allowing you to charge a fee only where it makes sense.
How to Add Payment Method Fees in WooCommerce
The WooCommerce Payment Gateway Fees plugin allows you to configure individual fee rules for your store’s payment gateways without modifying your theme or adding custom PHP code.
Step 1: Install and activate the plugin
Download the plugin, install it on your WordPress site, and activate it from the Plugins page.
Step 2: Open the payment gateway fee settings
Go to WooCommerce > Settings > Payment Gateway Fees > Fees. This page contains the fee settings for all payment gateways enabled in your WooCommerce store.
Because each gateway has its own settings, you can create different fee rules for credit cards, digital wallets, bank transfers, cash on delivery, and other available payment methods.
Step 3: Configure the fee
Find the payment gateway you want to configure, and enter a fixed fee, a percentage fee, or both. You can configure each gateway separately, allowing different payment methods to use different fee rules. The plugin will automatically calculate the appropriate amount when the customer selects that payment method.
For example, you could configure:
- A $2 fixed fee for cash on delivery.
- A 2.5% fee for a credit card gateway.
- A $0.30 fixed fee plus a 2.9% percentage fee for a payment processor.
- No fee for direct bank transfer.
Step 4: Choose the fee label
Enter the name that customers will see in the order totals. Use a clear label such as:
- Credit Card Processing Fee
- Cash on Delivery Fee
- Payment Processing Fee
- Gateway Fee
A descriptive label helps customers understand why the amount was added to their order.
Step 5: Configure the tax class
If the payment fee should be taxable, select the appropriate WooCommerce tax class. Tax requirements vary by location, so confirm the correct treatment with a qualified tax professional.
Step 6: Save and test the settings
Save the gateway fee settings and place a test order. Switch between the available payment methods to confirm that the fee appears, changes, or disappears as expected.
The plugin supports both the classic WooCommerce checkout and the block-based checkout.
Adding Fees on the Checkout Pay Page
WooCommerce sometimes directs customers to a separate pay-for-order page. This can happen when a customer needs to pay for an existing unpaid order or when a store administrator creates an order manually and sends the customer a payment link.
Customers may still be able to choose between multiple payment gateways on this page. Therefore, the order total should be recalculated when the selected gateway changes.
The WooCommerce Payment Gateway Fees plugin supports the checkout pay page, allowing the appropriate fee to be applied according to the payment method selected for the existing order.
This helps maintain consistent fee calculations whether the customer pays during the initial checkout or through a separate payment link.
Applying Fees to Subscription Renewals
WooCommerce Subscriptions normally copies fee items from the initial subscription order to its renewal orders. Therefore, if the initial order already contains the correct payment gateway fee, that fee may be transferred automatically, and no additional fee needs to be added by the plugin.
However, the payment gateway used for a renewal may not always match the gateway used for the initial order. The WooCommerce Payment Gateway Fees plugin can calculate the appropriate fee for the payment method assigned to the renewal order.
This is useful in situations such as:
- The initial order did not include a payment gateway fee. The plugin can add the appropriate fee when the renewal order is created.
- The customer changed their subscription payment method. For example, the initial order may have used a fee-free bank transfer, while future renewals use a credit card gateway that requires a processing fee.
- The existing fee no longer matches the renewal payment gateway. The plugin can remove or replace the previous fee according to its configuration and apply the fee associated with the current gateway.
This ensures that each renewal order can use the fee configured for its actual payment method instead of always inheriting the fee structure of the parent order.
Should Payment Method Fees Be Taxable?
Whether a payment processing fee is taxable depends on the store’s location, the customer’s location, the products being sold, and the applicable tax rules.
In some jurisdictions, an additional fee may follow the tax treatment of the products in the order. In others, it may require a different tax treatment.
The plugin allows you to assign a WooCommerce tax class to the fee. However, the plugin cannot determine which tax class is legally correct for your business.
If you are uncertain, consult an accountant or tax professional familiar with e-commerce transactions in the regions where you sell.
How to Display Payment Fees Transparently
Unexpected charges can lead to abandoned checkouts, customer complaints, and payment disputes. Any payment method fee should therefore be displayed before the customer places the order.
The WooCommerce Payment Gateway Fees plugin automatically:
- Displays the fee as a separate line in the order totals.
- Recalculates the fee and updates the order total when the customer changes the payment method.
- Removes the fee when the customer switches to a payment method for which no fee is configured.
As the store owner, you should also:
- Use a specific and understandable fee name.
- Explain applicable fees in your payment or checkout policy.
- Clearly disclose whether a fee may also apply to subscription renewals.
- Avoid presenting a mandatory fee as optional.
- Make sure the fee complies with applicable laws and payment provider requirements.
Instead of using a vague label such as Additional Charge, use a label that identifies the reason for the fee, such as Cash on Delivery Fee or Payment Processing Fee.
Legal and Payment Gateway Considerations
Before adding a payment method surcharge, check the rules that apply to your business.
Surcharges may be restricted or regulated depending on:
- The country or region in which your business operates.
- The customer’s location.
- The type of card or payment method being used.
- The payment gateway’s terms and conditions.
- Card network rules.
- Consumer protection and pricing regulations.
Some jurisdictions prohibit certain payment surcharges, while others limit the amount to the actual cost of processing the payment. A payment gateway may also impose requirements that are separate from local law.
The availability of a technical option does not necessarily mean that using it is permitted in every situation. Review the applicable laws and your payment provider’s agreement before enabling payment fees.
Testing Your Payment Gateway Fees
Always test your fee configuration before making it available to customers.
Your testing should include:
- Selecting every enabled payment gateway at checkout.
- Confirming that the correct fixed or percentage fee is calculated.
- Changing between gateways and checking that the previous fee is removed.
- Testing both classic and block-based checkout if they are used on your site.
- Testing the checkout pay page with an existing unpaid order.
- Checking taxes, discounts, shipping charges, and order totals.
- Placing a test subscription order and reviewing the resulting renewal order.
- Checking how the fee appears in WooCommerce emails and the customer’s account.
Test several order values when using percentage-based fees. This will help you confirm that the calculations and rounding behave as expected.
Conclusion
Adding payment method fees in WooCommerce can help your store recover transaction and handling costs while keeping product prices consistent. You can use fixed fees, percentage-based fees, or a combination of both, depending on the cost structure of each payment gateway.
The WooCommerce Payment Gateway Fees plugin provides a no-code way to configure these charges for individual gateways. It supports classic and block-based checkout, the checkout pay page, and WooCommerce Subscriptions renewal orders.
Whichever fee structure you choose, display the charge clearly, test the complete payment process, and confirm that the fee complies with the rules that apply to your business and payment providers.
Recommended Plugins
-
WooCommerce Deposits
Allow customers to pay a deposit for WooCommerce products and pay the remaining balance later.
-
WooCommerce Order Item Cost Editor
Edit WooCommerce individual order item prices (not just the line total) with the “WooCommerce Order Item Cost Editor” plugin.
-
WooCommerce Payment Gateway Fees
Automatically add custom fees to orders based on the selected payment method. Easily configure fixed and/or percentage-based fees per gateway — no coding required.
-
WooCommerce Price per Unit Display
Display price per unit in WooCommerce products, including shop and product pages, with smart defaults and variation support.




