By now, you probably know that you should never run WooCommerce with a single payment gateway. We’ve already seen in the “PayPal or Stripe?” article that (spoiler alert!), the best solution is “PayPal AND Stripe”. Which means you need to understand that different customers prefer different kinds of payment methods (and this could increase your conversion rate dramatically).
Now we move to the next step: the chargebacks issue, and the risk of having your payment gateways banned by their providers.
A user recently told us that he has a WooCommerce subscription-based business, which is great. The problem is that sometimes customers don’t read that part and think they’re making a one-time purchase. And sometimes, when they realize they purchased something different than what they had in mind, they ask their bank or credit card company to issue a chargeback.
The Stripe website explains it like this:
A chargeback happens when a cardholder makes a claim to their bank or credit card company that a payment made on their card was fraudulent. When a chargeback occurs, the business to which the payment was originally made is required to repay the full purchase amount, plus a chargeback fee.
While you can really do your best to avoid chargebacks by being transparent on your website and order receipts, sometimes – especially for WooCommerce Subscriptions – that’s not enough. Investors say: “Don’t Put All Your Eggs in One Basket” and the same applies here: you’d better record your active subscriptions under PayPal, Stripe, Authorize, and so on, so that all your recurring revenue is not in the same account. Continue reading WooCommerce: Why Rotating Payment Methods Can Protect your Revenue
As you probably already know, WooCommerce offers the easiest way to build an online store with WordPress.
Depending on your individual needs, WooCommerce allows you
to add digital products as well as subscriptions. One of the most important
components of your store is the payment gateway you use.
This is what offers your shoppers a secure shopping experience by connecting your store to an online payment service where they can pay for their orders, safely and securely.
What is a WooCommerce Payment Gateway?
WooCommerce payment gateways work by verifying the billing information for every customer, approving requests and ensuring you get paid.
The type of WooCommerce payment gateway to choose depends on several factors which include how easy it is to integrate with WooCommerce, the target clients you serve, related costs and the level of security you need. Continue reading 6 Popular WooCommerce Payment Gateways
I invoice clients via WooCommerce, and then send them the “Invoice Email”, which takes them to the “Order Pay” page. Of course, I want to give them the option to pay via “Bank Transfer” (bacs), but I don’t want this to be visible on the default checkout page.
We’ve seen in the past how to disable payment gateways given certain conditions… but how do we “enable” one? Here’s a snippet for that – enjoy! Continue reading WooCommerce: Enable Payment Gateway Only for “Order Pay Checkout”
Today we take a look at the WooCommerce Checkout Page and specifically at how to disable a payment gateway (for example PayPal) when a specific shipping method is selected (e.g. “local_pickup”). Enjoy! Continue reading WooCommerce: Disable Payment Gateway For Specific Shipping Method
Here’s a simple PHP snippet to add a fee to the checkout for every payment or for a specific payment gateway.
Please do remember that for certain payment gateways such as PayPal, adding checkout fees is currently against their Terms of Service so make sure to check this first.
As usual, this needs to be copied and pasted in your child theme’s functions.php file. Enjoy! Continue reading WooCommerce: Add Checkout Fee for a Payment Gateway (e.g. PayPal)
A simple function for a very common issue: “I can’t find where to change the PayPal icon?”. If you have the same problem, here’s a quick PHP fix. Continue reading WooCommerce: Change the PayPal Icon @ Checkout Page
I developed a custom payment gateway plugin for a client, who wanted to add a similar method to “cod” (cash on delivery). FYI, he wanted to add a method called “card on delivery”. I simply duplicated the code, added the PHP to a file, made a plugin and gave him the plugin zip file. And everything was working great… until he did a test checkout. Continue reading WooCommerce: Fixing Fatal error Call to undefined function wc_get_order()
If you wish to print the payment gateway name on order emails (in its own paragraph below the order items table), here’s a handy snippet for you.
All you need to use is the “woocommerce_email_after_order_table” hook to pick the correct position, and then the “get_payment_method_title” WooCommerce function to return the payment gateway name. Enjoy! Continue reading WooCommerce: Add Payment Method to Order Emails
This is a cool function you can apply to any payment gateways for any order threshold. for example, you may want to disable bank transfers if orders are below $10, or disable PayPal payments if orders are above a certain cart total. Here’s what I did. Continue reading WooCommerce: How to Disable PayPal on Orders Above $100
You may want to disable payment gateways depending on the user role or user capability. For example, you may want to disable PayPal for “user role: shop_manager” or enable a specific gateway for “user role: customer”. All you need is pasting the following code in your functions.php Continue reading WooCommerce: Disable Payment Gateway for Specific User Role
You might want to disable PayPal for non-local customers or enable a specific gateway for only one country… Either way, this is a very common requirement for all of those who trade internationally.
Here’s a simple snippet you can further customize to achieve your objective. Simply pick the payment gateway “slug” you want to disable/enable (“paypal”, “authorize”, “stripe”, etc.) and the country code (US, ES, IE, etc.) and then apply your conditional rules in the plugin below. Continue reading WooCommerce: Disable Payment Gateway for a Specific Country