Automation examples

A variable stores a field on the card. A segment collects customers by conditions. A trigger runs one action for that segment: a push, an SMS, an email, a template change, a balance update, or a new variable value. Pick the pairs that fit and build the scheme from them.

The first days with the card

ScenarioSegmentTrigger
Welcome on the day of installInstalled, created todayOn entering the segment — a push on how to open the card
Reminder the next dayCreated yesterday, no installsAfter 1 day — a push with the install link
Second install reminderNo installsAfter 3 days — a push
SMS reminderNo installsAfter 5 days — SMS (beta)
Email with the card linkNo installsAfter 10 days — email (beta)
How bonuses workCard installedAfter 7 days — a push with the rules
Bonus for the first visitorder_count = 0, card installedAfter 14 days — add balance and send a push
A larger bonus if there is still no visitorder_count = 0, card installedAfter 21 days — a larger credit and a push
First-month recapCard installedAfter 30 days — a push
A short note on AppleApple installs greater than 0After 45 days — a push
A quarter with the cardCard installedAfter 90 days — a push
Half a year with the cardCard installedAfter 180 days — a small credit
A year with the cardCard installedAfter 365 days — add balance and send a push
Bonus for a campaign promo codeThe campaign promo codeOn entering — add balance
Bonus for a partner codeA different promo codeOn entering — its own credit and a push
Welcome from checkoutSignup form “checkout”On entering — a push that the card works at the till
Welcome from the websiteSignup form “website”On entering — a push on how to add the card to Wallet
Welcome from a QR formQR signup formOn entering — a short push
Card from TelegramTelegram signup formOn entering — a message in the Telegram bot, if the module is connected
Web push without a walletApple installs = 0 and Google installs = 0After 2 days — a web push, if the module is connected
A second device after AppleApple greater than 0, Google = 0After 3 days — a push about Google Wallet
A second device after GoogleGoogle greater than 0, Apple = 0After 3 days — a push about Apple Wallet
The card on several devicesInstalls greater than 1After 1 day — a push that the balance is shared
Not in the CRM yetSync = no, created todayOn entering — write the variable needs_sync
Balance already came from the CRMSync = yes, balance greater than 0On entering — a push that the amount is already on the card
Complete the profileAge = 0After 5 days — a push with the profile-enrichment link
Ask again to fill in the profileAge = 0After 14 days — a second push
No date of birthAge = 0After 3 days — a push on why the date is needed
Gender is not setGender “not specified”After 7 days — a push asking them to complete the profile
How stamps workStamp-card template, current stamps = 0On entering — a push: one purchase, one stamp
Where to see the discountDiscount-card templateOn entering — a push that the discount is on the front
A starter template for three daysCreated todayOn entering — switch the template and remove it after 3 days
First onboarding stepCard installedOn entering — write onboard_step = 1
Second onboarding steponboard_step = 1After 7 days — a push and set onboard_step = 2
Third step with no purchasesonboard_step = 2, order_count = 0After 14 days — a bonus and onboard_step = 3
A check on a list of card numbersCard numbers separated by commasNow — a test push
Only after phone verificationA form with phone verificationOn entering — a welcome push
Issued with no promo codePromo code is emptyOn entering — a general welcome
A link on the back of the cardCard installedAfter 3 days — a push about the link on the card
How to share the cardCard installedAfter 7 days — a push on passing the card on
A template for staffThe staff variable is onOn entering — the staff template
No privileges yetBalance = 0, bonus = 0, discount = 0, card installedAfter 7 days — a push on how a bonus or discount appears
A discount is already on the cardDiscount greater than 0On entering — a push with the discount size
A bonus is already on the cardBonus greater than 0On entering — a push on where to see the bonus
An event signup formSignup form “event”On entering — a push inviting them to visit
A separate counter formAnother signup formOn entering — its own welcome text
The welcome was not sent yetInstalled, push text does not contain the welcomeOn entering — send the welcome
A short note on day twoInstalled, order_count = 0After 2 days — a short push
An offer on day tenorder_count = 0, installedAfter 10 days — a push with an offer
A last email if the card was never installedNo installsAfter 60 days — email (beta)

Birthdays and campaign dates

ScenarioSegmentTrigger
Announcement 30 days aheadBirthday in 30 days, card installed30 days before — a push
Announcement 14 days aheadBirthday in 14 days, card installed14 days before — a push
Announcement 7 days aheadBirthday in 7 days, card installed7 days before — a push with the gift terms
Announcement 3 days aheadBirthday in 3 days, card installed3 days before — a push
Reminder the day beforeBirthday tomorrow, card installed1 day before — a push
Gift on the birthdayBirthday todayOn the birthday — add balance
Birthday template for one dayBirthday todaySwitch the template and remove it after 1 day
Birthday template for 3 daysBirthday todaySwitch the template and remove it after 3 days
Birthday template for a weekBirthday todaySwitch the template and remove it after 7 days
Gift for womenBirthday today, femaleIts own amount and its own push
Gift for menBirthday today, maleA different amount and different text
A shared gift when gender is emptyBirthday today, gender not specifiedA shared bonus and shared text
Gift under 18Birthday today, age under 18Its own bonus, without an adult offer
Gift at 18–24Birthday today, age from 18 to 24Its own bonus and text
Gift at 25–34Birthday today, age from 25 to 34Its own bonus and text
Gift at 35–44Birthday today, age from 35 to 44Its own bonus and text
Gift at 45–59Birthday today, age from 45 to 59Its own bonus and text
Gift from 60Birthday today, age over 59Its own bonus and text
Birthday with no install, SMSBirthday today, no installsSMS (beta)
Birthday with no install, emailBirthday today, no installsEmail (beta)
Greeting on AppleBirthday today, Apple greater than 0A push
Greeting on GoogleBirthday today, Google greater than 0A push
A large balance on the birthdayBirthday today, balance above a thresholdA push that bonuses are already on the card, with no new credit
Zero balance on the birthdayBirthday today, balance = 0Add balance
A discount already exists on the birthdayBirthday today, discount greater than 0A push about the discount that day
Birthday and no purchases yetBirthday today, order_count = 0A bonus and an invitation to the first visit
A champion’s birthdayBirthday today, purchases are frequent and recentA larger credit and a push
Birthday after a long gapBirthday today, order_days greater than 180A win-back bonus
Reminder to spend the giftGift variable = 1, balance greater than 01 day after the birthday — a push
Remove the birthday templateBirthday-template variable = 1After 3 days — the regular template and clear the variable
The gift is still unspentGift variable = 1, order_days greater than 7After 7 days — one more push
One greeting per yearBirthday today, the year variable is not the current yearAdd balance and write the year
New Year pushCard installedOn a date — a push
New Year templateCard installedOn a date — a template, removed after 14 days
8 MarchFemale, card installedOn a date — a push
23 FebruaryMale, card installedOn a date — a push
Start of summerCard installedOn a date — a push and the seasonal template
End of summerSeason variable = 1On a date — the regular template and clear the variable
A season for younger customersAge under 25, card installedOn a date — a push
Seasonal saleCard installedOn a date — a push
Announcement that the campaign is endingCampaign variable = 1On the day before the end — a push
Campaign closeCampaign variable = 1On the end date — the regular template and clear the variable
Announcement a week before the startCard installedOn a date — a push that the start is soon
Opening dateCard installedOn a date — a push to the whole database
Program anniversaryCard installedOn a date — add balance and send a push
Birthday and the website formBirthday today, form “website”Its own push text
Birthday and the checkout formBirthday today, form “checkout”Its own push text
A one-off greeting for birthdays todayBirthday todayNow — a push
A staff birthdayBirthday today, staff variable onIts own template, no guest bonus
A greeting in TelegramBirthday today, Telegram formA message in the Telegram bot, if the module is connected

Purchases and RFM

Recency and frequency bands come from RFM analysis: the variables order_days and order_count. You set the band edges.

ScenarioSegmentTrigger
ChampionsBuy often and visited recentlyOn entering — a push with early access
LoyalVisited recently, medium frequencyOn entering — a thank-you push
Newcomers with potentialVisited recently, few purchasesA second-purchase bonus and a push
Frequent customers cooling offUsed to buy often, mid recencyA win-back offer
MiddleMid recency and mid frequencyAn offer to visit more often
Rare guestsMid recency, few purchasesOne gentle reminder
Lost championsUsed to buy often, away for a long timeA stronger bonus and a push
Rare and long goneAway for a long time, few purchasesOne reminder
LostAway for a long time, almost no purchasesOne last message
A status template for championsBuy often and visited recentlySwitch the template
Loyal customers in TelegramVisited recently, medium frequencyA message in the Telegram bot, if the module is connected
Newcomers without a walletVisited recently, few purchases, no installsA web push, if the module is connected
Cooling-off customers with no installUsed to buy often, no installsSMS (beta)
Lost customers with no installAway for a long time, no installsEmail (beta)
Remember the cellBuy often and visited recentlyWrite the variable rfm_cell
Guests only, not staffFrequent and recent, staff variable offA push
Exactly one purchaseorder_count = 1An offer for the second purchase
Exactly two purchasesorder_count = 2A small credit
Exactly three purchasesorder_count = 3A push
Fifth purchaseorder_count = 5Add balance
Seventh purchaseorder_count = 7A push with the next threshold
Tenth purchaseorder_count = 10A regular-guest template and a push
Fifteenth purchaseorder_count = 15An extra bonus
Twentieth purchaseorder_count = 20A VIP template
Twenty-fifth purchaseorder_count = 25A credit and a push
No purchases yetorder_count = 0, card installedOn entering — an invitation to the first visit
Thanks on the day of the visitorder_days = 0, order_count greater than 0On entering — a push
Mark a fresh visitorder_days under 2, order_count greater than 0Write recent_visit = 1
A two-week gaporder_days greater than 14, order_count greater than 0A push
A month of quiet after real visitsorder_days greater than 30, order_count greater than 2An offer and a push
A 45-day gaporder_days greater than 45A push
A 60-day gap among frequent buyersorder_days greater than 60, order_count greater than 3A stronger bonus
A 90-day gaporder_days greater than 90A template for 14 days, then remove it
A 120-day gaporder_days greater than 120One message
Half a year away and no installorder_days greater than 180, no installsSMS (beta)
A year awayorder_days greater than 365One email (beta)
First stampCurrent stamps = 1A push with how many are left
Second stampCurrent stamps = 2A push
Third stampCurrent stamps = 3A push
One stamp away from the giftCurrent stamps are 1 below the gift slotA push that the next visit is the gift
The stamp gift is completeCurrent stamps reached the gift slotA push to collect the gift
Mark the gift as givenStamps are at the maximum, the reward variable is emptyWrite that the gift was given
Frequent buyers with a small ticketBuy often, average ticket below a thresholdA push about another category
Frequent buyers with a high ticketFrequent and recent, average ticket above a thresholdA closed offer
Back after a gaporder_days under 2, order_count greater than 5, a win-back offer was already sentA thank-you push and clear the offer variable
Do not send the win-back twiceorder_days greater than 30, push text does not contain the win-back offerA push
A purchase on the day the card was issuedorder_count = 1, created todayOn entering — a thank-you push
Three purchases and a month of quietorder_count at least 3, order_days from 30 to 60An offer
One purchase and two months of quietorder_count = 1, order_days greater than 60An invitation to the second purchase
Champions already in the CRMSync = yes, frequent and recentA push only for synced cards

Balance, tier, and pass design

ScenarioSegmentTrigger
Spend a balance from 100Balance greater than 100On entering — a push
Spend a balance from 300Balance greater than 300On entering — a push
Spend a balance from 500Balance greater than 500On entering — a push
Spend a balance from 1000Balance greater than 1000On entering — a push
A closed offer from a balance of 5000Balance greater than 5000On entering — an invitation push
A bonus sitting for two weeksBonus greater than 500, order_days greater than 14A push
A bonus sitting for a monthBonus greater than 100, order_days greater than 30A push that the bonuses are waiting
Balance back at zeroBalance = 0, order_count greater than 0A push on how to earn again
Balance in a narrow bandBalance from 100 to 300A gentle push
A 5% discount on the frontDiscount = 5Switch the template
A 10% discount on the frontDiscount = 10Switch the template
A large discountDiscount at least 15A template where the discount is large
The discount is goneDiscount = 0, the discount template is still on the cardRestore the regular template
Bronze tierTier variable = bronzeThe bronze template
Silver tierTier variable = silverThe silver template and a push
Reaching goldTier variable = goldThe gold template, a push with the terms, and a write of the tier
Platinum tierTier variable = platinumThe platinum template and a push
From gold down to silverTier variable = silver after goldSwitch to the silver template
Tier back to standardTier variable = standardThe regular template
A new amount on the cardBalance crossed a set thresholdOn entering — a push about the amount
Remember the spend offerBalance above a threshold, the offer variable is emptyA push and write offer_state
Do not repeat “spend it”offer_state = spend, balance still above the thresholdThe spend trigger is not attached to this segment
A campaign look for a weekBalance above a thresholdSwitch the template and remove it after 7 days
A discount with no balanceBalance = 0, discount greater than 0A push that the discount stays on the card
A large balance and no installBalance above a threshold, no installsSMS (beta)
A large bonus on Apple onlyBonus above a threshold, Apple greater than 0, Google = 0A push
A large bonus on Google onlyBonus above a threshold, Google greater than 0, Apple = 0A push
Guest balanceBalance above a threshold, staff variable offA push
Only cards from the CRMSync = yes, balance above a thresholdA push
A premium templateBalance greater than 1000Switch to the premium template
How to earn fasterBalance under 50, order_count greater than 5A push
The first bonusBonus greater than 0, seen_bonus is emptyA push and write seen_bonus
The discount got biggerDiscount is above the value stored as the previous sizeA push and write the new size
Copy for a 5–10 discountDiscount from 5 to 10Its own push
A template for a 10–20 discountDiscount from 10 to 20Its own text and template
A large discount figureDiscount greater than 20A template with a large figure
A bonus on entering goldTier = gold, bonus = 0Add balance
The date of the tier changeTier = goldWrite a variable with the transition date
A month on the tier with no visitTier = gold, order_days greater than 30A push with the tier terms
A temporary discount on the cardThe temporary-discount variable is onThe discount template, removed after 30 days
The temporary discount endedThe temporary-discount variable is offThe regular template
A new card still at zeroBalance = 0, order_days under 7This segment is kept out of the “spend your bonuses” trigger
A large balance and a small ticketBalance above a threshold, average ticket below a thresholdA push on what to spend it on
A small balance and a high ticketBalance below a threshold, average ticket above a thresholdA push on how to earn more
The threshold in TelegramBalance crossed a thresholdA message in the Telegram bot, if the module is connected
The threshold without a walletBalance above a threshold, no installsA web push, if the module is connected
Balance is there, the card was never installedBalance above a threshold, no installsEmail (beta)
Balance fell back under the thresholdBalance below the threshold, offer_state = spendClear offer_state
Stamps with a saved bonusBonus above a threshold, stamp-card templateA push that the gift is close
Staff with a balanceStaff variable on, balance above a thresholdKeep the staff template instead of a guest one

Events and custom fields

An event comes from the website, the app, or another system. How to create one is in Working with events.

ScenarioSegmentTrigger
Abandoned cart the next dayAn abandoned-cart event, no purchase after itOn the event — a push the next day
Abandoned cart on day threeAn abandoned-cart event, still no purchaseAfter 3 days — a second push
A bonus on an abandoned cartAn abandoned-cart event, order_count greater than 0A small credit and a push
A cart after a long gapAn abandoned-cart event, order_days greater than 30A stronger offer
Viewed a productA product-view eventA reminder push
Viewed a specific productA product-view event, value is the product nameA push about that product
Visited the site and did not buyA site-visit event, order_days greater than 1A push
Three visits and no purchaseA visit event at least 3 times, order_count = 0An offer for the first order
Opened an emailAn email-open eventA follow-up push for the offer
Opened a messageA messenger-open eventA push
A booking was createdA booking eventA confirmation push
A booking for tomorrowA booking event, value = tomorrowA reminder
Left a reviewA review eventA small bonus and a thank-you push
Added to favoritesA favorite eventA push when the next availability event arrives
Opened the app againAn app-open event, order_days greater than 30A push
Searched the catalogA search eventA push on the topic from value
Viewed a categoryA category-view eventA push for that category
Favorite categoryThe category variable equals the value you needA push for that category only
Home storeThe store variable equals a locationPush text that names that location
Text in FrenchLanguage variable = frA push in French
Text in EnglishLanguage variable = enA push in English
Text in GermanLanguage variable = deA push in German
A campaign only for people who opted inThe consent variable is onThe campaign push goes only to this segment
Staff kept apartThe staff variable is onIts own template; customer campaigns are not attached to the segment
City on the cardThe city variable equals a valueA push with a city offer
Came from socialSource variable = social, a first-visit eventIts own push
Came from a QRSource variable = qrIts own text
A high average ticketThe average-ticket variable is above a thresholdAn invitation to a closed offer
A list of card numbersCard numbers separated by commasA personal push
A bonus for another listA second list of card numbersAdd balance
Already received this campaignPush text contains the campaign nameThe next wave is not attached to this segment
The card is not in the CRMSync = noWrite the variable needs_sync
An empty profile after a site visitAge = 0, a visit event happenedA push with the profile-enrichment link
A stamp is already on the cardA purchase event, current stamps greater than 0A push with how many stamps are on the card
An English templateLanguage variable = enSwitch to a template with English text
A cart in TelegramAn abandoned-cart event, Telegram formA message in the Telegram bot, if the module is connected
A cart without a walletAn abandoned-cart event, no installsA web push, if the module is connected
A cart by SMSAn abandoned-cart event, no installsSMS (beta)
A cart with no purchase for a weekAn abandoned-cart event, no new purchaseAfter 7 days — email (beta)
A visit and a birthday soonA visit event, birthday within 7 daysA push with the gift ahead of time
A view by a championA view event, purchases frequent and recentEarly access instead of the general offer
A visit with a large balanceA visit event, balance above a thresholdA push to spend
A promo code and a site visitThe campaign promo code, a visit eventAn extra push for the campaign
A cart from the website formForm “website”, an abandoned-cart eventText about returning to the order
Category and genderThe category variable is set, gender is setOffer text for that pair
A class bookingAge under 25, a booking eventA reminder before the class
A check on test card numbersA list of card numbersNow — a test push
Remember the offer from the eventAn event whose value is an offer codeWrite offer_state to that value
A purchase closes the offerA purchase event, offer_state is not emptyClear offer_state
Consent is offThe consent variable is offCampaign triggers do not use this segment

Get started free

Try Passquare — it’s free & easy.

Create an account, set up your signup form, design your cards, issue a few wallet passes, and send your first push notifications.

Sign up for free
Wallet card signup form