How to move a customer between campaigns

Question

Say I have an informational newsletter email and I have a logic rule in the campaign that moves them to a "product x customer" campaign if they purchase product x. If a client signs up to a mailing list (via the html on our page), and they have already previously purchased product x, what happens? Will the logic automatically put them on the "product x campaign" list?

Solution: Triggering a move when a purchase is made.

So, we want to move a newsletter recipient from our newsletter to a different campaign if they buy a product. It's important to understand how this happens. The recipient does not move. Rather, they end one campaign and begin another. Once we understand that, the procedure is much more straightforward.

Here are the logic steps:

Before Purchase

Recipient signs up for newsletter They are assigned to mailing list mailing list is tied to campaign Recipient receives emails

Purchase Happens

Newsletter Campaign: When campaign runs, a logic step checks for a purchase, and when found ends the campaign.
Product Campaign: A Purchased Product trigger enrolls the recipient They begin receiving marketing from this campaign

After Purchase

Newsletter Campaign: Finished.
Product Campaign: Runs to completion (or loops) for this recipient.

Implementation

Here's the steps needed to accomplish this:

  1. Create your newsletter mail list if it doesn't already exist, and point your site's enrollment form to it. See: Email List
  2. Configure your autoresponder mail server, if you haven't already. See: Autoresponder Mail Server
  3. Optional: Create a test campaign to help testing out your email templates. See: Test Campaign Tutorial
  4. Create your newsletters emails templates. See Email Templates and other Autoresponder Tutorials
  5. Create your Product X campaign email templates.
  6. Configure newsletter campaign with NO triggers and tied to your email list. See Creating a Campaign
  7. Configure product x campaign with a Purchased Product trigger and NO Email Lists.

Newsletter Campaign Logic

While your campaign will probably be more complex, here's a simple campaign that contains only a logic step and email step. You could loop your campaign, as illustrated in the Sunday Night Coupons tutorial.

Campaign steps are shown below a campaign's General Settings. Scroll down. The Start Step is created for your after you first save your campaign.

Here's the steps. Notice in the image below, the LOGIC Step has a yellow triangle. That indicates that I haven't added any logic to it yet. Don't forget to do this!



My Logic for newsletter will end the campaign (for this recipient) if they've ever ordered from me.

Example 1: End the campaign if the recipient has ever ordered anything from me.

Strange, but there is no $customer.hasPurchasedEver(), only $customer.hasPurchasedEver('ITEM ID'). Go figure.

#set($result = 'NewsletterEmail')
#if($customer.hasOrderedInLastDays(10000))
   #set($result = '_ENDCAMPAIGN_')
#end

 

Example 2: End the campaign if the recipient has ever ordered Item X54P from me. (Yeah, I made up that Item ID...)
#set($result = 'NewsletterEmail')
#if($customer.hasPurchasedEver('X54P'))
   #set($result = '_ENDCAMPAIGN_')
#end

 

Example 3: End the campaign if the recipient has ever ordered several items from in the past year.
#set($result = 'NewsletterEmail')
#if($customer.hasPurchasedInLastDays(['X54P','ITEMID2','ITEMID3'], 365))
   #set($result = '_ENDCAMPAIGN_')
#end

 

Product X Campaign Logic

The second campaign, Product X Campaign, doesn't need any special logic to function. Just make sure to set up your Placed Order trigger. Then, add your steps to make it do whatever you want.

That's it!