Example: On-demand (Shuttlers)
A complete autopilot integration for a shared-mobility service like Shuttlers — events, mapping, stages, and campaigns.
Shuttlers is a shared-mobility service: commuters sign up, then book seats on shuttle routes, ride after ride. The value event is a repeated discrete booking, so the On-demand / Delivery model fits — it's built around getting a rider to their first trip, then rewarding frequency. This guide assumes the pay-per-ride product; if passes/subscriptions dominate your revenue, see the note at the end.
1. Events to instrument
Emit these from your booking backend as they happen. Include the rider's external_id on every event.
Your event Fires when… Useful properties
------------------- ----------------------------- ----------------------------
account_created a rider signs up signup_source, city
first_ride_booked they book their very first route, fare, seats
shuttle seat
ride_booked any booking (incl. the first) route, fare, seats, ride_date
booking_started they open checkout for a seat route, fare (optional / intent)
Sending the first ride as its own event is optional — you can also treat "the first ride_booked" as the conversion — but a dedicated first_ride_booked makes the milestone unambiguous. Send ride_booked for every booking, first included, since that's the recurring activity signal that also tiers up loyal riders.
curl https://api.engageapp.xyz/api/v1/public/events \
-H "X-API-Key: df_your_secret_key" \
-H "Content-Type: application/json" \
-d '{
"events": [
{ "external_id": "rider_5521", "event_name": "ride_booked",
"occurred_at": "2026-07-10T06:40:00Z",
"properties": { "route": "Lekki-CMS", "fare": 1500, "seats": 1 } }
]
}'
2. Choose the model & map events
Pick On-demand / Delivery and map:
Canonical behavior Role Your event Required?
-------------------- ----------- ----------------- ---------
signed_up acquisition account_created required
placed_first_order conversion first_ride_booked required
placed_order activity ride_booked required
This model has no intent or churn role, so those stay unmapped. Repeat frequency is inferred from the count of ride_booked events.
3. Resulting lifecycle stages
Riders are classified as new → onboarding → first order → repeat → loyal → lapsing. A rider becomes repeat after 3 bookings and loyal after 10, as long as they're recently active; a rider who stops booking drifts to lapsing.
4. Opportunities & campaigns
- Onboarding stall — signed up but never booked a ride. Campaign: a first-ride nudge with the nearest routes and a starter discount.
- Post-conversion — just took their first ride. Campaign: "how did it go?" plus a prompt to book their return/commute for the week.
- Re-engage dormant — was booking, then went quiet. Campaign: "your seat's waiting" with their usual route pre-filled.
- High-value nurture — loyal, frequent commuters (10+ rides). Campaign: priority perks, a loyalty offer, or early access to new routes.
- Win back — a lapsed rider (On-demand has no explicit cancel event, so this targets riders who converted but stopped). Campaign: a comeback fare on their most-used route.
5. Channels, autonomy & real-time
Commuters respond well to SMS, push, and WhatsApp for timely, transactional nudges; connect at least one and select it during activation. Start in review required, then move re-engagement and win-back to auto-execute once you trust the drafts. Because first_ride_booked is a conversion behavior, it also triggers real-time detection — a rider's first trip can kick off the post-conversion follow-up within minutes.
Note: pass / subscription-led services
If your core product is a recurring route pass rather than pay-per-ride, use the Subscription / Media model instead. Map subscribed to your pass purchase and subscription_canceled to a cancellation — you gain an explicit churn signal (at-risk / churned stages and a true win-back opportunity), at the cost of the ride-frequency tiers. Rule of thumb: pay-per-ride → On-demand; pass-led → Subscription.
Next steps
- Review the general integration guide.
- Track ride recovery on the performance dashboard.
Related
Integration guide
Everything you instrument on your side to power the Engagement Autopilot — contacts, events, the canonical behaviors, channels, and verification.
Example: Fintech / Neobank (Kuda)
A complete autopilot integration for a digital bank like Kuda — events, mapping, stages, and campaigns.
Events
Send behavioral events about your contacts to trigger campaigns, gate waits, and power segments.
Opportunities & the review queue
The micro-segments the autopilot detects, how it drafts a campaign for each, and how you approve or dismiss them.