Company Order Approval

Starting with version 4.2.20, B2BKing introduces a new feature for subaccount / company order approval. In a nutshell, this allows Woocommerce business users to require approval when one of their subaccounts places an order.


A business account has 3 subaccounts, one for each branch of their store. These subaccounts regularly have to purchase supplies and inventory. When a subaccount places an order, it will have to be first reviewed and approved by the main account. The main account is notified, they review the order and then they approve or reject it. After approval, the order will be pending payment and the main account (or the subaccount) can pay for it.

Subaccounts & Employee Accounts #

B2BKing has a powerful subaccounts feature, ideal for company employee accounts. Through this feature, a business user can create subaccounts that they can control and set permissions for. For example one of their subaccounts may be able to place orders, while another one may only be able to create purchase lists.

The newly added company order approval feature extends subaccounts by adding an additional permission level: accounts that can place orders, but whose orders are subject to approval.

How to Enable the Order Approval Feature #

Before being able to use this feature, you must first go to B2BKing -> Settings -> Other and enable it under 'Subaccounts & Company':

Secondly, you must go to WooCommerce -> Settings -> Payments and enable the 'Company Order Approval' gateway:

How a business customer can enable approval for their subaccount #

When configuring a subaccount (in My Account -> Subaccounts), business accounts can now see a new permission: "Orders require approval".

This applies to only that specific subaccount (it can be configured differently for each subaccount).

How placing an order works #

A subaccount will add products to cart normally through the shop pages. When they go to the checkout page, they will see only one payment option, which is the 'Pending Company Approval' option.

Instead of the 'Place Order' button, they now have a 'Send for approval' button.

After the order is placed, it is marked as 'Pending Approval - the order will be sent for review and approval':

The parent account will receive an email notification, letting them know that the subaccount has placed an order that requires approval:

The parent account will then go to My Account -> Orders and will see the order. They can see which subaccount placed it and that the order's status is 'Pending approval':

After clicking on the order, the user can see 2 buttons for approval and rejection:

If the order is rejected, it will be cancelled, and the main account can also enter a rejection reason. If the order is approved, the order will now be pending payment. On the My Account -> Orders panel, the account can now see the order has a 'Pay' button that can be used to pay for the order:

After clicking that button, the user can choose a payment method and pay for the order:

Powered by BetterDocs