Fin handover is platform-agnostic and works with any support system that accepts a URL redirect, live chat widget, or API call. This includes platforms like HubSpot, ServiceNow, SugarCRM, CrashDesk, and more.
You can configure this handover from your Fin workspace in three powerful ways:
Redirect to a ticket form (or support URL)
Redirect to another live chat widget
Create a ticket using Data connectors
These flexible options make it easy and seamless to route customers to the right place, no matter what platform you use for customer support.
Note: These handover methods are intended for use when Fin is deployed on platforms other than Intercom, Zendesk, or Salesforce.
Redirect to a ticket form (or support URL)
Customers are redirected to a different URL where they can submit a ticket or find further help.
Customer experience
Customer requests to talk to a person.
Fin displays a handover message and redirects them to your chosen URL (e.g., a ticket form, help center, or support page).
To configure this in Fin
Go to Deploy > Fin Messenger in your Fin workspace.
Open or create your Fin Messenger workflow.
After the Let Fin answer step, add an action to Hand-off to URL.
Paste the full URL of the destination (e.g., a ticket submission form or help center).
Tip: This is the quickest way to handover from Fin to another system (no coding required).
Redirect to a different live chat widget
Customers are seamlessly switched from Fin to another live chat widget on your site.
Customer experience
Customer requests to talk to a person.
Fin displays a handover message then hides its Messenger and the external live chat (e.g., HubSpot) loads instantly.
The customer continues chatting with a human agent via the other widget.
To configure this in Fin
Go to Deploy > Fin Messenger in your Fin workspace.
Open or create your Fin Messenger workflow.
After the Let Fin answer step, add an action to Hand-off with JavaScript.
Implement a JavaScript function on your website that:
Closes the Fin Messenger.
Opens your desired chat widget (e.g., HubSpot’s chat).
Note: You’ll need developer support to set up the JavaScript logic that switches between widgets. Learn more about hand-off with JavaScript.
Create a ticket using Data connectors
Use Fin’s Data connectors to create a ticket in your support system, automatically passing over conversation data.
Customer experience
Customer requests to talk to a person.
Fin prompts for their email address to identify them in your support system.
A ticket is created behind the scenes.
The customer receives a confirmation message with a ticket ID and a follow-up email.
To configure this in Fin
1. Collect the user’s email
Before you hand over to your ticketing system, you’ll need to collect the user's email in the Fin Messenger so you can follow up later.
Note: If you're already passing the user’s email via the JavaScript SDK (e.g., for logged-in users), they won’t be asked to re-enter it.
Once you have their email, you can use Data connectors to:
Look up the contact in your ticketing system.
Create a new contact if none exists.
2. Create a Data connector for contact lookup
In Settings > Data connectors, create a connector to find contacts by email, e.g. "Find existing contact".
You should always verify the user actually owns the email address they provide. You can verify ownership in two ways:
Messenger identity verification: For logged in users, you can pass the user’s email via the JavaScript SDK, signed by JWT.
Email verification: Fin will email a code the user/lead must enter to continue.
3. Configure the contact lookup
Use the user’s email in the API call to search your ticketing system. The example below searches for the user by the email they provided using a GET request (your ticketing system will have it’s own API and response formats).
Once you've created the Data connector, add it to your Fin Messenger workflow by adding a new step and selecting Data connector.
You’ll see that it indicates you're using the user’s “Email” field from the Messenger, and that the response provides access to an “Id” field from the external system. The specific data returned in the response will vary depending on the system you’re connecting to, but the concept remains the same.
4. Handle failed contact lookups
In case the Data connector fails (e.g. it returns a 404 error), you should also set up a separate "Create New Contact" Data connector.
The workflow below passes just the user’s email to the "Create New Contact" Data connector, but you could choose to send more data like the user’s name if you have collected it earlier in your workflow.
5. Create a new ticket
Once you’ve found or created the contact, set up another Data connector to "Create new ticket".
You’ll need the contact ID from the previous Data connector to find the user. In the “Collect data inputs” section, add a new input for the contact ID.
Note: You may require multiple data inputs here. You can add as many as you need.
Use the data inputs to build your request body. In the example below, we’re using the built in {{ conversation.transcript }} attribute to send the entire conversation from the Fin Messenger into the external system. Depending on your ticketing system, you may want to add this data as a “Note” or an “Internal Comment”.
6. Map action inputs in your workflow
When you add the "Create new ticket" Data connector to your workflow, you need to tell it what to use as the contact ID (along with any other data you defined as data inputs).
To do this, click the ellipsis in the workflow step and select Map action inputs.
You’ll be presented with a list of input fields like this:
Click the attribute inserter icon {..} to view a list of available data. Any outputs from Data connectors you’ve used earlier in the workflow will appear here.
In the example below, we're using the example_external_id
returned by the "Find existing contact" Data connector.
7. Add a fallback in case of API failure
Finally, you need to set up a fallback if the Data connectors fail (e.g. if there's an outage on the ticketing system).
For this, we recommend adding a step to your workflow that asks the user to email you directly, or links to a form they can fill out.
Wrapping up
✅ You’ve created Data connectors to your ticketing system to handle finding a user and creating a user.
✅ You’ve enabled email verification for the email address collected from the user in the Fin Messenger.
✅ You’ve configured your workflow to create a ticket on behalf of the user in your ticketing system, and you’ve provided the conversation transcript in the new ticket so agents have context when they pick up the ticket.
✅ You’ve also set up paths to handle scenarios where calls to the ticketing system API fail.
FAQs
Can I give customers a choice between handover options?
Yes, but it’s typically better to choose one consistent method to avoid confusion. The choices displayed in the customer experience examples above are simply for demonstration purposes.
Which handover method should I use?
If you want a fast, low-code setup, use a URL redirect. For seamless live chat handoff, use JavaScript. For full data sync and automation, use Data connectors.
Do I need a developer to implement this?
Hand-off to URL: No
Hand-off with JavaScript: Yes
Data connectors: Usually yes, especially for API setup