Scenario:
Your product or service includes support for six months after purchase. You want to record the support expiration date for each product purchased and send the customer emails to get them to renew the support agreement prior to expiration.
CAMPAIGN BUILDER CHALLENGES:
- How do you put a date, six months from purchase, in a custom date field?
- How do you format the date so that it looks nice in emails?
- What if they buy more than one product? What if they buy 20? How do you keep from using up all your custom fields?
SOLUTION:
Use the Pocket Developer Any Date, Any Format, Anywhere plug-in to add the term of your support agreement to the date of purchase. Put it in a custom field so you can merge it into emails and other communications.
HOW TO SET IT UP (THE Custom Field Burning WAY):
You can set this up two ways. The easiest way is to put the end of support date in a custom field in the contact record. This way, it is easily accessible as a merge field and also can be seen easily by sales or support reps.
1. Install and configure Any Date, Any Format, Anywhere and Custom Delay Timer
2. In Campaign Builder, set up a sequence triggered by a Purchase Goal
3. Add two Any Date HTTP POST snippets, which add the support agreement term to today’s date
- Use format “l, F j” to format text version as “Monday, September 22” for emails
- Use format “Y-m-dTH:i:s” to put the date in an Infusionsoft Date field so you can use it in a Field Timer
4. Add a Custom Delay Timer, to the end of the sequence, with a delay of 30 seconds. This gives the posts time to complete before sending the email with the details of your support agreement
5. Add a Field Timer, using your date field, from Step #3, to begin sending renewal notices prior to expiration.
HOW TO SET IT UP (THE POWER USER WAY):
The problem with the above is it burns two of your 100 custom fields in the contact record. It is also not a viable solution if the customer buys more than one product at different times.
You could, instead, use Any Date, Any Format, Anywhere, to put the expiration date in a custom date field in the order itself.
Then, use our Advanced Merge Field Notation, with the Universal Delay Timer plug-in, to run actions off the date in the order instead of from the Contact record.
When it comes time to use those dates for an email, you use Any Date to temporarily “stash” the date in the contact record. Once your email sequence is complete, use Any Text Anywhere to set your stash fields back to blank to be reused.
This method is a bit more work to set up. But, if custom fields are an issue, this technique can be applied in many different scenarios to save custom fields.
1. Install and configure Any Date Anywhere, Any Text Anywhere, Custom Delay Timer, and Universal Delay Timer
2. In Campaign Builder, set up a sequence triggered by a Purchase Goal
3. Add an Any Date HTTP POST snippet, which adds the support agreement term to today’s date and puts it in a custom date field in the order just placed.
- Use “today” for the date and time parameters
- Use format “Y-m-dTH:i:s” any time you are putting a date in an Infusionsoft Date or DateTime field. That is Infusionsoft’s required format.
- Use an adjustment of +6 months
- Use Order._demoCustomDateField.Newest as the saveTo parameter. Replace _demoCustomDateField with your custom field.
4. If you want to send an email immediately, use Any Date to temporarily stash a pretty date in a contact field, as in step 3 in the Easy Setup. Then use Any Text Anywhere to set that field to blank, after the email has been sent.
- To set a text field to blank, leave the textToSave value blank
- Add a Custom Delay Timer, to the end of the sequence, with a delay of 30 seconds. This gives the posts time to complete before sending the email with the details of your support agreement
5. Set up the Universal Delay Timer to restart the campaign a few weeks prior to the expiration date
- Use “Order._demoCustomDateField.Newest” for the date parameter (replace _demoCustomDateField with the field name you used)
- This assumes a time of midnight Eastern Time in the US. Use a date parameter if you want it to send at a specific time.
- Use format “Y-m-dTH:i:s” any time you are putting a date in an Infusionsoft Date or DateTime field. That is Infusionsoft’s required format.
- Use an adjustment of -3 weeks (that means the campaign will resume three weeks before the date you stored in the order)
- Put a unique value in the callName. This is the API goal call name you will trigger to resume the campaign
6. Create an API Goal with the same callName as the previous step.
7. To send an email using the expiration date as a merge field, temporarily stash a pretty version of the expiration date in the contact record, as in Step #4 above. Set back to blank when email is complete.
8. Rinse and repeat as many times as needed for your renewal nag sequence to complete.
You can read more about Any Date, Any Format, Anywhere and see more examples of its usage in the QuickStart Guide.
Any Text Anywhere, Custom Delay Timer and Universal Delay Timer also have Quickstart Guides.
You can read more about Advanced Merge Field Notation and see more examples of its usage in the Learning Center.
To browse the entire catalog and purchase Pocket Developer plug-ins, visit our plug-in store.
Don’t want to set this up yourself? Let one of our concierges do it for you. Just purchase all the necessary blocks. Then email concierge@theapiguys.com. We will have it all set up for you in a jif.
FREQUENTLY ASKED QUESTIONS:
Q. Where do I find the table and field names for Advanced Merge Field Notation?
A. You can find the names of Infusionsoft tables and fields in the Infusionsoft Developer Resource Section under Table Documentation.
You can find the names of your custom fields by going to Infusionsoft Admin Settings -> Add Custom Field -> Record Type -> Show Database Name