User Registration Overview
This guide is a step by step user registration guide that explains different JetFormBuilder user registration scenarios and corresponding WordPress registration forms, including registration, email verification, AJAX, payments, subscriptions, and role changes.
With the help of the JetFormBuilder plugin, it is possible to create a front-end registration form with email confirmation. To register on the site, the user should input their login and email address and follow the verification link sent to their email. Once the user follows the link, the registration process is completed.
Table of Contents:
- Register User Action
- Email Verification
- Advanced Flows
- Troubleshooting
- List of User Registration Documentation
- FAQ
This user registration guide allows you to select the needed scenario and directs you to the appropriate tutorial(s) for each step.
The complete functionality can be shown as follows:
register user → email verification → AJAX → payment → subscription → role change
However, you can select only the needed actions.
First, before configuring your registration form, decide which registration flow matches your project requirements:
- simple registration 一 allows adding a new WordPress user, a list of which can be found in the WordPress Dashboard > Users directory. The functionality is implemented via the “Register User” Post Submit Action;
- email verification 一 choose this flow when you want users to confirm their email address before registration. The flow is: “Register User” Post Submit Action → “Verification”;
- paid registration 一 use this scenario when account creation depends on a successful payment. The flow is: configure the Payment settings → adjust the Check out settings → “Register User” Post Submit Action → add Events;
- subscription registration 一 choose this workflow for recurring payments, membership websites, SaaS products, or subscription-based access. The flow is: configure the Subscription Payment settings → adjust the Check out settings → “Register User” Post Submit Action → add Events.
Common Mistake: Don’t include unnecessary fields (like company name or address) in the initial registration form. The more fields you add, the higher the chance of spam or validation errors. Keep it to “Email” and “Username” for the smoothest flow.
Register User Action
The “Register User” Post Submit Action is the basis of every registration workflow in JetFormBuilder. This action:
- creates a new WordPress user account using the data submitted through the form;
- maps form fields to user account data;
- assigns a user role.
To find this action, open the form in the Block Editor, navigate to JetForm Settings > Post Submit Actions, click the “+ New Action” button, and select the “Register User” option from the available actions.

The Edit Register User window has the following settings:

- Allow creating new users by existing users 一 a toggle that, if enabled, activates the WHO CAN ADD NEW USER? drop-down list to pick the user role allowed to register new users;
- FIELDS MAP 一 a group of fields that allows filling out the corresponding fields in the WordPress User Profile (e.g., USER LOGIN, EMAIL, PASSWORD, and more). The group contains both the necessary fields (marked with an asterisk) and non-required ones (these fields can be left empty). For every field in this group, a drop-down menu with a list of form fields is available. By choosing a form field, the link between the form field and the user account field will be set.
Also, except for the form’s fields presented as options in the corresponding drop-down lists, the “Secure unique token” is added to every field in this section. This option is often used for the Password and Confirm Password fields since it is intended to automatically generate a password until the user creates a new password manually.
This token can be sent via email using the Post Submit Action. If the “Verification” Post Submit Action is inserted, the “ID of the secure unique token” (allows saving a reference to each token in the “jet_fb_tokens” database table) and “Verification URL” (allows a verification link the user has to click to complete the verification process) options are added to the FIELDS MAP field drop-down lists.

In addition, the User URL field in the FIELDS MAP section allows inserting a URL that will be saved in the “wp_users” table of the site’s database and displayed in the Website field of the User Profile.

- USER ROLE 一 a drop-down list that allows the specification of people who have a profile on your site to perform this action. More details about user roles can be found in the WordPress User Roles Explained: Groups and Permissions Management article. Here, some user roles can be added by holding the “Ctrl” key (Windows) or “Command” key (Mac) to select multiple roles.
- Log In User after Register 一 a toggle that, if enabled, activates the “REMEMBER ME” FIELD drop-down list that allows specification of the corresponding form’s field;
- Add User ID to form data 一 a toggle that, if enabled, allows keeping the user ID in form data. Or, if the form is completed by a user already logged in, the current user ID will be added to the form data;

- USER META 一 a group of fields that allows linking the form’s custom fields to the user account. Additionally, the User Profile functionality can be enhanced by utilizing Meta Boxes.

- MESSAGES SETTINGS 一 a group of fields that refer to notifications shown to the user in corresponding cases.
Pressing the “Update” button saves the “Register User” Post Submit Action settings.
The most important step while configuring these settings is mapping form fields to WordPress user fields. In particular, the FIELDS MAP is a group of fields that allows filling out the corresponding fields in the WordPress User Profile (e.g., USER LOGIN, EMAIL, PASSWORD, and more). The group contains both the necessary fields (marked with an asterisk) and non-required ones (these fields can be left empty).
At a minimum, you should provide fields for: User Login, Email Address, and Password. You can also map optional fields such as First Name, Last Name, Nickname, Website URL, and custom user meta fields.
For every field in this group, a drop-down menu with a list of form fields is available. By choosing a form field, the link between the form field and the user account field will be set.
| Form Field | WordPress User Field |
| Text Field of the “Email” type | Email (necessary field) |
| Text Field of the “Text” type | Username (necessary field) |
| Text Field of the “Password” type | Password (necessary field) |
| Text Field of the “Tel” type | Phone |
| Text Field of the “Text” type | First Name, Last Name |
Incorrect mapping is one of the most common reasons registration forms fail.
Common Mistake: If the user account is created but login fails, double-check that your “Email” field in the form is mapped to the EMAIL field in the FIELDS MAP section, and the “Username” field is mapped to the USER LOGIN field.
Other common mistakes are presented in the table below.
| Common Mistakes | Solution |
| Login field mapped incorrectly | WordPress requires a unique username. If the “User Login” field is not mapped properly, account creation fails. |
| Email field not mapped | A unique “User Email” field is required for the corresponding WordPress User field. If it is not mapped properly, account creation fails. |
| Password field configuration issues | Ensure the password field exists and is mapped to User Password in the FIELDS MAP section of the “Edit Register User” pop-up. |
| Wrong user role selected | Verify that the intended role is selected in the “Edit Register User” pop-up. |
| Automatic login is not working | First, add a Checkbox, Radio, or Switcher field to your form with a value of “1”, and label it “Remember me” or similar. Then, enable the Log In User after Register toggle in the “Edit Register User” pop-up that allows you to use the “Remember me” option. |
| Login fails, but the account is created | Double-check that your Email field in the form is mapped to the EMAIL field in the FIELDS MAP section of the “Edit Register User” pop-up, and the “Username” field is mapped to the USER LOGIN field. |
Email Verification
The The “Verification” Post Submit Action adds a confirmation step between registration and account creation. This action uses a double opt-in flow to validate user email addresses and prevent fake registrations, or to require email verification before creating an active account.
Read the Email Verification tutorial for more details on how to build a registration workflow from form submission to email verification.
The action includes the following stages:
- Token 一 each verification request includes a unique token that identifies the user and validates the confirmation process;
- Status 一 the system tracks the user verification and saves it in the corresponding form’s record;
- Success/Failed pages 一 pages where the user is redirected in case of a successful or failed verification.
The user’s registration data is saved in the corresponding form record while the verification process is pending. If the verification token expires, the submitted data remains available in WordPress Dashboard > JetFormBuilder > Form Records.
By default, the user account is created only after the user clicks the verification link in the email. This is the standard workflow and cannot be modified.
If a user claims they registered but you cannot find their account in the WordPress Users list, check the Form Records first. If the record has the “Waiting verification” status, the user has not completed the email verification yet, so the account has not been created.
If a user misses the verification email and the link expires, the site administrator can verify the user manually. To do this, go to WordPress Dashboard > JetFormBuilder > Form Records, find the corresponding record, and click “Verify”.
You can also customize the message displayed after the form is submitted to instruct users to check their email. Scroll past the Post Submit Actions settings and unfold General Messages Settings.
Change the default FORM SUCCESSFULLY SUBMITTED message to provide instructions, for example, “Please, check your email inbox to complete the registration”.
Advanced Flows
Once the basic registration process is working, you can extend it with advanced functionality as follows:
- AJAX Registration — allows users to submit the registration form without reloading the page. It provides a faster user experience, reduces page refreshes, and offers a smoother registration flow. More details about how to create a WordPress registration form with AJAX, payment, and subscription options can be found in the How to Create AJAX Registration Form article;
- User Registration with Payment — the workflow prohibits users’ access to products, services, or premium membership benefits before payment. Read the How to Build a WordPress Registration Form With Payment tutorial for more details;
- Subscription Registration — the workflow is designed for recurring billing scenarios where users receive ongoing access based on active subscriptions provided by Paypal and Stripe. Read the How to Set Recurring PayPal Payments in WordPress Form and How to Set Recurring Stripe Payments in a WordPress Form tutorials about this functionality;
- Change User Role — the workflow allows changing user roles automatically after registration, verification, payment, or subscription activation. The How to Change a User Role via Forms tutorial explains how to change a user role after registration, specifically update a user’s data in the User Account, and assign one or multiple roles to users.
Troubleshooting
If registration emails are not delivered even though the form logs show “Email sent successfully”, keep in mind that this message only confirms that WordPress attempted to send the email.
The actual delivery can still fail due to hosting mail restrictions, misconfigured mail servers, spam filtering, invalid sender addresses, or missing SMTP configuration. Check the user’s spam folder and test email delivery independently from the registration form.
Using a custom SMTP plugin can also help ensure more reliable email delivery by routing messages through a trusted mail service instead of relying on the default PHP mail function.
If a user does not receive the verification email, they should submit the registration form again to trigger a new verification email.
An Internal Server Error (HTTP 500) during registration is usually caused by a server-side issue. Common causes include exceeded PHP memory limits, plugin or theme conflicts, server configuration problems, PHP fatal errors, or errors in custom code. Enable WordPress debugging and check the server error logs to identify the exact cause.
To check whether the user registration action failed during form submission, make sure the “Save Form Record” Post Submit Action is added to the form.
Then, review the saved record details and action results to identify whether the registration action was completed successfully.
List of User Registration Documentation
Check our guides to recreate a preferred setup:
- Register Form — to create a JetFormBuilder registration form from scratch or use a specific pattern;
- How to Create a Subscription Registration Form — to create a custom subscription registration form that helps register users and immediately assign them the appropriate role using conditions and/or hooks;
- Email Verification — to create a WordPress registration form with email verification with additional settings (e.g., use a unique token);
- How to Configure Payment Gateways — to configure payment gateways;
- How to Enable Klarna, SEPA, Sofort, and Other Extra Payment Methods in Stripe — to add additional payment methods;
- How to Configure a Custom Recurring Subscription Form — to configure custom recurring payments;
- Payment Methods in a Form — to apply two payment methods in the same form;
- Captcha Settings — to configure Captcha Validation settings;
- Update User — to update the user’s data via forms.
FAQ
The most common cause is that the Log In User after Register toggle is disabled in the Register User action settings. Ensure this option is enabled if you want users to be logged in immediately after their account is created.
The Password and Confirm Password fields should be connected through the JetFormBuilder’s validation settings. Both fields must contain identical values before the form can be submitted. In the “Register User” action, only the Password field should be mapped to the User Password field. The Confirm Password field is used solely for validation and does not need to be mapped to WordPress user data.
You can assign a user role (or roles) automatically while registering new users via forms. Also, you can allow users to change their roles via forms, as the How to Change User Roles via Forms and How to Change User Role After Successful Subscription Payment tutorials explain.
Verify that each custom field is correctly connected to its corresponding meta key in the User Meta section of the “Register User” action.
You can add the “Verification” Post Submit Action before the “Register User” action. This workflow sends a verification email and delays account creation until the user clicks the verification link. For better protection, combine the email verification with required fields and form validation
That’s it. Now you know the main WordPress user registration flows and how the JetFormBuilder for WordPress email verification, AJAX, payments, subscriptions, and role changes work.