NOWAITN
Notifications

All caught up!

No new notifications

Apps

Building your first sales pipeline

Define stages, set win/loss criteria, and wire platform events so deals advance themselves.

5 min read
Apr 21, 2026
NOWAITN

Pick a pipeline type

CRM supports multiple pipelines per organization — one for catering, one for private events, one for enterprise partnerships. Each pipeline has its own stages, its own win/loss criteria, and (on Advanced & Admin tiers) its own automation rules.

Start with a single pipeline that matches your highest-volume deal type. You can always add more later without migrating old deals.

Design your stages

Stages are the columns a deal moves through from first contact to final outcome. Good stages are:

  • Ordered — each stage represents more commitment than the one before it.
  • Few — three to six stages is the sweet spot. Ten stages feels granular but becomes clutter.
  • Observable — each stage transition should be triggered by something real and measurable, not by someone's mood.

A hospitality catering pipeline might look like:

  1. Inquiry — a new lead submitted the catering form or called in.
  2. Qualified — the date is open, the party size fits, the budget is in range.
  3. Quoted — a formal quote has been sent.
  4. Contracted — the deposit is paid and the date is locked.
  5. Served — the event happened. Won.
  6. Lost — declined, ghosted, or went with a competitor.

Create the pipeline

  1. Go to CRM > Deals and click Pipelines in the top right.
  2. Click New Pipeline. Give it a name (“Catering”, “Private Events”).
  3. Add your stages in order. Mark the last two as won and lost respectively — those control reporting.
  4. Save. Your first deal can go here now.

Wire platform events to stage moves (Advanced+)

The real unlock of CRM on a platform is that deals don't need to be dragged. They advance based on things that actually happened. From CRM > Automation, build rules like:

WhenDo
reservations.booked with party_size >= 10Create a deal in the Catering pipeline, stage Inquiry
payments.invoice.paid tagged depositAdvance linked deal to Contracted
A contact marked do-not-contactMove all their open deals to Lost
A deal has been in Quoted for 7 days without activityCreate a task for the deal owner titled “Follow up”

Rules are evaluated every time an event lands on the platform_api bus, so stage moves happen in real time — no nightly job, no manual refresh.

Track what's working

The Deals page has a dashboard that shows, per pipeline: won amount this period, loss reasons, stage dwell time (how long deals sit before moving), and forecast by expected close date. On Admin tier you can pin the same charts to the Hub dashboard for org-wide visibility.

What other apps see

CRM emits crm.deal.created, crm.deal.stage_changed, and crm.deal.won / crm.deal.lost events to platform_api. Any other app or external integration can subscribe — Slack notifications, email confirmations, or a custom dashboard. See Webhooks & Events in the developer docs for payload shapes.

Scanning for codes & barcodes

Point camera at any QR code or barcode

Details

Value

Enter a code, ticket ID, or URL

Your badge

Show this to another device to scan