Overall Status & Platform Status
Two fields in the ⇌ Status folder answer "where does this client stand?" —
one in AutoSync's standard vocabulary that's identical on every platform, and one in
your platform's own words. This page explains how each is populated and the exact
algorithm that maps platform statuses onto them.
The two fields at a glance
| Field | What it holds | Built for |
|---|---|---|
⇌ Overall Status | One of six fixed values: Active · Suspended · Future Start · Terminated · Expired · Non-Member | Workflows, filters, and reporting — the values never change, on any platform. |
⇌ Platform Status | Your platform's own word for the same record, verbatim — e.g. Frozen, Declined | Reading a contact and seeing exactly what your platform's UI says. |
The classic example: a Booker member freezes their membership. Booker calls that Frozen;
AutoSync's standard vocabulary calls a paused-but-still-a-member state Suspended. With both
fields you get both truths side by side — ⇌ Overall Status = Suspended,
⇌ Platform Status = Frozen — instead of wondering why the words don't match your platform.
How ⇌ Overall Status is populated
AutoSync keeps a record for every enrollment a client has — memberships, contracts, packs,
intro offers (see Memberships & entitlements). Each record
gets its own status using the per-platform mapping below, and ⇌ Overall Status is the
roll-up across all of them — every membership, every service line, everything —
strongest first:
| Priority | Value | Means |
|---|---|---|
| 1 | Active | At least one enrollment is current and usable. Active always wins — if anything is active, the client is Active. |
| 2 | Suspended | Nothing active, but an enrollment is paused — frozen or on a payment hold. Still a member. |
| 3 | Future Start | Nothing running yet, but a signed enrollment starts on a future date — a pre-signed renewal or a membership sold ahead of its start day. Committed, not churned. |
| 4 | Terminated | Their last membership ended by cancellation or early termination. |
| 5 | Expired | An enrollment simply ran out — end date passed or visits used up — without being cancelled. |
| 6 | Non-Member | No enrollment records at all. |
Put simply: a client has to end everything before they read as Terminated. And because platforms often create next year's contract before this year's ends, a member mid-renewal never dips into Terminated on the handover day — the current contract is Active until it ends, and the renewal is already there as Future Start, becoming Active the day it begins.
The field is always computed — never hand-written. AutoSync recalculates it on every enrollment change, so editing it by hand in HighLevel just lasts until the next sync. And before it ever downgrades someone from a live status to Terminated or Expired, AutoSync double-checks directly with your platform — if Mindbody or Booker still shows something active that we haven't seen yet, the record is refreshed first. A member who's genuinely active should never read as dead because of a sync gap.
How ⇌ Platform Status is populated
⇌ Platform Status carries your platform's own vocabulary, so you can always see what
your platform would say without opening it. It's a plain text field on purpose — every platform
has its own words.
Where the word comes from, per platform: Mindbody keeps its word on the
client — the same status the front desk sees, including Declined. Booker
attaches a status to each membership ("Frozen", "Cancelled"), so the word comes from the
membership that decided the roll-up. Restore/POW has no separate status vocabulary of its own,
so there the field simply mirrors ⇌ Overall Status.
This makes the pair a built-in cross-check: if ⇌ Overall Status and
⇌ Platform Status ever disagree — say Overall reads Terminated while Platform reads
Active — that's your signal something needs a look, visible right on the contact.
The mapping, platform by platform
Mindbody
AutoSync reads Mindbody's actual contract records — the same ones under the client's Contracts section — alongside pricing options. That distinction matters: a contract billed monthly has both a contract end date (when the commitment ends) and a payment-cycle date (when the next month rolls). Status comes from the contract's real dates, never the billing cycle:
| What Mindbody shows | ⇌ Overall Status contribution |
|---|---|
| Contract running today (started, not ended, not terminated) | Active |
| Contract signed but starting on a future date — Mindbody's "future start date", common on auto-renewals | Future Start |
| Contract with a termination date (ended early) | Terminated |
| Contract that reached its natural end without renewing | Expired |
| Pricing option that's current, with visits remaining | Active |
| Pricing option used up or past its expiration | Expired |
Mindbody's ⇌ Platform Status word comes from the client record itself — the exact
status Mindbody's front desk sees: Active, Suspended, Terminated, Expired, Non-Member, or
Declined.
"Declined" never changes ⇌ Overall Status. A failed autopay fires the
Payment Failed workflow trigger instead — a card hiccup shouldn't mark a member as
anything other than a member. But it does show in ⇌ Platform Status, so when
Mindbody says "Declined" and AutoSync says "Active," you can see both truths on the contact.
Booker
Booker attaches a status to each membership record — the same one you see in Booker's own UI. AutoSync reads it directly:
| Booker membership status | ⇌ Overall Status contribution | ⇌ Platform Status shows |
|---|---|---|
| ACTIVE | Active | Active |
| FROZEN | Suspended | Frozen |
| SUSPENDED | Suspended | Suspended |
| CANCELLED | Terminated | Cancelled |
| EXPIRED | Expired | Expired |
If a record ever arrives without a per-membership status, AutoSync falls back to Booker's customer-level flags: has an active membership → Active; has a membership that isn't active → Suspended; only past memberships → Terminated.
Restore / POW
Restore's credit groups map the same way: an active credit group is Active, a
FROZEN or DELINQUENT one is Suspended, CANCELLED is Terminated, and INVALID is
Expired. Restore exposes no separate status vocabulary beyond that, so
⇌ Platform Status mirrors ⇌ Overall Status on Restore accounts.
When the fields update
- Instantly — every membership, contract, or purchase event from your platform recalculates both fields.
- Daily — a scan catches enrollments whose end date passed quietly, activates Future Start enrollments whose start day arrived, and applies scheduled terminations.
- Weekly — a deep review re-reads memberships and contract records straight from your platform, so edits made there can't drift for long.
- On any downgrade — before publishing Terminated or Expired for someone who was live, AutoSync re-checks the platform directly and refreshes the record first.
Building automations on status
Build workflow conditions on ⇌ Overall Status and match the exact values
Active, Suspended, Future Start, Terminated,
Expired, Non-Member — they're stable across platforms, so the same
workflow works at a Mindbody studio and a Booker med-spa. Future Start is worth an
automation of its own: it's a signed member whose start date hasn't arrived — a perfect
welcome-sequence moment, and never a churn signal. Treat ⇌ Platform Status as the
human-readable companion: perfect for contact views, smart lists, and support conversations
("she's Frozen, not cancelled"), but its vocabulary varies by platform.
Related reading: Memberships & entitlements · Customer Lifecycle pipeline · Custom fields (⇌)
Last updated August 2026