In this guide
Explore the steps and reference sections below.
On this page
Build registration forms, require email verification or administrator approval, and review account access from one Swift Commerce workspace.
Registration & Access replaces the separate Registration Form and Email Verification dashboard destinations. Existing settings are retained. Custom fields, access checks and domain restrictions have independent switches; there is no master switch that turns everything on.
Before you start
- Open Swift Commerce → Registration & Access. If you still see the old feature names, update your installed Free and Pro builds together before following the new tab names.
- Enable public registration in WordPress or WooCommerce for the location you intend to use. Swift Commerce does not turn on WordPress public registration or WooCommerce account creation for you.
- Check email delivery before requiring verification. A correctly designed email still needs a working WordPress mail service.
- Use a fresh test customer, not an administrator account, to check registration and sign-in. Pro-only sections appear only when the corresponding Pro provider is available.
Find the right tab
| Tab | Use it for |
|---|---|
| Overview | Check whether registration fields and account access checks are enabled, then open their configuration. |
| Forms | Configure custom fields and where they appear. Fields and Appearance are separate secondary tabs. |
| Access | Choose protected registration locations and the verification method. Pro also adds domain restrictions, administrator approval, checkout enforcement and role assignment. |
| Registrations (Pro) | Search tracked accounts, read registration details and take an action appropriate to their access status. |
| Emails | Configure verification and supported registration emails through the shared Email Customizer. |
| Activity (Pro) | Review recorded registrations, decisions, notes and access-setting changes from the last 90 days. |
Customize registration fields
- Go to Forms → Fields and turn on Customize registration fields.
- Under Form Context, choose where the fields appear. WordPress Registration is available in Free. Pro adds WooCommerce My Account, Checkout Registration and My Account Edit.
- Add or edit a field. Give it a clear label and a unique lowercase Field Key. Set its type, placeholder, description, default value, width and validation where supported.
- For choice fields, enter a label and stored value for each option, choose a default where appropriate, and arrange options in the required order.
- Choose the field’s supported visibility contexts. Reorder, duplicate, enable or remove fields as needed, then click Save Changes.
The form editor uses a shared field schema with context visibility. It is not a separate named-form builder for every page. My Account Edit changes an existing profile; it is not a new-registration access check.
| Field capability | Availability |
|---|---|
| Text, email, password, phone, URL, number and textarea | Free |
| Select, multi-select, radio, checkbox and checkbox groups | Free |
| Date, date/time, protected file upload, hidden and content/layout fields | Pro |
| Conditional visibility and field-based role assignment | Pro |
Use validation to require an answer, limit its length or number range, or match a pattern where the field supports it. Pro file uploads also need explicit permitted file types and size limits. Do not collect unnecessary sensitive information.
Style the form
Open Forms → Appearance to adjust labels, placeholders, descriptions, required indicators, layout, columns, field spacing and label position. Save and inspect the actual form in your theme. These controls style the supported registration fields, not the rest of your WooCommerce account page.
Require email verification
- Open Access and turn on Require an access check.
- Under Registration forms, enable WordPress Registration, WooCommerce My Account, or both. Email verification on these registration forms is available in Free.
- In Pro, select Email Verification under Verification Mode. Free uses email verification without the Pro mode selector.
- If form customization is also enabled for the same location, turn on Registration Form controls fields to use the configured field order and custom fields. Otherwise the verification module supplies its default password setup fields.
- Review Role exemptions, then save the settings. Exempting Customer or Subscriber can exempt the very registrations you meant to verify.
- Register using an inbox you control. Confirm sign-in is blocked while pending, use the verification link and its confirmation step, then sign in again.
New users create their password during registration. Form auto-login and welcome-email behavior must not bypass a pending access check. A public resend request does not reveal whether an email address has an account. Expired links need a new verification message.
Review registrations before granting access (Pro)
Email verification and administrator approval are alternative modes. This is not an email-then-admin sequence. Administrator approval grants access but does not prove that the applicant confirmed their inbox.
- In Access → Verification Mode, choose Admin Approval. Keep Require an access check on and select the relevant registration locations.
- Open Emails and configure the pending, approved, rejected and administrator-notification emails you intend to send.
- Save or discard any workspace changes before opening Registrations. Account actions use saved access settings.
- Search by username or email, or filter to Needs review, Pending verification, Pending approval, Verified, Approved, Rejected or All tracked.
- Click Review. Read the access status, source and submitted fields. Add an internal note if needed. Choose Approve or Reject, select whether to queue the configured applicant email, and confirm.
Reject does not delete the WordPress user. It retains the account with access restricted. Reopen for review returns a rejected registration to Pending approval without granting access. User deletion remains a separate WordPress administration task.
For a pending email-verification record, the available actions include requesting another verification email and an administrator verification override. Overrides and internal notes require a reason. An administrator override is recorded separately from the customer confirming a verification link.
The list contains accounts tracked by Swift Commerce, not every WordPress user. New supported registrations can include a snapshot of safe submitted fields. Older imported records may show Current profile values (not a submission snapshot). Passwords, hidden fields and sensitive values are excluded. Protected attachments are current authorized downloads, not historical file copies.
Block email domains before account creation (Pro)
- In Access → Email domain restrictions, turn on Block email domains. This switch works even when email verification and approval are off.
- Enter up to 500 unique domains in Blocked domains, one per line or separated by commas. Enter
example.org, not[email protected], a URL or a wildcard. - Set the Rejection message shown on the registration form. Leave it blank to use the default. Click Save Changes.
- Try a fresh registration from a blocked domain and an allowed domain. The blocked submission should display your message before an account is created.
| Blocked entry | Rejected | Not rejected by this entry |
|---|---|---|
example.org | [email protected] and [email protected] | [email protected] and [email protected] |
Matching ignores case and includes subdomains. The restriction covers standard WordPress public registration, multisite user signup and WooCommerce customer creation, including checkout registration. It does not change existing users, sign-in, profile edits or users created directly by administrators. It is a manual blocklist, not an automatic disposable-email database. Use punycode for international domains if your server cannot normalize them.
Other Access controls
| Control | What it does |
|---|---|
| Logged-in Checkout (Pro) | Requires tracked unverified users to complete the access check before placing an order in classic checkout or Checkout Blocks. This is separate from selecting registration forms. |
| Verification Link Expiry (Pro) | Sets link lifetime from 1 to 72 hours using the available choices. |
| Administrative Resend Limit (Pro) | Sets the administrative resend allowance; it does not replace public resend rate limiting. |
| Auto-delete Unverified Users (Pro) | Schedules cleanup of eligible unverified registrations after the selected retention period. This is account deletion: keep Never unless you intend it. Approval applications, restricted accounts and other protected accounts are excluded. |
| Redirect After Verification (Pro) | Uses an optional same-site destination after verification. Leave blank for the account login page. |
| Redirect After Registration / Auto Login (Pro) | Controls the successful registration flow where supported; pending verification or approval must be completed before access is granted. |
| CAPTCHA Protection (Pro form integration) | Uses the separately configured Swift Commerce reCAPTCHA feature. Set up and test its provider first. |
| Role Assignment (Pro) | Applies a default role and supported field-based rules. Choose roles safe for public registration; this is not a role/capability editor. |
Customize registration emails
Open Emails, then the relevant verification, welcome or approval email. Use Customize Email where available to open the built-in Email Customizer. Email types and advanced customization depend on your edition and selected access mode.
- Edit the subject, heading and supported message fields. Retain required action placeholders such as
{{verification_link}}. - For rejection explanations, include
{{rejection_message}}in the rejected-account email before adding a Message to applicant during review. Internal notes are not the applicant message. - Adjust shared branding, preview desktop/mobile and dark mode, send yourself a test, then save the editor. Shared design changes affect supported Swift Commerce emails, while message content stays specific to that email.
- Test a real new registration and an approval or rejection. A test send uses sample data and does not prove that the full registration workflow is configured.
Read registration activity (Pro)
Activity shows recorded registrations, account decisions, internal notes, verification events and supported access-setting changes from the last 90 days. Timestamps use the WordPress site timezone. It is not a general login monitor or a complete WordPress audit log.
An email marked queued is waiting for background processing. Submitted for sending means WordPress accepted the send request; it is not delivery confirmation. If a queued message does not progress, check WordPress scheduled tasks and your mail setup.
Free and Pro at a glance
| Capability | Free | Pro |
|---|---|---|
| WordPress registration fields and form appearance | Included | Included |
| Email verification on WordPress / WooCommerce My Account registration | Included | Included |
| WooCommerce custom-field contexts and advanced field types | — | Included |
| Administrator approval, review details, notes and reopening | — | Included |
| Blocked email domains and custom rejection message | — | Included |
| Activity history and additional access controls | — | Included |
| Approval emails and advanced registration-email customization | — | Included |
Test before accepting real registrations
- Test every enabled registration location while signed out. Check required fields, choice order, validation and the assigned role.
- For link mode, confirm pending sign-in is refused, the correct email arrives and confirmation grants access. Test an expired link and resend.
- For approval mode, test approve, reject and reopen on a test account. Rejected and reopened-pending accounts must not gain access.
- Test blocked domains, a blocked subdomain and a lookalike allowed domain. Confirm no blocked account is created.
- If checkout enforcement is on, test your active classic or block checkout. Do not treat My Account Edit as new-account registration.
- Check the actual inbox and the activity result. Save/Retry errors should be resolved before changing live access policy.
Troubleshooting
| Issue | Check |
|---|---|
| Registrations or Activity is missing | Confirm Pro and its review provider are loaded. Update Free and Pro together; review tabs are intentionally hidden without the provider. |
| An account does not appear in Registrations | Only tracked access-check registrations appear. Accounts created outside the supported flow are not retroactively converted into applications. |
| Customers can sign in before verification | Check Require an access check, selected registration locations and exempt roles. Use a fresh test account. |
| Approval/rejection email is missing | Confirm the corresponding email is enabled, the review action requested notification, scheduled tasks run and WordPress mail is delivering. |
| A rejected account still exists in WordPress Users | Expected: rejection restricts access; it does not delete the account. |
| A blocked address still creates an account | Confirm Block email domains is saved, enter domains rather than addresses, and test a new standard public registration rather than an administrator-created account. |
Looking for earlier instructions? The retained Email Verification and Registration Form guides cover the old standalone destinations.
Follow a registration walkthrough
Choose the task you need: add custom fields to WordPress registration, require email verification for WooCommerce customers or review WordPress registrations before allowing sign-in. These tasks use the same Registration & Access workspace, but form customization and the access check have independent switches.
Need bot protection as well? The reCAPTCHA guide explains the supported providers and forms. Passing CAPTCHA does not verify an inbox or replace administrator approval.