The migration at a glance
Step 1: Inventory your existing flows
Before you build anything, write down what your current bot does. For each flow, capture:
Sort the list by volume. The top handful of flows usually carry most of the traffic, and they are where you should start.
Step 2: Map each flow to its home in Fini
Fini splits what a bot “flow” usually bundles together into separate layers. Map each row of your inventory to one of them.
If a flow exists only to work around a limitation of the old bot, drop it rather than rebuilding it.
Step 3: Build the knowledge layer
Most bot flows are really answers to questions. Move that content into Fini’s knowledge model first, because every intent rule falls back to knowledge when it doesn’t fire.1
Ingest your Zendesk help center
In Sources, click + Add Sources and pick Zendesk help center. Authorize, enter your subdomain, and select the articles to ingest. This connection is read-only and separate from the Deploy → Zendesk connection you set up later.
2
Add the content that lives in bot replies
Answers written directly into old bot steps often exist nowhere else. Paste them into Magic Articles with Suggest for Review selected and all three Generation Actions enabled, so Fini can create, update, or flag duplicates.
3
Generate and review articles
Run bulk generation from your Sources, then work through the drafts in Review. Resolve conflicts between old bot answers and help center articles here, before anything goes live. See How Fini handles messy or conflicting docs.
4
Scope knowledge per brand
If different Zendesk brands need different answers, create one Fini agent per brand and assign folders to each in Articles. Don’t duplicate articles to scope them.
Step 4: Rebuild workflows as intent rules
For each flow you mapped to an intent rule, open Rulebook → Intent Rules and click Generate with AI. Paste the flow’s steps from your inventory into Behavior Instructions, or upload a screenshot or export of the flow diagram (PNG, JPG, JPEG, or PDF up to 10MB) under Upload Workflow Diagram. Fini drafts a behavior tree you then refine. After generation:- Wire each
Toolnode to a real Action that calls your system. - Check every
Checkpredicate against your actual Tag Groups and User Attributes. - Write a tight Description with example customer phrasings. The planner uses it to select the rule.
- Assign the rule to the right agents under Assigned Bots.
- Test with Suggested scenarios and ▶ Test Run before publishing. See Testing a rule.
Step 5: Connect Zendesk
Follow Deploy → Zendesk to authorize the integration with a Zendesk admin account. That page lists what Fini creates in your Zendesk account and covers Bot Routing, Reply Settings, and Fini tags → Zendesk tags in detail. For a migration, two choices matter at this stage:- Bot Routing: in Email Bot and Brand Mapping and Chat Bot and Brand Mapping, map your Fini agent to the one brand you want to pilot first. Leaving Select brands empty means the agent responds on every brand on that channel, which is not what you want during a staged rollout.
- Reply Settings: a response delay gives your team a window to pick up a ticket first while you build confidence.
Step 6: Run in shadow mode and test
Before Fini replies to a single customer, run it in shadow mode: the agent posts an internal note with the reply it would have sent, and your team sees it alongside the old bot’s behavior.1
Turn on internal notes only
In Rulebook → Reply Rules, enable an Internal Comment rule that matches the brand or channel you are piloting (for example,
Integration Provider Equals zendesk). Internal notes are customer-invisible. Reply Rules hold only the reply: Tools in published intent rules still run, so point write Actions at a sandbox or keep those rules unpublished until cutover. See Reply Rules.2
Keep Fini out of human-owned tickets
Add a No Reply rule for
Human Agent Assigned Equals True and, on Zendesk, Escalated Conversation Equals True. No Reply always wins over the other cards.3
Compare answers in Inbox
Every Zendesk ticket Fini sees is mirrored in Inbox, with the full AI Steps trace. Review Fini’s drafted replies against what the old bot and your team actually did. Mark replies with thumbs up or down and leave Feedback notes.
4
Fix what's wrong
Use Refine with AI on wrong replies, then Replay the conversation to confirm the fix.
5
Build a regression set
Add your best and worst pilot conversations to a Test Suite set with + Add from inbox. Run it after every change during the migration.
Step 7: Cut over brand by brand
When the pilot slice looks right in Inbox and passes its Test Suite sets, cut it over.- Turn off the old bot for that slice in your Zendesk admin settings, so only one bot can reply there.
- Switch Fini to direct replies for that slice by disabling or narrowing the Internal Comment rule. A Direct Reply fires when no higher-priority card matches.
- Send test tickets to the brand and confirm Fini replies after the configured delay, as described in Verify it’s working.
- Watch the first days closely in Inbox with Fini Touched set to Yes and Feedback set to thumbs down.
- Expand by adding the next brand under Select brands, or by mapping additional agents with + Add Bot, and repeat.
Step 8: Measure the result
Compare your old bot’s results against Fini on the same brand and channel using AI resolution rate rather than deflection, since deflection counts conversations still waiting on the customer. Measure your resolution rate explains how to set up a fair before-and-after comparison.Related
Zendesk
Connect Zendesk, map bots to brands, and configure reply settings.
Intent Rules
Build deterministic workflows as behavior trees.
Reply Rules
Run in shadow mode and control when the agent replies.
Best practices for testing
A testing playbook for before and after cutover.

