Skip to main content
Open Settings from the Revenue Recovery sidebar. This page controls provider workflows and account-wide recovery behavior.

Review provider cards

Settings shows separate cards for Stripe and RevenueCat. Each card lists its trigger rows, current state, offer, and recent results. Use a trigger row to:
  • turn a ready workflow on
  • pause or resume a live workflow
  • open Offer & delivery
  • open Script & voice
  • delete only that trigger’s workflow
Deleting a trigger does not disconnect the billing provider. RevenueCat also provides Manage codes for App Store offer inventory.

Create a workflow

Click New workflow and complete four steps:
  1. What should hyzl react to? Choose a trigger.
  2. Who should hyzl win back? Choose an existing provider connection, or connect Stripe or connect RevenueCat.
  3. What can the AI offer? Choose the outreach channel, then configure the offer, delivery, and recovery texts.
  4. Finalize & launch. Review the draft and start the workflow.
The wizard creates a draft before outreach starts. Review the call script and voice through Script & voice. Use the test-call control before launching material changes. Connecting Stripe directly from Integrations can create a cancellation workflow with your existing call settings. Review that workflow in Settings before use. If you connect Stripe from the trial trigger, connection alone creates no workflow. Click Finalize & Launch to create the trial workflow.

Choose a trigger

The live triggers are:
  • Subscriber cancels for a voluntary cancellation or scheduled cancellation
  • Trial ends without converting for a trial that ends before payment
  • Member loses access for the day subscription access ends
  • Signs up, never pays for a paywall event that remains unpaid after a wait. Read the complete signup recovery setup.
Each trigger has its own offer, script, campaign, and live switch. Edit each one separately. Payment fails appears as Coming soon. You cannot choose or launch it. If no workflow exists for an eligible provider event, hyzl does not dial the member. Analytics keeps the event visible with its reason.

Choose how hyzl reaches out

The Offer step opens with How hyzl reaches out. Choose one channel for the workflow.
  • Call + text places an AI call, with an optional heads-up text before it. hyzl texts the offer after a yes on the call. It also texts after every call attempt fails to reach the member. This is the default.
  • Text only places no outbound call. hyzl texts the offer link right away and sends zero through four configured follow-ups. The AI answers text replies. Inbound calls to your recovery number are still answered.
Text only needs a Stripe discount above 0%. At 0% there is nothing to text. Create Campaign and Save changes stay unavailable until you set a discount or switch back to Call + text. This rule does not affect a RevenueCat offer or a merchant-provided offer. When you choose Text only, the Offer step relabels its call fields for texting:
  • Wait before checking and texting replaces the calling wait.
  • Daily text cap counts first offer texts and follow-ups together each day. It replaces the daily call cap.
  • Texting window replaces the calling window.
The offer-text switch locks on, because the text carries the offer. The call-only controls, including the heads-up-text switch, do not appear. Direct Calendar Booking also does not appear for Text only workflows. It books meetings during a live call. For a Text only workflow, Script & voice opens directly at campaign settings. Call script and voice controls do not appear. The test step replaces the call buttons with Text my phone. Enter your phone number, then click Text my phone to receive a sample of the first text. The sample does not place a call or apply a real offer. You do not need to turn on recovery test mode or add your number to a test allowlist.

Configure follow-up texts

Use Follow-up texts to add zero through four follow-ups. Existing and untouched schedules keep one follow-up at 23 hours. Set each delay from one hour through 30 days. Choose hours or days. The first delay starts after the offer text. Each later delay starts after the previous follow-up. Click Customize to replace a follow-up’s default copy. Without {offerUrl}, hyzl warns that the member receives no offer link. You can still save the custom copy. Unknown placeholders and blank first-offer messages still block saving. Quiet hours can delay a due follow-up. The daily text cap and all other text safeguards apply to each send. A payment or STOP ends the remaining follow-ups. STOP also adds the member to your do-not-contact list. Another reply pauses the follow-ups. The AI still answers, and the next text waits until the member stays quiet for 24 hours. Stripe creates a fresh checkout link for every follow-up. Each link expires 24 hours after its follow-up sends. RevenueCat and merchant-provided follow-ups reuse the current offer link.
When you switch a live workflow to Text only, the edit sheet explains what happens to members who are mid-retry. On their next scheduled run, hyzl sends the offer text instead of another call. A member who already has the offer does not change.
If you edit a live Text only schedule, an already scheduled follow-up keeps its send time. Later follow-ups use the new schedule.

Configure a Stripe offer

Open Offer & delivery for the trigger row. Set a percentage from 0 through 90 and save. A 0% offer creates a feedback-only conversation. The AI can ask why the member left but does not offer a discount. By default, the discount applies once to the member’s current plan. You can instead choose an annual plan paid upfront.

Offer the current plan

The member keeps or restarts the same plan with the configured discount. A still-active cancellation can use a one-tap apply action.

Offer an annual plan

Choose Annual plan, paid upfront, then choose an active yearly Stripe price. The list comes from your connected Stripe account. If no eligible yearly price exists, create a yearly recurring price in Stripe. Until you choose one, the workflow continues to offer the current plan. The member receives the discount for the first year. Later years renew at the full annual price.
  • A member whose subscription ended pays the discounted first year upfront.
  • An active, cancelling member changes plans immediately.
  • Stripe subtracts a prorated credit for unused time on the old plan.
The first annual charge can therefore be lower than the full discounted price.

Configure a RevenueCat offer

RevenueCat discounts come from App Store Connect instead of a typed percentage. Choose the App Store offer that the AI should describe. Keep enough one-time offer codes in Manage codes. A workflow cannot promise a code when that offer has no available inventory.

Configure delivery

Available channels and actions depend on the trigger and provider:
  • an offer text can follow acceptance or all unanswered attempts
  • a heads-up text can arrive before the call
  • eligible Stripe cancellation flows can send an offer email
  • signup recovery sends a text because the member has not purchased yet
  • Stripe can use supported un-cancel, resubscribe, or checkout actions
  • RevenueCat sends an App Store redemption code
To send an offer email, connect Gmail or Outlook first. Open Account, then connect a provider under Email & Calendar. Without a connected provider, the offer email option stays off. A Text only workflow sends no heads-up text and places no call. It texts the offer link, then follows your schedule. An untouched schedule sends one follow-up about 23 hours later. Quiet hours can delay a follow-up. See Text only workflows. Open See the texts we send to review or customize all recovery messages. The workflow saves its own copy. In Text only, customize each First offer text variant and each follow-up. Switching outreach modes preserves the separate first-offer templates and schedule. Read every text and delivery rule.

Configure the script and voice

Open Script & voice for the trigger. Review the prompt, call script, voice, voicemail, retry settings, callback number, and offer experiment. The AI uses the Knowledge Base for approved business facts. The workflow supplies the current member and offer context. Use the test controls before you save a major script or voice change.

Run an offer experiment

An eligible workflow can compare two through five script-and-offer variants. New recovery traffic splits evenly, and retries keep their original variant. Experiment inputs lock after the test starts. Close the experiment before changing its variants. Learn how offer experiments work.

Pause and resume triggers

Each trigger switch works independently. Pausing cancellation recovery does not pause a live trial or access-loss workflow. When you pause a trigger:
  • hyzl stops new calls for that trigger
  • pending automatic retries stop
  • the offer, script, experiment, provider connection, and past results remain saved
  • a call already dialing or in progress continues
For provider events, resuming allows eligible pending calls and held retries to continue. Signup recovery behaves differently. Events received while its workflow is off never create a later call. The card status summarizes its triggers: The status comes from the recovery engine and reflects actual dispatch state.

Choose calling regions

Included states applies to every Revenue Recovery workflow. It includes all 50 United States and the District of Columbia by default.
Included states controls geographic outreach. The Do Not Call list suppresses individual phone numbers.

Exclude a state

  1. Expand Included states.
  2. Remove the states where outreach should stop.
  3. Decide whether hyzl can contact members with an unknown state.
  4. Click Save.
The unknown-state switch is on by default. Turn it off to hold members whose state hyzl cannot confirm. Use the state search or Select all and Deselect all controls. Settings refuses a configuration with no eligible states. An excluded member receives no recovery call, heads-up text, retry, offer text, or offer email. For Signs up, never pays, open Members and feedback. The member remains visible as Not contacted, with Outside included states beside it. Other recovery views can show the member as Parked without naming the geographic reason. hyzl checks the billing address first. Without one, it estimates the state from the phone area code. Area codes are estimates. A moved member, toll-free number, internet number, or nongeographic number can produce an incorrect or unknown state. The unknown-state switch controls unresolved members.

Manage the callback number

Settings shows the dedicated callback number after you connect a provider. hyzl provisions the number automatically, with no extra charge for the number. Inbound calls use the calling balance available to your account. The underlying receptionist settings control how the number answers. The callback number appears in voicemail and recovery texts. Members can call or text it when those features are available.

Supply business context

Knowledge Base stores the company identity, summary, support contacts, and approved answers used in recovery conversations. Leaving a support field empty is allowed. The AI then directs the member to reply in the conversation instead of inventing a route. Offer details do not belong in Knowledge Base. The active workflow supplies the exact discount, price, plan, and link for each member. Configure the Knowledge Base.
Integrations establishes the provider connection. Settings owns recovery behavior after the connection succeeds.