WooCommerce Purchase Order Gateway

WooCommerce Purchase Order Gateway lets customers enter a purchase order number at checkout. The extension records that number on the order so you can match it to your existing purchase-order process. Arrange payment and any purchase-order approval outside WooCommerce checkout.

Requirements

↑ Back to top
  • WooCommerce 10.9 or later
  • WordPress 6.9 or later
  • PHP 7.4 or later

Installation

↑ Back to top

To start using a product from WooCommerce.com, you can use the “Add to store” functionality on the order confirmation page or the My subscriptions section in your account.

  1. Navigate to My subscriptions.
  2. Find the Add to store button next to the product you’re planning to install.
  3. Follow the instructions on the screen, and the product will be automatically added to your store.

Alternative options and more information at:
Managing WooCommerce.com subscriptions.

Setup and configuration

↑ Back to top
  1. Go to WooCommerce > Settings > Payments.
  2. Find Purchase Order and select Manage or Set up to open its settings.
  3. Select Enable Purchase Orders.
  4. Configure the settings below, then select Save changes.
  • Payment Method Title: The payment method name customers see at checkout. The default is Purchase Order.
  • Purchase Order Field Label: The label for the required purchase order number field. The default is Purchase Order Number.
  • Checkout Instructions: Instructions shown above the field at checkout. Use them to explain which number the customer should enter.
  • Order Confirmation Message: The message shown on the order-received page after the customer places an order.

Customers need a purchase order number from your agreed purchase-order process before placing an order. The extension does not generate or issue that number.

Test your setup

↑ Back to top
  1. On a staging site, add a product to the cart and go to checkout.
  2. Select Purchase Order. Confirm that the title, instructions, and field label match your settings.
  3. Enter a fictional purchase order number and place the test order.
  4. Confirm that the order-received page shows your confirmation message and purchase order number.
  5. Go to WooCommerce > Orders, open the test order, and confirm its On-hold status and purchase order number. Check the order email for the number too.

If your store offers both classic checkout and the Checkout block, test each checkout. A purchase order number is required in either one. If the field is empty, the customer must enter a number before the order can be placed.

Order management

↑ Back to top

Purchase Order orders start with On-hold status. The gateway reduces stock when it processes the order, but it does not collect payment. Follow your business’s purchase-order approval, invoicing, and payment process before moving the order forward.

When payment is confirmed, update the order according to its fulfillment state. See WooCommerce order statuses for the difference between Processing and Completed.

The purchase order number appears in the order admin, customer order details, and order emails. If you create an order manually, select Purchase Order as its payment method, enter the number in the Transaction ID field, and save. Reload the order to confirm that the purchase order number appears.

Purchase Order Gateway includes an invoice integration for WooCommerce Print Invoices and Packing Lists. Test the invoice output with your installed versions and confirm that the number matches the Purchase Order order. The integration requires a saved purchase order number.

Using Purchase Order with subscriptions

↑ Back to top

To offer Purchase Order for subscription purchases, go to WooCommerce > Settings > Subscriptions, enable Allow manual renewals at checkout, and save your changes. See Subscriptions general settings for renewal options. Customers pay manual renewals themselves; this gateway does not collect automatic renewal payments.

Troubleshooting

↑ Back to top

Purchase Order is missing at checkout

↑ Back to top

Confirm that Purchase Order Gateway is active under Plugins > Installed Plugins and that Enable Purchase Orders is selected in its payment settings. Save the settings and reload checkout. For a subscription cart, also check the manual-renewals setting above.

The purchase order number is missing from an order

↑ Back to top

Open the order and confirm that its payment method is Purchase Order. For an order created manually, enter the number in the Transaction ID field and save, then reload the order. If a customization changes how purchase order data is stored or displayed, ask its developer to check it against the developer reference below.

Developer reference

↑ Back to top

For hooks, order data, checkout fields, and customization examples, see the Purchase Order Gateway developer reference.

Questions and support

↑ Back to top

Something missing from this documentation? Still have questions and need assistance?

  • If you have a question about a specific extension or theme you’d like to purchase, contact us to get answers.
  • If you already purchased this product and need some assistance, get in touch with a Happiness Engineer via our support page and select this product’s name from the Product dropdown.

Related Products

Advanced, flexible shipping. Define multiple shipping rates based on location, price, weight, shipping class...

Use conditional logic to restrict the shipping and payment options available on your store.

Use of your personal data
We and our partners process your personal data (such as browsing data, IP Addresses, cookie information, and other unique identifiers) based on your consent and/or our legitimate interest to optimize our website, marketing activities, and your user experience.