Use Case
When someone submits a Contact Form 7 form, you want to automatically create a WordPress user account for them. This turns form submissions into registered users.
Common scenarios:
- Custom registration forms
- Gated content access signup
- Event registration with account
- Lead capture with portal access
- Member application processing
Step-by-Step Setup
1. Prerequisites
Ensure you have:
- Contact Form 7 installed
- Form with email and name fields
- User roles configured in WordPress
2. Create a New Workflow
Navigate to Sequensy → Workflows in your WordPress admin and click Add New Workflow.
Name your workflow “Create Account from CF7 Form” or “Registration Form Handler”.
3. Configure the Trigger
Select Form Submitted (CF7) as your trigger.
Available filters:
- Form: Specific registration forms
- Fields: Validate required fields
- Acceptance: Check acceptance checkbox
4. Set Up the Create User Action
Configure the user creation:
| Setting | CF7 Field | Description |
|---|---|---|
{your-email} | User email | |
| Username | {your-email} | Or custom field |
| First Name | {first-name} | From name field |
| Last Name | {last-name} | From name field |
| Role | Subscriber | Default role |
| Send Welcome | Yes | Password reset email |
5. Send Custom Welcome Email
Chain a Send Email action:
Subject: Welcome! Your account is ready
Hi {first-name},
Your account has been created successfully!
Login Details:
Website: {site_url}
Username: {your-email}
Set your password using this link:
{password_reset_link}
Once logged in, you'll have access to:
- Your personal dashboard
- Exclusive member content
- Account settings
Questions? Reply to this email.
Welcome!
6. Test Your Workflow
- Enable the workflow
- Submit the CF7 form
- Verify user account created
- Check welcome email received
- Test password reset and login
Pro Tips
Check for existing accounts: Add a condition to handle submissions where the email already has an account.
Use acceptance field: Require checkbox acceptance for terms before creating account.
Map additional fields: Capture phone, company, preferences as user meta.
Verification options: Consider email verification before full access.
CF7 Form Setup
Basic Registration Form
<label>First Name
[text* first-name]</label>
<label>Last Name
[text* last-name]</label>
<label>Email
[email* your-email]</label>
<label>Phone (optional)
[tel your-phone]</label>
[acceptance terms] I agree to the Terms and Privacy Policy
[submit "Create Account"]
Extended Registration
<label>Name
[text* your-name]</label>
<label>Email
[email* your-email]</label>
<label>Company
[text your-company]</label>
<label>Industry
[select industry "Technology" "Healthcare" "Finance" "Other"]</label>
[acceptance newsletter] Subscribe to newsletter
[acceptance terms] I agree to Terms
[submit "Register"]
Field Mapping
| CF7 Field | User Property | Note |
|---|---|---|
[email* your-email] | user_email | Required |
[text* first-name] | first_name | Optional |
[text* last-name] | last_name | Optional |
[text your-company] | user_meta | Custom field |
[tel your-phone] | user_meta | Custom field |
Use Case Templates
Gated Content Access
Form: Download gated content
User Role: Subscriber
Access: View protected content
Email: "Your download is ready"
Benefit: Future re-downloads without form
Event Registration
Form: Event signup
User Role: Attendee
Meta: event_registered = {event_id}
Email: "You're registered for {event_name}"
Access: Event area and materials
Membership Application
Form: Membership application
User Role: Pending Member
Status: Awaiting approval
Email: "Application received"
Next: Manual approval upgrades to Member
Newsletter + Account
Form: Newsletter signup
User Role: Subscriber
Meta: newsletter_optin = yes
Email: "Welcome + your first newsletter"
Access: Basic subscriber content
Handling Existing Users
Strategy 1: Update Existing
Condition: Email exists in system
Action: Update user meta instead
Action: Send "Account updated" email
Skip: User creation
Strategy 2: Reject Submission
Condition: Email exists
Action: Return error to form
Message: "Account already exists. Please login."
Strategy 3: Login Link
Condition: Email exists
Action: Send password reset link
Message: "Found your account—check email to login"
Troubleshooting
User not created?
- Verify form submitted successfully
- Check email field mapping
- Review workflow logs
Duplicate user error?
- Add condition for existing accounts
- Check CF7 spam filtering
- Review multiple submission handling
Password email not received?
- Check WordPress email delivery
- Review spam folders
- Test with WP Mail SMTP