This function automates the process of generating a random password for a member when they signup or purchase a membership on your site. If the user already has a password, by default, it won’t be overwritten.
Memberium provides tools for automating user password creation. In the original Infusionsoft Legacy Order Forms it was simple to add a password field to the order form and mark it as required. However, the new Infusionsoft Order Forms have lost this basic capability.
Why not use a Web form and let the user pick their own?
- The new Infusionsoft shopping cart and order forms don’t make it easy to require a password field.
- When using a web form, those forms will blindly overwrite the existing password, allowing anyone to hijack another user’s account by using their email and a self-selected password
To simplify the new user onboarding process, we provide an HTTP POST that you can use to safely generate new passwords, which you can then email to the user in their welcome email.
The system will not generate a new password if the WordPress user already exists, or if the password field in Infusionsoft is already populated.
If the user already exists in WordPress, Makepass will still update the contact record so an additional use of “update-contact” is not necessary.
Ready-Made HTTP POST Links
Located in your Memberium site under Memberium > Settings > HTTP Posts/Links are several commonly used HTTP POST links, including the password generation link. You can copy this URL into your Actionset or Campaign Builder HTTP POST.
This example link is configured to only generate a new password if the user does not already have one.
If the member already has a password and this link gets run on them, nothing will happen. The password will remain unchanged.
When using the makepass HTTP POST tool with Campaign Builder, we recommend you add at least a minute between the password generation and the welcome email send, to give Infusionsoft time to record the new password and be ready to merge it into the welcome email. Skipping the delay will often result in a blank password being emailed to your new user.
How to Eliminate Blank Password Emails
The simplest form to set up the makepass HTTP POST is to place a short (1 minute) delay after the HTTP POST, before sending the welcome email to give the HTTP POST time to process the password update before the email is sent. This assumes that the HTTP POST succeeds on the first try, which may not be the case for any number of reasons outside your (or our) control.
Memberium’s makepass function includes two optional parameters that allow you to apply a tag, or achieve a goal on successful password generation. You only need to use one, we provide both so that you can use the model you prefer.
What if I want my users to pick out their own passwords?
Memberium also offers the [memb_registration_form] shortcode which allows you to design a “smart” webform to support onboarding new users. This webform offers enhancements over the regular Infusionsoft webforms by not overwriting existing accounts, optionally auto-creating passwords, etc.
You can read more about it on our [memb_registration_form] documentation page.
Use this capability to only send the welcome email once the password is confirmed as generated.
Operation sets the type of action to take on the HTTP Post.
You can define your HTTP Send POST Auth Key in i2SDK.
Defaults to “no”. Indicates whether or not the system will overwrite pre-existing data in the password field.
Defaults to “yes”. Indicates whether or not the system will create a WordPress user.
Defaults to “5”. Indicates how long to pause after password creation to give Infusionsoft time to record the results.
Defaults to no tag. Tells Memberium to apply a tag on successful password creation. You can use this tag as a tag goal to minimize the chance of a welcome email being sent without a password.
Defaults to no Campaign Builder Goal. Tells Memberium to achieve a Campaign Builder API Goal on successful password creation. You can use this goal to minimize the chance of a welcome email being sent without a password.
Please see our overview of how to setup HTTP POST for additional hints on troubleshooting.