The first thirty days after someone buys, built as a system: welcome, setup, first result, check-in, review request and referral ask.
Bring your stack to a call and we will scope it against how your business actually runs.
Book a callAlmost every business invests heavily in the moment before the sale and almost nothing in the thirty days after it. The pipeline is instrumented, the follow-up is automated, the booking reminders fire reliably, and then somebody pays, and the system goes quiet. What happens next depends on who closed the deal, how busy they are that week, and whether they remember. The customer, who has just spent money and is at their most attentive and most anxious, hears nothing for four days.
That silence is expensive in ways that do not show up as a refund. The first identifiable leak is activation: a customer who does not complete the setup step, send the file, book the kickoff, or log in for the first time never reaches the point where the product or service does anything for them. They have paid and received nothing, which produces either a refund request or, worse, a quiet non-renewal that gets recorded as churn eleven months later with no explanation attached. The second leak is reviews. A satisfied customer is most willing to write one within two weeks of their first good result, and that window is almost always missed because nobody is tracking when the first result happened. The third leak is referrals, which depend entirely on being asked at a moment of goodwill, and so almost never happen when asking is left to memory.
The fourth leak is the most insidious: unanswered early questions. In week one a customer has three or four small uncertainties, where to find something, what happens next, who to contact. Each one is trivial and each one, unanswered, erodes confidence. By week three they have stopped asking, and what reads internally as a quiet, low-maintenance account is in fact a disengaged one. This build replaces the thirty-day silence with a defined sequence of touches, each with a job, each with a measurable completion, so that activation is a tracked state rather than an assumption.
A dedicated Customer Onboarding pipeline, separate from the sales pipeline. A closed-won deal creates a new opportunity here rather than lingering at the end of the sales pipeline, because onboarding has its own stages, its own owner, and its own failure modes.
Trigger: a successful payment event from the connected payment processor, an invoice marked paid, or an agreement marked signed: whichever is the real moment of commitment for this business.
Conditions and branches: branch on product_purchased to select the onboarding variant; each variant differs only in the intake form, the kickoff calendar, and the activation milestone list, never in the overall shape. Branch on whether the contact already carries customer: an existing customer buying again gets a shorter welcome and skips the account-setup steps entirely, which is the branch most builds forget. Branch on whether a phone number exists; if not, run email-only without erroring.
Actions in order:
Stop and exit conditions: exits once the form-pending stage is reached. A refund or chargeback event exits the whole onboarding build immediately and routes to a human; automated onboarding continuing after a refund is a specific and avoidable embarrassment.
Trigger: opportunity enters Onboarding Form Pending.
Conditions and branches: branch on partial completion. A customer who started the form and abandoned it gets a different message from one who never opened it. The first needs reassurance that their answers were saved, the second needs the link again. Branch on business days, not calendar days: a form sent Friday evening should not be chased Saturday morning.
Actions in order:
Stop and exit conditions: form completion exits immediately and triggers Workflow 3. Opt-out stops the SMS steps but not the owner's task. A refund exits entirely.
Trigger: onboarding_form_complete set to yes.
Conditions and branches: branch on product_purchased to select the correct kickoff calendar and duration. Branch on whether a kickoff is needed at all. Some products are self-serve, and forcing a call on a customer who does not need one adds friction and delays first value. For self-serve products, skip to Workflow 5 and send the first activation step instead. Branch on how far out the first available slot is: if the earliest kickoff is more than five business days away, send an interim “here is what you can do in the meantime” message, because a five-day silence after an enthusiastic form submission is where doubt starts.
Actions in order:
Stop and exit conditions: kickoff held, or self-serve branch taken, or refund. Opt-out stops SMS only.
Trigger: opportunity enters Setup In Progress.
Conditions and branches: define three to five activation milestones per product, in writing, before building this. They must be things the customer does, observable by the system, and genuinely necessary. A vanity milestone pollutes the metric. Branch on whether each milestone is blocked by the customer or by the business: customer-side blockers get a chase, business-side blockers get an internal task and no customer message at all, because chasing a customer for something you owe them is the fastest way to lose them.
Actions in order:
Stop and exit conditions: all milestones complete, or first_value_at stamped, or refund. Automatic exit after 45 days from purchase_date with an escalation to the manager, so nothing sits in setup indefinitely.
Trigger: first_value_at stamped, or first-value-reached applied.
Conditions and branches: branch on day30_sentiment if it already exists, and on whether any at-risk or detractor signal is present. Never send a review request to an unhappy customer, which requires checking rather than assuming. Branch on whether review_left is already yes, and exit if so. Branch on channel consent.
Actions in order:
Stop and exit conditions: review left, two asks made, complaint received, at-risk flagged, or opt-out. Never enters if first_value_at is empty, asking for a review before the customer has received anything is the most common and most damaging error in onboarding builds.
Trigger: scheduled, 7 days after purchase_date.
Conditions and branches: branch on stage. An account still in Onboarding Form Pending on day seven does not need a satisfaction pulse, it needs a phone call, so route there instead. Branch on the answers: a named blocker creates a task, a “nothing unclear” answer increments confidence and does nothing else, and no answer at all is treated as a soft warning rather than as consent.
Actions in order:
Stop and exit conditions: answered, or three attempts made, or escalated. Does not run at all for accounts already in Stalled or At Risk.
Trigger: scheduled, 22 days after purchase_date.
Conditions and branches: branch on whether first_value_at exists. If it does not, this is not a thirty-day review, it is a rescue: suppress the review invitation entirely, escalate to the owner's manager, and treat the account as failed onboarding. Branch after the review on day30_sentiment into three distinct paths. Branch the referral ask on both sentiment and referral_asked_at: ask promoters only, and only once ever.
Actions in order:
Stop and exit conditions: onboarded, at-risk escalation, refund, or opt-out. referral_asked_at being populated permanently blocks re-entry to the referral branch.
Trigger: at-risk applied by any route. Negative pulse answer, detractor sentiment, complaint keyword in any inbound message, a cancellation inquiry, a failed payment, or two consecutive stalls.
Conditions and branches: branch on cause, because the responses are genuinely different. A service failure needs an owner call. A payment failure needs a payment-method update and nothing emotional. A cancellation inquiry needs a senior person and no automation beyond acknowledgement. A silence-based stall needs a human, not another message. Branch on severity: anything mentioning refund, legal, or cancellation routes to the business owner directly rather than to the account owner.
Actions in order:
Stop and exit conditions: manual clearance by the owner, or the account being marked canceled or refunded, which exits every workflow in the build. Nothing in this workflow sends more than one automated message to the customer.
Afterwards, the thirty days after a sale look the same every time, regardless of who closed it or how busy that week was. The customer hears from the business within minutes of paying, knows who their person is, knows what is expected of them, and gets a defined checkpoint at day seven and day thirty. The business, for its part, knows which accounts are activating and which are stuck, because stuck is a stage with a name and an owner rather than a feeling somebody has.
The most valuable structural change is that first_value_at exists as a field. Once you can measure the number of days between payment and first concrete result, you can shorten it, and shortening it improves retention, reviews, and referrals simultaneously without changing anything else. Most businesses have never measured this and are surprised by how long it actually is.
The second change is that reviews and referrals stop being campaigns and become consequences. The review request fires a fixed interval after a real delivered result, referring to that result by name, and only to customers who have been given an explicit chance to complain first. The referral ask goes only to people who have said they are happy, once, and never again. Both become predictable rather than sporadic.
Metrics to watch:
None of the above is legal advice. Messaging registration rules, consent standards, review-platform terms, and data-protection obligations vary by jurisdiction and by industry, and they change. Confirm the specifics, including consent wording, retention periods, and how customer data is handled on cancellation: with the client's own counsel before going live. To scope a build for a specific business, book a call at bookings.appbo.io.
Every build on this page is something we configure, test and hand over with the SOPs your team needs to run it.
Book a call