Plugin Directory

Invoice Gateway for WooCommerce – Invoice Payment Gateway

This plugin hasn’t been tested with the latest 3 major releases of WordPress. It may no longer be maintained or supported and may have compatibility issues when used with more recent versions of WordPress.

Invoice Gateway for WooCommerce – Invoice Payment Gateway



Add a WooCommerce invoice gateway option for your customers on the checkout. The invoice payment gateway lets your customers checkout without paying and you can invoice separately via your Xero, Quickbooks, MYOB, Reckon Online, or other accounting package.

There’s no integration required, you just invoice as you normally would, the plugin lets you record the invoice number which gets added to the customer’s WooCommerce invoice email.

Orders get created in Processing status and from there you can generate a separate invoice from your accounting system to have your customer pay outside of WooCommerce.

Once you have been paid just add the invoice number to the order then change the Order status to Completed.

It’s perfect for situations like wholesale selling where customers are often reluctant to pay large orders online. It’s very similar to a WooCommerce quote at this stage and many people do use it as a quotes gateway.

This plugin is also fully compatible with Wholesale Suite’s WooCommerce Wholesale Prices plugin which is the #1 solution for wholesale sales in WooCommerce.

The WooCommerce invoicing process with Invoice Gateway For WooCommerce:

  1. Customer prepares their order as normal and heads to the checkout.
  2. Customer selects the WooCommerce Invoice gateway as their preferred payment option.
  3. The order goes into the system as “Processing” status – the customer doesn’t pay anything yet.
  4. You, the WooCommerce store owner, send the customer an invoice outside of WooCommerce from your accounting software (such as Xero, Quickbooks, etc).
  5. You go back to the order and insert the “Invoice Number” into the field provided and update the order. The customer will get an email.
  6. The customer pays the invoice directly to you.
  7. When the order is fulfilled, you mark the WooCommerce Order complete (as normal), the customer will see their WooCommerce invoice number on the Completed order email.


This WooCommerce invoice gateway plugin was brought to you by the folks at Wholesale Suite.

Users of our popular free Wholesale Prices extension for WooCommerce were asking for the option to provide an invoice payment option for their wholesale customers.

If you use Wholesale Suite’s Prices Premium plugin, you’ll also be able to use Payment Gateway mapping to map this Invoice Payment Gateway to the specific wholesale user roles that need it. Click here for more information about how that works.

We decided to give this invoice gateway WooCommerce feature away for free, not just to our customers, but to everyone using WooCommerce. If you want to say thanks, please leave us a rating 🙂



  1. Upload the invoice-gateway-for-woocommerce/ folder to the /wp-content/plugins/ directory
  2. Activate the plugin through the ‘Plugins’ menu in WordPress
  3. Setup your new invoice gateway under WooCommerce->Settings, Checkout tab, then click on Invoice Gateway in the submenu.
  4. … Profit!


We’ll be publishing a list of frequently asked questions soon.


January 29, 2020
This works better with Google Analytics for recording sales to Terms Customers. Changing the order status to Processing is recorded immediately, as opposed to our old way of having Terms Customers be put on hold / check method.
January 11, 2019
Thank you so much for posting this! Just what we needed! You’re the best for sharing!
June 1, 2017
Exactly what we needed. Thank you. I also love that you’ve included the feature to add invoice numbers to Orders – That was a pleasant surprise.
Read all 6 reviews

Contributors & Developers

“Invoice Gateway for WooCommerce – Invoice Payment Gateway” is open source software. The following people have contributed to this plugin.




  • Improvement: Add filters to Purchase Order text and descriptions
  • Improvement: Add new setting to set default invoice gateway order status
  • Improvement: Allow PO number field on checkout page if the cart total is 0
  • Bug Fix: Too few arguments fatal error when saving or updating orders from legacy api


  • Improvement: HPOS compatibility


  • Bug Fix: Various security and sanitization fixes


  • Feature: Add option to enter purchase order number


  • Improvement: WooCommerce 3.0 compatibility
  • Bug Fix: Warnings shown during adding of variations
  • Bug Fix: Issue with provided invoice number reference not being shown on order emails


  • Initial version