To move from Zendesk’s native bots to Fini, you rebuild each existing flow as either Fini knowledge or a Rulebook intent rule, connect Fini to Zendesk, run it in shadow mode (internal notes only) next to your current setup, then use Bot Routing to cut over one brand and channel at a time before turning the old bot off. Your customers stay in Zendesk the whole time, and your team keeps working in the same views. This guide assumes Zendesk stays your helpdesk. Fini reads incoming tickets and chats, replies on the brands and channels you map, and escalates to your team inside Zendesk.
To confirm (internal, remove before publish): Is there any tool or service for importing existing Zendesk bot flows into Fini automatically? The product docs don’t describe one, so this guide assumes flows are rebuilt (with help from Generate with AI). If Fini’s onboarding team does this as a service, say so here.

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.
Include the flows that hand off to a human immediately. Those handoffs often encode policy (for example, “always route chargebacks to the disputes team”) that you need to preserve in Fini.

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:
  1. Wire each Tool node to a real Action that calls your system.
  2. Check every Check predicate against your actual Tag Groups and User Attributes.
  3. Write a tight Description with example customer phrasings. The planner uses it to select the rule.
  4. Assign the rule to the right agents under Assigned Bots.
  5. Test with Suggested scenarios and ▶ Test Run before publishing. See Testing a rule.
The cancellation walkthrough shows a complete intent rule built end to end.

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.
Avoid having both the old bot and Fini post customer-facing replies on the same tickets. Customers get two answers, and your metrics stop meaning anything. Keep Fini on Internal Comment wherever the old bot is still active, or split traffic so each brand or channel has exactly one bot replying.

Step 7: Cut over brand by brand

When the pilot slice looks right in Inbox and passes its Test Suite sets, cut it over.
  1. Turn off the old bot for that slice in your Zendesk admin settings, so only one bot can reply there.
  2. 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.
  3. Send test tickets to the brand and confirm Fini replies after the configured delay, as described in Verify it’s working.
  4. Watch the first days closely in Inbox with Fini Touched set to Yes and Feedback set to thumbs down.
  5. Expand by adding the next brand under Select brands, or by mapping additional agents with + Add Bot, and repeat.
Once every brand and channel is on Fini, turn off the old bot entirely and review any Zendesk triggers, views, or reports that depended on it. Where they relied on tags, map the equivalent Fini output tags with Fini tags → Zendesk tags.
Cut over email and chat separately. Bot Routing maps agents to brands per channel, so you can move chat first, where feedback is fastest, and email after.

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.

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.