How To Make An Invoice Gateway For Your WooCommerce Store (It Takes 30 Seconds)

There are several reasons why you might want an Invoice payment gateway for your WooCommerce store.

It might be as simple as being able to offer your customers better payment terms so they don’t have to pay cash right away.

How To Make An Invoice Gateway For Your WooCommerce Store

You may even run a business that only invoices customers, in which case, you currently have no option within WooCommerce to do that and communicate this option with your online customers.

Whatever your reason is, this guide will take you through how to quickly create an Invoice payment gateway for WooCommerce without the use of any plugins.

And the best thing is you can do this little hack on any WooCommerce based store.

UPDATE #2: How To Give Invoice Payment Terms To Wholesale Customers (But Still Get Paid Straight Away)

You might want to take a look at this blog post which describes a way to use a system called Rumbleship Financial so you can give the option of an invoice with payment terms to your customers without having to draft an invoice yourself manually.

It’s like the version 2.0 of the below method. The best part being is that you can also get paid in advance and let Rumbleship take on the collection of the invoice at a later date.

Click through to this blog post and read how it works, then scroll to the bottom and click the link so you can get a free demo and priority service as a Wholesale Suite customer.

UPDATE #1: Invoice Gateway Plugin Now Available

Since we wrote this handy tutorial we have distilled it into a small plugin which you can download and enjoy for free here. Essentially it does exactly the below with a few extra little bits and pieces that you might like :)

How to quickly create an Invoice payment gateway (no plugin required)

WooCommerce Invoice Gateway

Creating an “Invoice” gateway is actually quite easy and you can do it yourself without the help of a developer.

There’s no code involved and it’s basically just a process of renaming one of the existing un-used payment gateways.

Typically on most WooCommerce sites, you won’t be using the “Cash On Delivery” payment gateway. This is a bit of an antiquated relic and I’m not sure why it’s even in the core of WooCommerce. Thankfully it is because we can use it for our Invoice gateway instead.

Follow these steps:

Step #1: Login to your WordPress dashboard

Step #2: Navigate to WooCommerce->Settings

Step #3: Click on the “Checkout” tab at the top of the page

Step #4: Down the bottom of this page, you will see a table with all your installed Payment Gateways. Click on the “Cash On Delivery” one:

How To Create Invoice Gateway WooCommerce

Step #5: Once you’ve clicked on the “Cash On Delivery” payment gateway you will see the settings page for it.

Rename the Title of the gateway to “Invoice” or similar:

Invoice Payment Gateway WooCommerce

You might also like to adjust the description to let your customers know what they can expect.


Here’s how it looks on the front end:

WooCommerce Invoice Gateway Front End

Want to hide your new Invoice Gateway from normal customers?

One of the biggest reasons we came across this method of building an Invoice Gateway for WooCommerce was that our Wholesale Prices plugin users wanted a way to provide an invoice gateway to their wholesale customers, but only make it visible for wholesale users and not regular customers.

In Wholesale Prices Premium one of our most popular features is the ability to control what payment gateways your wholesale customers are allowed to use.

The way you hide your invoice gateway from normal customers and make it visible for wholesale customers is by keeping the Cash On Delivery (now named Invoice) gateway disabled.

You do that by not checking the first checkbox on the settings page for the payment gateway.

This then results in your normal customers not being able to see it (because it’s disabled) and your wholesale customers being able to see and use it (because Wholesale Prices Premium enabled it for those users).

Share on facebook
Share on twitter
Share on linkedin
Share on email

20 thoughts on “How To Make An Invoice Gateway For Your WooCommerce Store (It Takes 30 Seconds)

  1. Very interesting and ALMOST what I need. I deal with a lot of sporting clubs and there members. While I offer to invoice clubs, I get COD from their members (yes COD, people like to tap their card when the good are delivered).
    What I would also like is to be able to do is add each member by their club, so I can offer coupons to selected clubs and their members. Can your product do this?


    1. Hi Wally,

      Do you offers special pricing to each group of customers? If so then you could create a wholesale role per user group. Using the Invoice Gateway you could do this COD (or you can just use the COD gateway method). The orders get placed online, they pay when they get there and you just go back in and hit completed.

      Any further questions I definitely suggest contacting our pre-sales team.

      Howdy from Brisbane!


  2. Awesome article, great that Wholesale Prices Premium support this without the need for extra plugins. I have implemented the above on one of our sites – works flawlessly

  3. I have changed the COD text to invoice and added this to specific wholesale roles.

    When the payment gateway Invoice is disabled it doesn’t appear for the specific wholesales roles above. When it is enabled it appears for everyone. I can’t figure what I have missed – can anyone help?


  4. Hey Josh,
    I have two questions:
    1- Can we set different pricing for different roles and they just only be able to see their granted price?
    2- How do you import prices per roles? since I have 4000 products in my store, is there any convenient way
    to upload prices per role such as importing a CSV file?

    1. Hey Hamed,

      Yes, you can load different pricing for different roles. Please check the features list here for a full rundown and the KB article here for how it works specifically.

      And yep, we support importing wholesale pricing via CSV. You can use the built-in WooCommerce CSV import/export tool in core. We’re compatible :) You can also use other tools like WP ALl Import if you wish.

      Hope this helps!

  5. When will you be doing an update on the invoice gateway plugin to make sure it is compatible with the latest version of Woocommerce

  6. Hey Josh, great article! I´m about to open an e-commerce store where I will dropship from different art producers from Mexico. Since all of the products vary greatly in size, shape and weight, shipping will be tremendously difficult to calculate beforehand. As I want to achieve the max number of conversions, I thought about solving it with either of these strategies:

    Option 1) I found it will be easier to show customers the Subtotal for their shopping cart and then letting them know they´ll get an invoice for the subtotal PLUS shipping once we confirm the shipping costs of the final package. Hence, they´ll receive an invoice through e-mail which they´ll pay if they agree on the total costs

    Option 2) Charging customers for the products during checkout and later sending them an invoice for the shipping costs only, but obviously leaving a note during Checkout mentioning that the subtotal is only the product price and that the Shipping cost will be charged later on.

    I am really stuck in choosing which one would be better for my conversions and although it might seem obvious I am a bit mentally blocked on the subject. If you could suggest something I would really appreciate it. Thanks a lot, cheers from Mexico!

    1. Hey Carlos,

      You’ll probably find that option 2 would be better for your conversion rates.

      It would be even better though if you can estimate the shipping costs accurately and charge them on the spot. It will be a bit more work for you specifying product weights/cubic dimensions etc but it will more than make up for the labour with the increase sales. You’ll then be able to give them the option of paying on the spot.

      Best of luck!

  7. Josh, thank you so much for your response. I’ll do the effort of calculating the costs beforehand even if it’s arduous. Keep up the great work, definitely looking forward to installing your Wholesale plugin in a few weeks. Cheers!

    1. Hey Jason, planning a small update on that plugin soon, but it hasn’t been updated because it is still compatible and frankly a pretty simple plugin, so not much to do to it. It was well coded originally and hasn’t needed updating.

      As always though, test thoroughly :)

  8. Hi
    I’m searching for pay later solution for wholesale customers.
    My client’s site sell veggies both for retailers and wholesale customers. Her first requirement was being able to select multiple products and visit the shopping cart just upon payment. I saw this is one of your features already, good.
    The wholesale customers enter member section and buys the products in boxes so I thought to make different products altogether, simple solution but here comes the complications. Each wholesale customer has different price agreement depending on quantities, so I thought maybe they can get a personal coupon to get their discount, and when I thought I got away with it she said “some of the customers will pay their orders on the spot and get discount and some will pay periodically, get an automatic shipping certificate, and have their summed bill sent to them on the end of the month, for example.
    My clients payment gateway is already connected to her invoice and accountant so all payments are automated, does this plugin help automating the “pay later” customers?

    1. Hi Yinon, the invoice gateway would let her customers that are on credit terms process an order without paying. If you’re using Wholesale Suite as well for the wholesale side you’ll be able to restrict this payment gateway to a particular wholesale user role (or roles) so that other users can’t select it. Hope this helps!

    1. Hey Diran,

      The Invoice Gateway is a pretty simplistic plugin for allowing the customers to checkout and then you manage the invoicing process outside of Woo. For specific limits and terms you might need to look at a wholesale payment gateway solution (there’s a few around that do this) or manage it separately via your Xero/Quickbooks etc.

      Hope this helps point you in the right direction.

Leave a Reply

Your email address will not be published. Required fields are marked *