Discussion on WooCommerce Purchase Order Gateway B2B

Discussion on WooCommerce Purchase Order Gateway B2B

Cart 104 sales

FESTPlugins supports this item


This author's response time can be up to 1 business day.

20 comments found.

Also, is there a setting to add the PO to the order admin table (Woocommerce -> Orders)

Is there an easy way to add the PO to woocommerce emails under the email body? Like {ponumber} or something.

Hi, contact us please via our site support form and we will answer at all your questions.

Is this plugin still being updated/supported?

Ok, just haven’t seen and update in awhile – none really needed but I refer this plugin to several clients and wanted to make sure it was active :)

We understand if you have any questions about the functionality of our plugin, we will definitely answer and help you. Remember that one regular license applies to only one site.

Absolutely. You can probably see I own several licenses and each of my clients has purchased their own if not using one of my purchased licenses. :)

We found a significant security issue. Uploaded purchase order files are stored in a folder (in /uploads/) which is completely visible to the web. One of my client’s customers found their own purchase order via a Google search of their name.

Purchase orders almost certainly contain confidential data, so it seems like a massive oversight to store them in a public folder with no added protection.

Hello, We are working on this issue. Please write to our technical support to further resolve the issue.

I also sent an email. I am having issues with the upload button. When it’s clicked, nothing happens. The buyer doesn’t get an upload window to add the file. Any idea of what might be going on?

We’ve sent you an email. Please respond when you get a chance. Thank you!

Please update the email-po.php files to only show the Purchase Order text/header when the purchase order payment option has actually been used to place the order.

Find: _e( "Purchase Order {$po_number}\n", 'wcapog-fest' ); ?> Replace with: if(!empty($po_number) || !empty($po_file)) { _e( "Purchase Order {$po_number}\n", 'wcapog-fest' ); } ?> Find: <h2><?php _e( "Purchase Order {$po_number}", 'wcapog-fest' ); ?></h2> Replace with: <?php if(!empty($po_number) || !empty($po_file)): ?> <h2><?php _e( "Purchase Order {$po_number}", 'wcapog-fest' ); ?></h2> <?php endif; ?>

The suggested change will ensure that “Purchase Order” only appears when it’s relevant and will make it MUCH easier for email processing rules to identify when a purchase order has been received and flag it for action instead of everything being flagged as a potential purchase order.

Please repeat your message to This is necessary so that we process it in the ticket system and can quickly send you a link to the corrected version. Thank you for your suggestion to improve our plugin!

I’ve emailed you directly about an issue I’m having. Could you please confirm you’ve received it.

sent a message to your e-mail

Is this plugin compatible with the current version of WooCommerce? The reason I ask is due to the demo giving me a 500 error when I check the PDF uploaded to the test order I placed.


Hey! Yes, this plugin is compatible with the latest WC. This error is related to our demo website structure. We are currently fixing this.

Great support ! New version of the plugin contains improvements that I advised that is the possibility of not showing the upload button and add a PO number validation list so that if PO number doesn’t match the validation list the checkout is stopped. Really useful for me. Thanks to Ildar for his fast and helpful support .

Will the PO field show up for the customer (if allowed in Role) if order is being added from the admin side?


Thanks for the question! We are currently working on this feature. Think, it will be done tomorrow.

Good day,

This improvement was added to the plugin! Try it and if you will have questions/suggestions we are always opened for it.

Thanks for the quick reply.

Hello, your plugin is working great, except I have found two issue if you could please fix:
  1. Please remove the maxlength=”9” from the class-wc-gateway-purchase-order.php file. My clients customers many times have Purchase Orders that are more that 9 characters. This needs to go.
  2. We are having troubles with your plugin IF the customer clicks on a WooCommerce invoice to pay for a custom order. It won’t allow them to click the “Place Order” button for any other purchase method IF there the PO is empty. so they can’t pay via credit card or other method IF the PO number is empty. A huge issue that needs to be fixed (here’s a video that shows the issue:, I’ve already tried removing the validation from the settings too.)

We’ve fixed issues, please download the latest version 1.0.9. Thank you for patience!

Just downloaded, updated, and test. It’s working now. Thank you so much!

Glad to help, feel free to message us in the future!

Hi, During checkout I noticed you’re not asking for the customers address or contact details. Is that something we can capture during check out/creation of order?



Hello, Ian,

Thanks for the question! But can you please clarify what exactly do you mean? Customer’s address and contact details are handled by the WooCommerce. Our plugin just provides a functionality to upload a PO file to pay. Maybe, I just didn’t understand your question, then sorry. I will be glad to answer it!

I purchased your Purchase Order plugin for WooCommerce. I am using another plugin called User Role Editor which I created a new User role (I am calling it Quick Order). When I apply Quick Order as the only role that should see Purchase Order payment gateway and I am logged in as a user with Quick Order role, it does not show up.


Thank you for your message! We are working to fix this problem. Will get back to you as soon as possible.

Thank you!

Hi again,

The new version is on approval at the moment and it will get some time. Can you please email us at and we will send you the latest version before it will be approved.

Thank you!

Hi there,

I need to be able to add an OPTIONAL section to add a PO number to the checkout process for all orders.

I still need clients to be able to pay with cash / eftpos / visa.

The PO field is not a payment option but simply an additional OPTIONAL field that companies can use if they have a PO.

Will this plugin do what I need?

Hi bootit, thanks for sending the message. Our plugin provides a payment with PO# but you cannot use multiple payment methods at the same time in woocommerce. So, from what we understand you just need to have an extra custom field in checkout. To do this you can do it with custom programming or with a plugin. Here’s one article that might help you:

Can it generate automatic purchase order number?

Hi agustianus, thank you for your message. Currently it doesn’t generate PO numbers automatically since most clients provide their own PO numbers. But, we can definitely add this functionality to our plugin. Can you please send me your purchase code to and we will start working on this functionality. We should be able to add this before the end of this week.

Hi, is it possible to have the purchase order number show up in the new customer order email (the default by woocommerce) If so what do I need to add to the html template?

Hi there,

Thanks for your message, we are working now on it. You can get it earlier than it will be approved, just email me on and I will send it to you.


Installed the plugin and was testing out the functionality. The modal / pop-up that displays to upload the P.O. seems to be shifted off the page. Thought it might be a CSS issue but wasn’t sure how the modal / pop-up displays. Any help would be appreciated.


Please let me know if I can supply you with an email address to supply you with any additional information you require to address the issue. Thanks!

Hi, Thank you for your message. Yes, can you please send us your website address + username + password to access admin area of your website to my email:


Hi again, celturan

We made a research and unfortunately it is impossible to show this gateway for 0$ orders. The reason why is because this is the standard WooCommerce behavior and no one of standard gateways are showed for 0$ orders. Sorry.

can you send some custom code to make an exception for your gateway? The reason why I purchased this plugin is so a client can submit a PO but the item price needs to be $0.

Yes, just add this to a functions.php file in your theme folder add_filter( “woocommerce_cart_needs_payment”, function( $comparison ) { return true; } );

very nice design and result, fantastic work :) i wish you huge sales and a nice day ;) :)

Does this plugin require users to upload a file? Some of our customers have the PO ready to upload, and some prefer to fax instead.

Do you have a sample checkout page or screen shot of how this look for the user? Can they select from Credit Card or Purchase Order?


Hello, file upload is optional. So you can specify this in settings if you require a file. Checkout allows users to select to use credit card OR purchase order or any other payment method that you might have installed.

We will have demo page later this week.


Tell us what you think!

We'd like to ask you a few questions to help improve CodeCanyon.

Sure, take me to the survey