Recipe: Graceful Handover to a Team
A complete configuration that takes a stack from “the AI hands off whenever” to “the AI gathers what’s needed, hands off cleanly, and behaves correctly outside business hours.” Use this when you have one destination team and want a polished customer experience.
What you’ll end up with
- Handover mode:
explicit_team— the Fixed team card on the Delivery tab (single destination team). - Three prerequisites: the built-in contact Email (always required), an order ID (only when the conversation is about an order), and a description of the issue (always required).
- Outside-hours: email follow-up offered, no close-and-reach-out-later. Confirmation before handover left off — that toggle is not an outside-hours option, it applies to every handover.
- A handoff message tone that matches your personality preset.
Before you start
- The stack and at least one specialist are configured.
- The destination team exists in Settings → Teams with members assigned and Opening Hours set.
- A conversation custom field for the order ID exists. This one is required, not optional: the only built-in conversation field the picker offers is Subject, and the only built-in contact fields are Email and Phone — everything else has to be a custom field you create first. See Custom Fields.
Build the configuration
1. Turn on handover and pick the team
- Open Settings → Agent Stacks → [stack] → Handover → Triggers.
- Toggle Allow handover to humans on.
- Switch to the Delivery sub-tab.
- Under Choose where conversations get handed off, select the Fixed team card. (The three cards are Never, Fixed team and AI picks — there is no “Mode” dropdown.)
- Which team? — pick the destination team from the combobox. Save stays disabled until you do.
- Handover instructions (optional): leave blank or add a tone-shaping rule like “Apologize once for any wait if the conversation is more than 5 turns old, then hand off without further apology.”
2. Add prerequisites
Switch to the Prerequisites sub-tab and use Add requirement three times — once per requirement, filling in the panel and clicking Save each time:
- 1 — Email — the built-in Contact (CRM) field — Always required — Ask for the email address on the customer’s account.
- 2 — your order-ID conversation custom field — Only when… “the conversation is about a specific order or transaction” — Ask which order number this is about.
- 3 — your issue-description conversation custom field — Always required — Ask for a one-sentence description of what’s not working.
Use the last column to describe what the AI should collect, not as exact customer-facing copy — that text is never sent to the customer. The live customer question is generated from the field’s name, in the customer’s language, so it won’t match this wording.
Email and Phone prerequisites save to the contact’s addresses and require well-formed values, such as a valid email address or phone number.
Reorder if needed using the up/down arrows. The AI will check each one in order before handing off.
3. Configure outside-hours behavior
Still on the Delivery sub-tab:
- Check opening hours before handing over: on (it ships off)
- Offer email follow-up: on (default) — nested under the hours checkbox, so it only appears once that is on
- Offer to close and reach out later: off
- Ask the customer to confirm before handing over: off. This one sits outside the hours block and applies to every handover, in hours or out — it is not an outside-hours option.
This means: during business hours, the AI hands off seamlessly. Outside hours, the AI offers the customer email follow-up as a choice; if they take it, the handover is committed to the team then and there, and on webchat a confirmation link is sent to the address they gave so the team’s eventual reply can go out by email.
4. Save and test
- Click Save on the Delivery sub-tab.
- Test in a real conversation — for example the web chat widget — and send a message that should trigger handover: “I want to talk to a human about my order #12345.”
- The AI should ask for the account email (and accept the order number you already provided), then briefly ask for the issue description.
- Confirm the prerequisites are gathered before the handover commits: the conversation should only be assigned to the team, with the AI switched off, once nothing applicable is missing.
The Testing tab is not the place for this check. A test run skips the entire handover step — the prerequisite gate, the outside-hours and confirmation deferrals and the commit itself all no-op in test mode — so the stack will never ask for a prerequisite there, and no handover state is written.
Verify it worked
- The Prerequisites tab lists exactly three rows.
- The Delivery tab has the Fixed team card selected and your team in Which team?.
- In a real conversation, the AI asks for missing prerequisites in the order you listed them.
- Outside-hours check (close the team’s hours temporarily, or test against a closed team) offers email follow-up rather than handing over immediately.
Variations
- Two-team setup with topic-based routing: switch to the AI picks card (
by_description), give each team a description — that is what the model routes on — and use Handover instructions to steer the choice further. - More prerequisites for high-value customers: add a fourth prerequisite on a loyalty-tier custom field, set to Only when… “the customer has not provided one”, to capture context the human will want.
- Strict consent: turn Ask the customer to confirm before handing over on if your team prefers customers to opt in explicitly before being transferred.
Troubleshooting
- Symptom: The AI sometimes hands off without asking for the email. Fix: the gate is not best-effort — on the stack’s own handover path a missing applicable prerequisite blocks the commit and the AI asks for it instead. Handovers that skip the gate come from elsewhere: an automation rule running the Hand over to a human (turn off Agent Stack) action calls the handover directly, and so does a system stand-down when the AI cannot reply at all. Check your automation rules before re-editing the prerequisite.
- Symptom: Outside-hours fires during business hours. Fix: double-check the opening-hours rule that resolves for that team and channel, including timezone. Hours are resolved per team and channel; a team with no assignment for the channel falls back to the tenant default, and with no default at all the slot counts as open. See Opening Hours.
- Symptom: Handover triggers but nobody picks the conversation up. Fix: confirm the destination team still exists and has at least one available member. If the team was deleted the stack’s team reference is cleared, and the stack then has no reachable team — the AI keeps helping instead of transferring, and an error is logged for you to fix the routing.