Create Password HTTP POST

David Bullock — 

This function automates the process of generating a random password for a user when they signup for, or purchase a membership on your site. If the user already has a password, it will be kept and not 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.

What if I have a thousand or more users to generate passwords for?

If you need to add a bulk number of contacts, for example when setting up a new site, please contact Support for guidance.

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.

Ready Made HTTP POST Links

Located in your Memberium site under Member->Basic Options are several commonly used HTTP POST links, including the password creation 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.

Best Practices

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.

Pro Tip
Do not put your entire post purchase campaign into the same sequence as your password generation. This makes it difficult or impossible to update your signup process.

How to Eliminate Blank Password Emails

The simplest form to setup 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.

Pro Tip
Use this capability to only send the welcome email once the password is confirmed as generated.

Notes

The system will not generate a new password if the WordPress user already exists, or if the password field is already populated.

If the user already exists in WordPress, MakePass will still update the contact record, an additional use of “update-contact” is not necessary.

Parameters

Parameter #1
operation=makepass
Required
Operation sets the type of action to take on the HTTP Post.

Parameter #2
auth_key=foo
Requred
You can define your HTTP Send POST Auth Key in i2SDK.

Parameter #3
overwrite=yes|no
Optional
Defaults to “no”. Indicates whether or not the system will overwrite pre-existing data in the password field.

parameter #4
adduser=yes|no
Optional
Defaults to “yes”. Indicates whether or not the system will create a WordPress user.

Parameter #5
delay={{number}}
Optional
Defaults to “5”. Indicates how long to pause after password creation to give Infusionsoft time to record the results.

Parameter #6
tagids={{number}}
Optional
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.

Parameter #7
goal={{number}}
Optional
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.

Troubleshooting

Please see our overview of how to setup HTTP POST for additional hints on troubleshooting.