1. Documentation

B2B for WooCommerce

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 Apply discount on special or standard prices.
      4.6 Import Prices Using CSV File
      4.7 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

8) Prices & Tax Display (Show prices inclusive/exclusive of taxes based on user roles)



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.

How to approve new users:

The users can be approved by using 2 methods.

Approve/Disapprove link in the email:
When a new user is registered and awaiting validation –  an email is sent to admin which includes the user details and a direct link to approve/disapprove the user. The admin must be logged in to their admin panel in order for this link to work.
Approve from All User Section:
Once a user is created, he is listed in ”All User” section. You can find and approve the customer. Just hover on the customer’s name and the approve button will appear.

2.4 Registration email settings: ↑ Back to top

With the release of version latest version, the extension emails have been moved under WooCommerce > Settings > Emails. All of our email templates start with “Addify.”  This provides ease for merchants to override the email template just like they do for the default WooCommerce emails. You can enable/disable, customize the subject, heading following email templates from WooCommerce > Settings > Emails, whereas the body content of the email can be configured from our extension settings.

  • Addify Registration New User Email Admin
  • Addify Registration Update User Email Admin
  • Addify Registration New User Email to Customer
  • Addify Registration Pending User Email to Customer
  • Addify Registration Approved User Email to Customer
  • Addify Registration Disapproved User Email to Customer

You can customize the body content of these emails from Registration Fields > Settings > Emails. Here you can configure the content to be included in each email as well as use variables to include relevant information such as,
{customer_details}
{approve_link}
{disapprove_link}

The approve and disapprove variables can be used in admin email notification only where as the customer details variable can be used in all emails and this will trigger the data filled by customers during registration such as name, email, etc.

Addify Registration New User Email Admin 

This email is sent to the admin when a new user registers and the content added in Admin Email (New User) will be included in the body of this email.

Addify Registration Update User Email Admin

Email notification sent to admin when a user updates custom fields data from my account page. The content added in Admin Email Text (My Account Update) will be included in this email

Addify Registration New User Email to Customer

This is the welcome email notification sent to customers when a new user account is registered. You can disable this email if you choose to use the default “new account” email sent by WooCommerce. Alternatively, you can disable default email from WooCommerce > Setings > Email > New Account, and use our extension email as a welcome email to include the customer data by using the variables defined above, in the description of User Welcome Email Text as this data is included in the welcome email.

Addify Registration Pending User Email to Customer

This welcome email notification is sent to users whose accounts awaiting approval and currently, their status is pending. They won’t receive the above welcome email from our extension. You can disable the default “New Account” of WooCommerce to use this as an email to notify customers that their account is awaiting approval. The content added in Pending Email Body Text will be included in this email body and you can use the variables like {customer_details} to include the fields data field by the customer during registration.

Addify Registration Approved User Email to Customer

Email notification is sent to customers when their account is approved. The content added under Approved Email Text will be included in this email.

Addify Registration Disapproved User Email to Customer

Email notification is sent to customers when their account is disapproved. The content added under Disapproved Email Text will be included in this email.

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 Apply discounts on standard or special prices: ↑ Back to top

You can choose to apply the role-based pricing on special or standard prices based on user roles. Go to B2B > Settings > Role Based Pricing > Price for discount.

4.6 Import Prices Using CSV File ↑ Back to top

With the release of version 1.9.0, you can import prices using a CSV file and the format has to be as defined below. Please read the instructions and caution details as listed on page. You can access this section from WP Admin > B2B > Import Role Based Prices.

4.7 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

Prices & Tax Display: ↑ Back to top

You can now choose to display prices inclusive or exclusive of taxes based on user roles. For example, you can choose to display prices inclusive of taxes to general customers and inclusive of taxes to wholesalers. Go to B2B > Settings > Tax to access this feature.

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.

Custom Registration Fields: ↑ Back to top

Fields Sorting:

Here is how the sorting order works,

  • The defaults are always displayed first – Due to technical limitation you cannot sort the new custom fields with the default fields
  • User roles dropdown is always displayed at the end of default fields
  • The new custom fields are displayed under user roles dropdown –  you can easily sort these custom fields

Custom Fields on Checkout:

If you have enabled account creation during the checkout –  the same custom registration fields will be displayed under account creation section. However, the following fields and features will not be displayed on checkout account creation section due to underlined technical reasons.

User roles dropdown. File upload, multi-checkbox & reCaptcha

The file upload, multi-checkbox fields, and reCaptcha will not be displayed. However, you can user multi-selectbox to do the job and your customer can always upload files from my account page after completing the checkout process.

UPDATE:  In version 1.6 or above

We have removed the limitation, now the user role dropdown can be displayed at the checkout page under the account creation section. Along with the user role dropdown, the dependable fields will be displayed as well. The multi-checkbox is now available for the checkout page as well. The limitation for file upload field and reCaptcha remains.

Is the extension compatible with WooCommerce Product Add-Ons?

Only the request a quote feature is compatible with WooCommerce Product Add-Ons with the following limitations.

  • File Upload field cannot be carry forwarded with a quote.

Is the extension using reCaptcha V2 or V3?

The extension currently supports Google Recaptcha V2 version.

Quote emails are not working?

You would need to configure the emails from Request a Quote > Settings > Emails. Here you can enable notifications for admin and customers for different quote statuses and customize the messages as well. 

If you have already configured the above and the emails are still not working, there is a high possibility that your website emails are not working. We would recommend you please test the email configurations by using the following steps. 

  1. Disable our extension
  2. Confirm if new user account email is enabled from WooCommerce > Settings > Email > “New account”
  3. Create a new user account and see if you receive a new account email notification. 

If it doesn’t work, please check the email configurations.

As soon as your website emails start working, our extension quote emails should start working as well. If it doesn’t, please create a ticket using this link, and don’t forget to mention that you have already tried these steps.

How can I allow only registered users to submit quotes?

If you want to enable the request a quote for registered users only, you would need to create 2 rules.

Create your first rule for guest users and replace add to cart with a custom button – give it a suitable title like login/register to quote and add URL of your login/registration page.

Create another rule and this time select the registered user roles and replace add to cart with the quote button. By doing this only the registered users will see quote button whereas the guest users will see the login/register button.

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

  • 30 day money back guarantee
  • Support teams across the world
  • Safe & Secure online payment