Configure Handover for an Agent Stack
Handover is how the AI gets out of the way and lets a human take over. By default a new stack has handover off (never). This walks you through turning it on, picking a team, and setting up what the AI collects before handing off.
Before you start
- The stack must exist with at least one specialist.
- The team that should pick up handed-off conversations must exist (Settings → Teams). If it doesn’t, create it first.
- Decide what information the AI must collect before handoff (account email, order ID, etc.). You can add more later.
Steps
1. Turn handover on
- Open Settings → Agent Stacks → [stack] → Handover.
- On the Triggers sub-tab, toggle Allow handover to humans on.
- The handover mode flips from
nevertoby_descriptionautomatically. The Prerequisites and Delivery sub-tabs become enabled.
2. Pick a delivery mode and team
- Click the Delivery sub-tab.
- Choose a handover mode:
By description (default) — the AI picks a team based on conversation context. Best when you have multiple teams covering different areas.
Explicit team — every handover goes to one team. Pick the team from the dropdown. - (Optional) Add Handover instructions — free-form text that augments the AI’s prompt when deciding how to hand off. Examples: “Mention loyalty status if the customer is Gold or Platinum,” “Always tell the customer the human’s first name.”
- Configure Outside opening hours behavior:
Toggle Check opening hours on if you want the AI to behave differently when the destination team is closed.
If on, pick which outside-hours options to offer: Email follow-up (default on), Close and return, Ask confirmation. - Toggle Ask confirmation before handover if you want the AI to confirm with the customer before queueing them (“Want me to connect you with a human?”). Some stacks prefer to surprise-confirm; others prefer the customer’s explicit consent. If Check opening hours and Email follow-up are also enabled, a confirmation that happens while the team is still closed becomes an email follow-up path; live handover is only used if the team has reopened by the time the customer confirms.
- Click Save.
3. Add prerequisites (the information the AI must collect)
- Click the Prerequisites sub-tab.
- Click Add requirement.
- Fill in the form:
Field — pick a conversation field or a contact field. The collected value will be saved there.
Label — what to call this field. Keep it concise, because this label appears inside the generated customer-facing request.
Ask prompt — describe what information to collect for the operator or configuration. Atender uses this to compose the actual localized question for the customer.
Condition —Always(every handover requires this) orWhen(only required when a stated condition is met, like “the customer is asking about a refund”). - Save the requirement.
- Add as many as you need. Use the up/down arrows to reorder; the AI checks them in this order.
Verify it worked
- Open the Testing tab.
- Send a message that should trigger handover (“I want to talk to a real person”) or wait for the orchestrator to detect a stall.
- Watch the AI ask for any missing prerequisites in turn.
- Once everything is collected, the conversation should move to
handover_pending, then to the destination team’s queue (you’ll see this on the live channel; the testing tab simulates the flow). - If the handover cannot be resolved after repeated attempts, the normal fallback depends on the handover mode. With
by_descriptionorexplicit_team, the handover still commits so a human can take over; if no team can be resolved, the conversation appears as unassigned rather than returning to AI. Withnever, AI stays on and the fallback apology can still be used.
Recipe: a simple two-team setup
A common pattern for stacks with two destination teams:
- Set Handover mode to By description.
- Add Handover instructions: “Route billing questions to the Billing Team. Route everything else to General Support.”
- Add prerequisites: account email (always), order ID (when the conversation is about an order).
- Turn on Check opening hours with Email follow-up as the outside-hours option.
Troubleshooting
- Symptom: Toggling handover on does nothing visible. Fix: the page is async — wait a moment for the toast. If no toast appears, refresh and confirm the toggle stayed on.
- Symptom: The AI hands off to the wrong team. Fix: if you’re using By description, sharpen the Handover instructions with specific routing rules. Also check whether the web chat or pre-chat survey collects the routing-critical fields, such as installation country, because those answers are used by
by_descriptionrouting. Handover instructions still steer team selection, but customer-stated pre-chat details take precedence over inferred language or page-market signals. If using Explicit team, only one team is possible — check the dropdown. - Symptom: Handover triggers before all prerequisites are collected. Fix: prerequisites are best-effort. The orchestrator can still trigger handover under risk-escalation logic if the customer is upset enough. To force every handover to wait, mark every prerequisite as
Alwaysand remove anyWhenconditions. - Symptom: The specialist response fails guardrails and the AI stops answering. Fix: this is the safety-net behavior for human handover. If a specialist response fails guardrails twice,
by_descriptionandexplicit_teamstill commit the handover so an operator can review the conversation. If Atender cannot resolve a destination team, the conversation appears as unassigned instead of returning to AI. The exception isnever, where AI stays on and the fallback apology can still be shown. - Symptom: Outside-hours behavior never fires even though the team is closed. Fix: confirm the destination team has Opening Hours configured. The AI checks the team’s hours, not the tenant’s. See Opening Hours.