We're a bit stuck on trying to set up a specific workflow and hoped someone might have some ideas! The workflow would act as follows:
Contact would submit a colleague invite form - they would submit a friend/colleague's name and email address here.
The first contact will receive an email confirming their form submission.
The invited colleague would then be created as a new contact in our CRM, and receive an email that says "You have been invited by [first contact name]..."
Have you considered that the form is simply submitted by the first person, on behalf of the second? That would be a lot easier in this regard.
If that's no an option, here's what you'd have to do:
On the contact object, create the following properties:
Invitee first name
Invitee last name
Invitee email
Invitee invited by
Create a contact-based workflow that enrolls contacts when they submit the form, then use the 'Create record' workflow action to create a new contact record
Set first name of the newly created contact to value of 'Invitee first name'
Set last name of the newly created contact to value of 'Invitee last name'
Set email of the newly created contact to value of 'Invitee email'
Set invitee invited by of the newly created contact to value of 'First name + Last name'
Create a separate workflow that enrolls newly created contacts based on 'Invitee invited by is known', then send automated email with a personalization token 'Invitee invited by'
Keep in mind that this will fail if the newly created contact already exists. They're workarounds for that using association labels but they're frankly too complex to lay out in written in a community post. Essentially, one would check if an existing record exists, apply the association label, enroll contacts into the workflow from step 3 based on the association label.
Overall, just having the invitation form submitted by the first person on behalf of the second is by far the easiest route.
Best regards
Karsten Köhler HubSpot Freelancer | RevOps & CRM Consultant | Community Hall of Famer
Have you considered that the form is simply submitted by the first person, on behalf of the second? That would be a lot easier in this regard.
If that's no an option, here's what you'd have to do:
On the contact object, create the following properties:
Invitee first name
Invitee last name
Invitee email
Invitee invited by
Create a contact-based workflow that enrolls contacts when they submit the form, then use the 'Create record' workflow action to create a new contact record
Set first name of the newly created contact to value of 'Invitee first name'
Set last name of the newly created contact to value of 'Invitee last name'
Set email of the newly created contact to value of 'Invitee email'
Set invitee invited by of the newly created contact to value of 'First name + Last name'
Create a separate workflow that enrolls newly created contacts based on 'Invitee invited by is known', then send automated email with a personalization token 'Invitee invited by'
Keep in mind that this will fail if the newly created contact already exists. They're workarounds for that using association labels but they're frankly too complex to lay out in written in a community post. Essentially, one would check if an existing record exists, apply the association label, enroll contacts into the workflow from step 3 based on the association label.
Overall, just having the invitation form submitted by the first person on behalf of the second is by far the easiest route.
Best regards
Karsten Köhler HubSpot Freelancer | RevOps & CRM Consultant | Community Hall of Famer