> ## Documentation Index
> Fetch the complete documentation index at: https://docs.myfundingmachine.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Paid-customer stage progression

> Advance verified new paid customers through onboarding while preserving staff QA and pause controls.

Automatic progression uses the same stage requirements as the staff workspace.
It advances at most one adjacent stage per evaluation, stops at **Final QA Check**,
and requires staff approval to go Live. The background job runs every 15 minutes;
staff saves also evaluate the customer's next step. See
[stage requirements and attendance rules](/staff/onboarding#automatic-progression).

## New paid customers only

Paid-only mode requires an active, automatically enrolled member in **send mode**
with `requireVerifiedPayment: true`. The Operations contact, onboarding opportunity,
and customer Location must agree across the audience, account link and setup record.
The customer's original creation date must qualify for new-customer enrollment.

The verified payment must be unpaused, match the same contact and opportunity, and
fall on or after both saved welcome and enrollment cutoffs. An expired intake link
does not revoke payment. Trials, saved cards, a **New — Paid** stage label, manual
pilots, and older customers do not qualify. Agency transfers and setup opt-outs block
automation. A stale pilot Location list cannot bypass paid-only mode.

The staff workspace, automatic helper-field updates, staff-save follow-up and
background progression use this eligibility. It is checked again immediately
before dispatching an automatic CRM write. Manual staff editing remains available
under its existing permissions.

## Rollout controls

Deployment does not enable progression. Technical staff must approve the exact
production target and verify native workflow ownership before activation.

| Convex setting | Purpose |
| - | - |
| `ONBOARDING_AUTO_PROGRESS_ENABLED=true` | Master progression switch. |
| `ONBOARDING_AUTO_PROGRESS_PAID_ONLY=true` | Select the verified paid audience automatically. |
| `ONBOARDING_ADMIN_CRM_WRITES_ENABLED=true` | Existing CRM write gate. |
| `ONBOARDING_ENGINE_LIVE_ENABLED=true` | Existing cloud engine gate; paid progression also requires the saved engine to be enabled. |
| `ONBOARDING_AUTO_PROGRESS_LOCATION_IDS` | Legacy explicit pilot list; ignored in paid-only mode. |

Set paid-only mode before enabling the master switch. New eligible paid members are
picked up without maintaining a per-customer Location list. The existing
[enrollment policy and immutable cutoffs](/staff/onboarding-engine-rollout) stay intact.
No historical customer backfill is part of this rollout.

Before activation, inspect the current queue read-only and confirm that only the
approved audience is eligible, each proposed stage has its required evidence, and
native workflows do not own the same stage writes. After activation, inspect the
first bounded pass and its confirmed CRM edit records. Do not retry an uncertain
provider write until its result has been checked.

## Pause and resume

Turn the master progression switch off to stop automatic stage and helper-field
writes while leaving the communication engine running. Leave paid-only mode set;
unsetting it would restore the legacy pilot-list behavior.

Pausing the cloud engine, deactivating the audience member, selecting compute mode,
or pausing their payment also blocks paid-only progression. Restoring eligibility
resumes evaluation without deleting stage history, staff pauses or message receipts.
Disabling new-customer enrollment alone stops admissions, not existing membership.

Use **Change stage → Pause/Resume** for an individual stage-progression hold.
As before, this stage hold preserves factual helper-field synchronization. Holds,
MIA and incomplete requirements block stage advancement. A detected backward move
pauses progression until staff resume it. Nothing automatically moves a customer
backward or bypasses Final QA.

Post-go-live retention handoff is a separate rollout; enabling this process does
not enroll retention opportunities or turn on retention messages.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.