Extended Registration and Custom Fields

Introduction #

B2BKing introduces a powerful extended registration feature that lets you configure multiple registration options (roles) as well as custom registration fields.

The registration functionality is very flexible and supports:

  • Business registration with multiple business types
  • Both B2B and B2C registration
  • Separate registration pages via shortcodes
  • 10+ types of custom fields: text, number, date, dropdown, checkboxes, file uploads, etc.
  • Different required fields for different registration roles
  • VAT number support and validation through the European VIES system
  • Custom checkout billing fields and adding fields to invoices
Registration Functionality Preview

How It Works #

To make this possible, the plugin adds the following panels to the B2BKing admin backend:

  • Registration Roles
  • Registration Fields
Registration Roles and Fields in the Admin Backend

Registration Roles are the registration options that customers can apply for.

Registration Roles Dropdown

You can configure any number of roles. There are two default roles (Individual and B2B Customer), which can be modified, removed, or added to.

Registration Roles Example: Individual, Wholesaler, Factory

Each registration role can be associated with different fields. For example, a user applying for the "Factory" role might be required to upload a factory certificate document, whereas a user applying for the "Wholesaler" role might not.

Registration Fields are the actual fields associated with each registration option. There are default fields such as "Company Name," "Company Address," and "VAT Number," but you can also configure your own custom fields.

Registration Fields Example

Fields can be connected to WooCommerce billing fields. For example, this means that if a customer enters their company name during registration, it will be pre-filled during checkout so they do not need to enter it again.

Registration on the My Account Page #

The simplest way to configure registration is to enable the "Enable Dropdown & Fields" setting in B2BKing -> Settings -> Registration:

Enabling and disabling the registration roles dropdown

This will add the User Type dropdown to WooCommerce registration pages such as the "My Account" page.

"User Type" dropdown

Note: In order to see the "Register" option on My Account pages (and not just the login form), you must enable the setting in WooCommerce -> Settings -> Accounts -> "Allow customers to create an account on the "My account" page".

Completely Separate B2B and B2C Registration / Shortcodes #

If you would prefer to completely separate the two types of registration rather than use a dropdown, read the following article: Completely Separate B2B and B2C Registration

About Registration Roles #

When configuring registration roles, you will see the following panel:

Registration roles in the admin backend

Here you can drag and drop roles to reorder them in the "User Type" dropdown, as well as create or edit each role.

When editing a role, you will see the following panel:

There are three available options:

  • Approval required — controls whether users who apply for this role are automatically or manually approved.
  • Automatic approval to group — controls which customer group users who apply for this role will be assigned to.
  • Non-Selectable — this option should only be enabled for the first "please select a role" option in the dropdown.

Each registration role has its own attached fields that become visible when the role is selected in the dropdown.

About Registration Fields #

When configuring registration fields, you will see the following panel:

Registration fields in the admin backend

Here you can edit, add, or remove fields, as well as drag and drop fields to reorder them.

You can configure a field in more detail by clicking on it, which will open the field configuration panel:

Individual registration field panel

When setting up an individual registration field, you can configure:

  • Whether the field is required
  • Sort order (the order in which the fields appear)
  • Registration role (which role the field is visible for)
  • Whether the field is editable after registration
  • Field type (Text, Textarea, Number, Telephone, Select, Email, File Upload, Date)
  • Field label
  • Placeholder

You can also select how these fields are connected to billing through Billing Options.

Billing options for the VAT field

In billing options, you can select whether a field is also available in the billing section at checkout. Some fields are special, such as the VAT field. For the VAT field, you can choose which countries can see the field and enable or disable automatic VAT VIES validation.

Through billing options, you can also create custom fields and have them appear at checkout and on the user's My Account page.

You can also choose a connection to a field like "Town," and then what the user inputs in the "Town" field will automatically populate the "Town/County" section in their billing details.

Example

You can create a "Parent Company Name" field, available to "All Registration Roles."

Custom "Parent Company Name" registration field
The field can also be made available and required at checkout / billing

Roles and Groups #

Registration roles and customer groups are different. Roles are the public options in the dropdown, whereas groups are private structures used to organize customers.

Customers do not know which group you have placed them in, and each group can have its own rules, prices, discounts, available payment methods, shipping methods, etc.

Automatic and Manual Approval #

When customers register, they can be approved manually, with the shop manager reviewing their application and any uploaded data or documents, and then placing them in a customer group if approved.

Alternatively, certain roles can be approved automatically, in which case customers are placed in the group configured for automatic approval.

Example

Customers who apply for the "Construction Supplier" role are automatically approved and added to the "Suppliers" customer group.

Automatic approval to customer group

Alternatively, when using manual approval, the shop manager will have the option to approve or reject each application:

Manually approving or rejecting a user

The registration details provided can be complex and include elements such as "Company License" or "Date of Incorporation," as seen in the next image:

Complex data including Company License in registration (based on custom registration fields)

Account Requires Approval Messaging #

If an account requires approval, the user will not be able to log in until approved and will see the following messages or errors:

Thank you for registering. Your account requires approval. Please wait.
Your account is still waiting for approval. Until approved, you cannot log in.

Username, Password, and Recommended Registration Settings #

In the registration form, there are two fields that can be controlled through WooCommerce settings:

  • Username
  • Password

The two settings that control these fields are found in WooCommerce -> Settings -> Accounts & Privacy:

Enable or disable these checkboxes to add or remove username and password from registration

Enable or disable the first checkbox to show or hide the username field.

Disable the second checkbox to allow customers to choose their own password during registration.

Recommendation: If you use manual approval on your shop, it is best to enable the password field so that customers choose their own password during registration. This makes the registration flow simpler and easier to follow for B2B customers.

Email Notifications #

B2BKing also introduces three email notifications that you can enable or disable in the WooCommerce Email Settings panel:

  • New Customer — sent to the shop manager when a new customer registers
  • New Customer Requires Approval — sent to the shop manager when a new customer who needs approval registers
  • Your Account Has Been Approved — sent to the customer when their account has been approved
B2BKing Registration Email Notifications

B2BKing also lets the customer know their account needs approval by adding this information to the WooCommerce welcome email.

Note: If you or your customers are not receiving approval emails, this is a common email deliverability issue that is usually resolved by installing an SMTP plugin such as WP Mail SMTP.

Powered by BetterDocs