B2B for WooCommerce

WooCommerce B2B Configurations & Setup ↑ Back to top

1)  Products Visibility (by user roles)

    • 1.1  Global products visibility options
      1.2 Products visibility by user roles
      1.3 General settings linked to product visibility

2)  B2B Registrations:

    • 2.1 Adding new registration fields
      2.2 User roles dropdown on the registration form
      2.3 Approve new user settings
      2.4 Registration email settings
      2.5 General Settings for registration fields

3)  Hide Price & Request a Quote

    • 3.1 Adding new hide price & quote rule
      3.2 General settings & mini quote dropdown
      3.3 Customize quote form fields
      3.4 Captcha settings
      3.5 All submitted quotes

4)  Role-Based Pricing

    • 4.1 Role & Customer Specific Pricing from Product Edit Page
      4.2 Adjust prices for variations
      4.3 Rule-Based price adjustments (Bulk)
      4.4 General settings
      4.5 Understanding the Pricing Priorities

5)  Tax-Exempt Settings

    • 5.1 General Settings (Exemption form and checkbox)
      5.2 Customers & User Roles (Exempted by admin)
      5.3 Exemption Request Settings
      5.4 Emails and Notifications
      5.5 Tax-exempt settings for guest users

6)  Restrict Shipping Methods

7)  Restrict Shipping Methods



1)  Product Visibility: ↑ Back to top

Here we will show to entire configuration options linked to product visibility by user roles. To configure this feature, go to B2B> “settings” and navigate to the “products visibility” tab. Here you can configure the following features,

      • 1.1  Global products visibility options
        1.2 Products visibility by user roles
        1.3 General settings linked to product visibility

1.1 Global Settings: ↑ Back to top

In global settings, you can choose to show/hide products for all registered and guest users. You can hide specific products & categories as well as specify custom error messages to be displayed when a user tries to access these restricted pages with a direct link.

1.2 Visibility by user roles: ↑ Back to top

Under the visibility by user roles tab, you can show/hide products by specific user roles and draft a custom error message for each user role.

  • Show – option enables you to assign products to the specific user role and hide it from other user roles. For example, if you show (assign) product A to wholesale customers, it will be hidden for all other customers except wholesale customers.
  • Hide – option enables you to hide products from a specific user role and keep it visible for other user roles. In the above example, if you choose to hide product A from wholesale customers, the product will be hidden only for wholesale customers and will remain visible for other customers.

1.3 General settings: ↑ Back to top

Under the general settings tab, you can specify if you want to allow/disallow search engines to crawl and rank your restricted / private pages.

2)  B2B Registrations: ↑ Back to top

WooCommerce B2B plugin comes with a powerful B2B registration solution that allows you to add new user registration fields, display user roles on the registration form and manually approve/disapprove new user registrations. Go to B2B > “settings” and navigate to “B2B Registration Settings” to access B2B registration configurations. Here you can,

    • 2.1  Add new registration fields
      2.2 User roles dropdown on the registration form
      2.3 Approve new user settings
      2.4 Registration email settings
      2.5 General Settings for registration fields

2.1 Adding new registration fields ↑ Back to top

To add new registration fields, go to the “All Registration Fields” tab. Click on “Add New Field” to create a new custom registration field. While adding new field you can,

  • Customize field title, description, and placeholder
  • Choose from 14 different field types (Text, dropdown, multi-select, radio button, number, date & time picker, color and file upload )
  • Make field mandatory or optional
  • Make field readable-only once filled by the customer
  • Make field dependable to user roles i.e field will only show when the user selects the specific user roles from the dropdown during registration.

Adding new fields

2.2 User roles dropdown: ↑ Back to top

To configure user roles dropdown settings, go to “User Role Settings” under the “B2B registrations” tab. Here you can specify which user roles you want to display in the dropdown and customize the dropdown label.

2.3 Approve new user settings: ↑ Back to top

In this section, you can specify which user roles should be auto-approved and assigned and which user roles would require a manual validation from store admin. By default, all user role registrations are subject to manual approval, however, you can select the specific user roles and exclude them from the manual review process.

You can also customize error messages to be displayed to customers when a new user is created and pending for manual approval by the admin. This creates a better user experience as when a customer will try to login using the login & password will be notified about his/her account status.

2.4 Registration email settings: ↑ Back to top

This registration plugin empowers you to send automatic customizable email notifications for the following events,

Admin Email:

This email sent when new user is registered. You can enable/disable the welcome email using the checkbox.

Welcome/Pending Email:

You can enable/disable the welcome email using the checkbox. This email is sent when a new user registered by default this email includes the fields data. If user validation is active, you can include a custom message in it.

This email will be sent on the following instances,

  • Custom fields are added
  • Approve new user feature is active
  • Both of the above

The email will not be sent when no field is added and approve new user feature is inactive. If you want to disable this email permanently please contact the support team.

Approved & Disapproved Emails:

These 2 emails are sent when a customer is approved or disapproved. You can customize the email subject and body.

2.5 General settings for registration fields ↑ Back to top

The general setting enables you to customize the heading for new custom registration fields and add Google recpatcha keys.

3)  Hide Price and Request a Quote ↑ Back to top

WooCommerce B2B comes with a powerful hide price and “request a quote” feature that allows you to hide prices of specific products by specific user roles and replace their add to cart button with a”Add to Quote” button. Your customers will be able to add multiple products to quote basket and ask for price estimates.

Here is how you can configure the following settings of request a quote feature.

    • 3.1  Adding new hide price & quote rule
      3.2 General settings & mini quote dropdown
      3.3 Customize quote form fields
      3.4 Captcha settings
      3.5 All submitted quotes

3.1 Adding new hide price & quote rule ↑ Back to top

It’s a powerful WooCommerce B2B extension that allows you to create multiple rules to hide prices of specific products and for specific user roles. You can choose to replace prices with a custom text and “add to cart” button with a new “Add to Quote” button. To create new rules, Go to B2B tab, navigate to “Request a Quote” rules and click on Add new rule.

While creating new rule you can,

  • Rule Title: Provide a unique rule title for future reference.
  • Rule Type: Choose to enable the quote button for guests or registered users.
  • Rule Priority: In case of conflicting rules, you can set the priority to manage accordingly.
  • Quote Rule for Selected Products: Here you can specify on which products the “Add to Quote” button should appear.
  • Quote Rule for Selected Categories: Here you can specify for which categories the “Add to Quote” button should appear.
  • Quote for User Roles: Here you can specify if you want to show the quote button to specific or all customer groups & user roles.
  • Hide Price: You can hide the price of the products where the quote button is displayed.
  • Hide Price Text: You can add any text to replace the price. Leave empty if you don’t want to show any custom text message.
  • Hide Add to Cart button: Here you can specify if you want to keep the “Add to Cart” button but along with the quote button, or you want to replace “Add to Cart” with your new Quote button.  This will only apply to the products you have selected above.
  • Custom Button Label: You provide custom text for your new quote button.

3.2 General settings & mini quote dropdown ↑ Back to top

To access the general settings and mini quote options, go to B2B settings and navigation to “Request a Quote” > General settings tab. Here you can configure,

  • Mini quote cart placement
  • Customize email message sent to the customer on quote submission
  • Enable/Disable Ajax add to quote settings

3.3 Customize quote form fields ↑ Back to top

Go to the “quote fields” tab to customize form fields. You can enable/disable fields, make fields mandatory/optional, provide sort order and field label.

3.4 Captcha settings ↑ Back to top

The captcha setting allows you to add API keys to enable Google recpatcha on quote submission form.

3.5 All submitted quotes ↑ Back to top

In this section, you can access all submitted quotes along with the complete quote information i.e customer name, email, number, products added to the quote, custom message and any other field that you have added to acquire more information.

4)  Role-Based Pricing ↑ Back to top

Role-based pricing feature allows you to set up customer and role-specific pricing. You can set a fixed price, increase or decrease prices in fixed or percentage amount. You can configure role-based pricing form individual product edit page or use the rules management system to adjust prices of multiple products and categories in bulk.

    • 4.1 Role & Customer Specific Pricing from Product Edit Page
      4.2 Adjust prices for variations
      4.3 Rule-Based price adjustments (Bulk)
      4.4 General settings
      4.5 Understanding the Pricing Priorities

4.1 Role & Customer Specific Pricing from Product Edit Page ↑ Back to top

From the admin panel, go to the product page for which you want to set different prices for different user roles or customers. The product level settings allow you to,

  • Select user role and customer for which you want to change the prices
  • Set a fixed price or increase/decrease price by a percentage or a fixed amount
  • Set up minimum and maximum order quantity

4.2 Adjust prices for variations ↑ Back to top

To update the price for any variation, go to the product edit page and edit the variation. Under the variations settings, you can see the new “Price by User Roles” section. From here you can update the price for each variation. Please note, currently, there is no option to update prices in bulk for attributes and variations.

4.3 Rule-Based price adjustments (Bulk) ↑ Back to top

To update product prices for specific user roles or customers in bulk go to “B2B > Role based pricing” from left admin menu and navigate to “Add New Rule”.

While adding a new rule you can,

  • Specify the user role or customers for which you want to update prices.
  • Select products or categories for which you want to change prices
  • Set a fixed price or increase/decrease price by a percentage or a fixed amount
  • Set up minimum and maximum order quantity

4.4 General settings ↑ Back to top

Go to B2B > Settings and navigate to Role based Pricing Settings tab. Using the general settings you customize error messages for minimum and maximum order quantity.

4.5 Understanding the Pricing Priorities ↑ Back to top

The plugin has specific priorities to handle overlapping price adjustments. Here is how the default priorities work.

1.  Product Level Settings
1a. Price set for specific customer
1b. price set for specific user role

2. Rule-Based Settings
2a. Price set for specific customer
2b. Price set for specific user role

When product A price is configured using (1a) – no matter what you set in (1b, 2a & 2b), it will not work because the customer pricing has 1st priority.

When product A price is configured using (1b) – no matter what you set in (2a & 2b) it will not work because the product level role-based pricing has 2nd priority.

When product A price is configured using (2a) – no matter what you set in (2b) it will not work because in rule-based setting the customer pricing has 3rd priority.

5) Tax Exemption ↑ Back to top

B2B for WooCommerce comes with an advanced tax exemption tool. Go to wp-admin>B2B>settings>tax exemption tab. Here you can configure the following details

    • 5.1 General Settings (Exemption form and checkbox)
      5.2 Customers & User Roles (Exempted by admin)
      5.3 Exemption Request Settings
      5.4 Emails and Notifications
      5.5 Tax-exempt settings for guest users

5.1 General Settings (Exemption form and checkbox) ↑ Back to top

Tax exempt general settings

In the general setting, you can customize tax exemption form fields. This form appears in the customers’ “My Account” section from where customers can upload tax exemption files and provide necessary details to request the tax exemption. Once the form is submitted admin will receive an email notification to approve or disapprove tax exemption requests from users’ detail page in Backoffice.

You can also enable disable the checkbox on the checkout page to manual or auto remove the tax for exempted customers.

5.2 Customers & User Roles (Exempted by admin) ↑ Back to top

Here you can tax-exempt specific customers and user roles. These exempted customers and user roles do not require to submit any tax from my account page. This is the simplest way to offer tax exemption.

Customers & User roles

5.3 Exemption Request Settings ↑ Back to top

Here you can configure who can send tax exemption requests from my account page. The admin can also enable/ disable auto-approval when customer submits tax form.

Exemption request settings

The admin can review tax exemption from All Users > Customer name > Edit profile section

5.4 Emails and Notifications ↑ Back to top

  • Here you can configure the email and other notifications which includes,
  • Message to be displayed when user updates or submits his tax info
  • Email for admin can customer submits tax info and awaiting review
  • Email to the customer when tax status is approved or disapproved

5.5 Tax-exempt settings for guest users ↑ Back to top

This is a text message that admin can show to non-loggedin customers telling them the tax exemption is available and they can submit forms to claim tax exemption.

Guest Settings

6) Restrict shipping methods by user roles ↑ Back to top

Go to admin > B2B > Settings > Shipping tab to access the shipping methods settings. Here you can enable/disable shipping methods for users roles and visitors.

7) Restrict payment methods by user Roles ↑ Back to top

Go to admin > B2B > Settings > Payment tab to access the payment methods settings. Here you can enable/disable payment methods for users roles and visitors.

Restrict Payment Methods

FAQs, Common Issues, incompatibilities and fixes: ↑ Back to top

Is it compatible with elementor?

Only the request quote feature sometimes runs into conflicts with elementor when the standard “Add to Cart” hook is not used. For 90% of the elementor customers, it does work smoothly. You can purchase the extension and in case of any conflict, we would recommend you to please contact the support team so they can adjust the add to cart hook in our extension to match with your current hook.

Customer-specific pricing is working but role-based pricing is NOT working

When you configure customer-specific pricing, the rule-based pricing will not work. Please see the above heading for more details.

How to create user roles? I cannot see WooCommerce wholesale user role after installing this extension.

This extension does not add user roles, you can use any free available user roles editor plugin to add roles. Once the roles are added the same roles will start appearing in extension configurations.

After setting up the role-based pricing – the add to cart button is not working.

When you configure minimum quantity great than 1.  On the front end, the product will not be added to the cart unless the customer enters quantity more than the minimum limit or less than the maximum limit. You are not seeing any notification, probably because you have not added any minimum/maximum quantity error message. Go to backend > Role-based pricing and navigate to “settings” page to add custom messages for minimum and maximum quantities.

How to show a specific product or category to retailers only and keep it hidden for everyone else?

From the admin panel, go to B2B > Settings > Product visibility > Global visibility tab and select the product or category you want to hide from everyone. This will hide the product and/or category from guests and all registered customers irrespective of their role. Don’t forget to select the checkbox to enable this global setting.

Now as they are hidden for everyone, you can now open them to the retailer and any other user role. In order to show the product, go to “visibility by user roles” tab, and navigate to the user role for which you want to open this hidden product and category. In this case its retailer. Select the “show” from the dropdown + select all categories and hit the save button.

Now the specified product and/or category will remain hidden for everyone except the retailer user role.

WooCommerce - the most customizable eCommerce platform for building your online business.

Back to the top