Use Mailchimp to send branded, automated emails for your pro program. Alliance Pro sends membership lifecycle events to Mailchimp and attaches them to the correct contact by email so you can trigger Customer Journeys, personalize content, and segment your audience.
In this article:
What the integration does
Sends membership lifecycle events from Alliance Pro to Mailchimp in real time
Identifies the correct Mailchimp contact via their email address
Includes event properties for logic, conditional content, and segmentation
When Mailchimp is selected as the notification method, Alliance Pro does not send these member emails directly. Your Mailchimp Customer Journeys become the system of record for delivery.
Prerequisites for using Mailchimp
To use the Mailchimp integration with our app, you'll need:
A Mailchimp Standard plan or higher (required for event-triggered Customer Journeys and testing end-to-end)
Each member’s email address in Alliance Pro must match an existing contact in your chosen Mailchimp audience, and must not be archived or unsubscribed for events to attach properly.
A connected Mailchimp account with at least one active audience
If you have multiple audiences, you must select one during setup. Events will not send until this is done.
Connect Mailchimp in Alliance Pro
To connect Mailchimp to our app, you'll need to follow these steps:
In the Alliance Pro admin, go to Preferences.
Under Notifications → Customer notification method, choose Mailchimp.
Click Connect and authorize Mailchimp.
If prompted, select your Mailchimp audience and Save.
If your Mailchimp account has only one audience, Alliance Pro auto-selects it and test events send automatically. If you have multiple audiences, events will not send until you manually choose and save an audience.
Next step: create a Flow in Mailchimp
If this is your first time setting up a Flow, you’ll need to generate an API key.
Create an API Key
To establish the connection with Mailchimp, you’ll need to create an API key.
In Mailchimp, go to Automations → Build from scratch → Create a Flow, then navigate to API & Integrations. Under Customer Journeys API or Event API, click Want to set one up?
You’ll be taken to the API Keys page. Click Generate an API Key, then copy the key and store it somewhere safe.
Now return to Automations and select the Flow you started.
Back to your Flow in Mailchimp
In Mailchimp, go to Automations → Build from scratch → Create a Flow → API & Integrations → Event API and set the trigger to Custom event. Then select the relevant Alliance Pro event (for example, submitted_application).
Connecting Mailchimp enables Alliance Pro to send events, but it doesn’t automatically send emails. To send response emails, create a Event Flow in Mailchimp and use Alliance Pro events as triggers — for example:
submitted_application→ send an auto-response confirming the application was receivedapproved_application→ send a welcome or approval confirmationrejected_application→ send a polite rejection messageinvited_membership→ send an account activation emailexpired_membership→ send a renewal reminder
Each Journey should contain the message you want members to receive for that event. Once the Journey is active, Alliance Pro will trigger it automatically when that event occurs.
Events sent to Mailchimp
Each event includes the member’s email address so Mailchimp can attach it to the matching contact.
Events and properties:
submitted_application
No additional properties
approved_application
membership_active_atmembership_expires_atmembership_groupmembership_is_activemessagesend_customer_notification
rejected_application
messagesend_customer_notification
updated_membership
membership_active_atmembership_expires_atmembership_groupmembership_is_active
expired_membership
membership_active_atmembership_expires_atmembership_groupmembership_is_activesend_customer_notification
invited_membership
activation_url
Core properties:
%{
membership_active_at: membership.active_at, membership_expires_at: membership.expires_at, membership_group: membership.group.name, membership_is_active: Memberships.active?(membership)
}Invitation behaviour and testing
activation_urlappears for new Shopify accounts (when an account must be created). It’s empty for existing accounts.Use conditional content in your templates to only show activation buttons when the property has a value.
Confirm
invited_membershipis sent correctly, with or without an activation URL.
Best practices for Journeys
Create a separate Journey for each notification type. This will help prevent issues with Mailchimp’s “customer can repeat journey” setting and keeps the flow predictable.
Recommended Journeys and when to use them:
Application Received
Trigger:
submitted_applicationPurpose: Let applicants know their request was received and is being reviewed.
Welcome to the Program
Trigger:
approved_applicationPurpose: Confirm approval, welcome the member, and outline what to expect.
Application Decision
Trigger:
rejected_applicationPurpose: Send a clear, respectful message if the application doesn’t meet requirements.
Account Setup
Trigger:
invited_membershipPurpose: Send the activation link and guide the member to finish setting up their account.
Membership Renewal Reminder
Trigger:
expired_membershipPurpose: Prompt expired or lapsed members to renew their access.
You can also use updated_membership for renewal or tier change notifications, but consider filters to prevent unnecessary sends during imports.
Suggested filters:
membership_group — adjust messaging based on membership tier.
membership_is_active — target active vs. expired members differently.
send_customer_notification = true — helps avoid sending emails during admin-only changes.
Conditional content tips:
Only show the activation button in the Account Setup Journey if an activation URL is present.
Use Mailchimp’s merge tag format:
*|EVENT:activation_url|*If the value is empty, hide the button.
Common Journey naming examples:
"Application Received" → triggered by
submitted_application"Welcome to the Program" → triggered by
approved_application"Account Setup" → triggered by
invited_membership"Membership Renewal Reminder" → triggered by
expired_membershipSuggested filters:
membership_group— branch content for different tiersmembership_is_active— target active vs. expired memberssend_customer_notification = true— suppress admin-only actions
Testing before turning Journeys live:
Send test events from Alliance Pro after connecting Mailchimp.
Open a test contact in Mailchimp and confirm events appear under Activity → Events.
Preview your email templates to ensure event properties (like
messageoractivation_url) display as expected.
Segmentation ideas
Active members by group:
membership_is_active = trueandmembership_group = "Pro"
Renewal cohorts:
membership_expires_atwithin the next 30 days
Recently approved members:
approved_applicationin the last 7 days
Lapsed members:
expired_membershipin the last 90 days andmembership_is_active = false
Seeding and testing events
Alliance Pro sends sample events automatically when connecting Mailchimp to seed metrics. You can also manually resend test events.
Verification checklist:
Connect Mailchimp and select your audience.
Use the Send test notification events button.
In Mailchimp, open a test contact and confirm that events and properties appear under Activity → Events.
Troubleshooting & FAQ
"I don’t see Alliance Pro events in Mailchimp!"
Confirm you sent a test event after connecting and saving your audience.
Make sure the contact exists in Mailchimp with the same email.
If the contact is archived or unsubscribed, unarchive or resubscribe them so events attach properly.
"My Journey didn’t start ☹️"
Ensure the Journey trigger matches the exact event name (e.g.,
approved_application).Check filters — if filtering on
send_customer_notification = true, confirm that property is set on the event.
"The activation button shows for existing accounts"
Add conditional logic so the button only displays when
|EVENT:activation_url|has a value.
"Properties are missing in templates"
Use the underscore property names (e.g.,
membership_expires_at), not the readable labels from the UI.
"Duplicate sends are happening during imports"
If using
updated_membershipas a trigger, add filters to exclude bulk imports or temporarily disable the Journey.
Privacy and data handling
Alliance Pro events include membership metadata and the contact’s email address.
Manage consent and opt-outs directly in Mailchimp.
Keep Journeys transactional and limited to program communications in line with your privacy and data-retention policies.
For EU or UK merchants, ensure you collect lawful consent under GDPR before sending marketing communications.