Skip to main content

Building Fin Procedures

How to build structured, reliable Fin Procedures with steps, tools, and guidance.

Updated yesterday

Fin Procedures let you design clear, repeatable flows that guide Fin through handling complex queries. You define the structure using Steps, extend Fin’s abilities with Tools, and shape its behavior with Guidance.

Whether you’re collecting information, branching logic, connecting to external systems, or handing off to teammates, Procedures give you full control over how Fin handles a conversation from start to finish.

Note: Fin Procedures is currently in managed availability. Access is limited during this period and available only to select customers with a contract. Please contact your account manager to confirm eligibility and learn how to join.


Get started

To build a new Fin Procedure, navigate to Fin AI Agent > Train > Procedures in your workspace. Click + New procedure and choose your preferred creation method:

Option 1: Let AI draft your procedure

This is the fastest method if you already have a process in mind or documented.

  1. Select Let AI draft your procedure.

  2. Choose your starting point:

    • Describe your process: Write your process in natural language. You can also paste an existing Standard Operating Procedure (SOP) directly into the text box to give the AI more context.

    • Choose a template: Select an industry-specific template (e.g., SaaS, Ecommerce, Fintech, or Gaming) and pick a common scenario, like "Cancel or pause a subscription".

  3. Click Continue. Fin will then analyze your input and ground the draft in your workspace context by searching through your past customer conversations, existing documentation, and Data Connectors.

  4. Answer the clarifying questions to help Fin flesh out specific logic and instructions. While these are optional, providing this information ensures a more accurate draft.

  5. Review the generated steps and to further improve the draft.

Option 2: Create from scratch

Use this method if you want to build a Procedure manually.

  1. Select Create from scratch.

  2. Name your procedure and enter the editor to begin adding steps manually.

Tip: Read our quick start guide to create your first Fin Procedure.

Tell Fin when to use this procedure

At the top of the editor, you'll find the When to use this procedure section. This is crucial to telling Fin exactly when to utilise this Procedure. To ensure Fin triggers only when intended, you must provide clear trigger logic and high-quality conversation examples. These two components work together to improve reliability and reduce false positives.

1. Write the 'When to use this Procedure' logic

Describe exactly when this procedure should (and should not) start. A strong trigger includes specific criteria and exclusions.

Example of high-quality trigger logic:

When to trigger this procedure: Trigger this procedure when a customer reports that the software is not working correctly or is behaving unexpectedly.

Inclusion criteria (Trigger if):

  • The customer describes a specific technical problem or error.

  • The customer states that a feature is broken.

  • The customer mentions a bug, glitch, or malfunction.

Exclusion criteria (Do NOT trigger if):

  • The customer is requesting a new feature.

  • The customer is asking account-related questions (e.g., password resets).

Clear, comprehensive triggers ensure Fin activates your procedure for the right customer intents and avoids firing for unrelated queries.

2. Train Fin with examples

Once you have written your logic provide conversation examples to Fin.

  • Click the Train Fin on examples button.

  • When to use: Provide examples of phrases or scenarios where this procedure is appropriate.

  • When NOT to use: Provide examples of similar but unrelated queries to prevent false triggers.

Note: These examples are crucial for training the AI to distinguish between a "password reset" and "general login policy info" .

Add instructions to the procedure

You can tell Fin what to do when the procedure is triggered by writing instructions. On top of these instructions you can also add deterministic controls that give Fin more powers - such as conditions, or even tools to enable Fin to access external data, update attributes.

  • Steps define the flow. You add them by typing / on a new line.

  • Tools give Fin powers (like checking APIs). You add them by typing @ inside an Instruction step.

Feature

What it does

When to use it

Instruction

The default block. Plain natural language instructions.

For almost everything. "Ask the customer for their email."

Condition

Adds branching logic (IF / ELSE).

Use for major, mutually exclusive paths that significantly change the flow (e.g., "IF the item is broken, do X. ELSE do Y.").

For small variations or minor clarifications, use natural language Instructions instead of branching. This keeps your procedures simpler and allows Fin’s AI to handle the conversation more naturally.

Run Sub-procedure

Runs a sub-procedure.

To reuse a common flow (e.g., "Verify Identity") without rewriting it, or a complex flow you would like to hide from the main flow.

End

Ends the Procedure immediately and passes back to Fin.

Use this to stop a Procedure once a specific goal or logic condition has been met, ensuring Fin doesn't continue following the procedure steps.

Connect with system

Fetches live data from connected apps (Shopify, Stripe, etc.).

Inside a step when you need to check an order status or balance.

Read an attribute

Looks up existing customer data.

Inside a step to check a user's plan or ID.

Update an attribute

Saves information the customer gave you into an attribute

Inside a step to remember an answer for later.

Escalate to team

Intentionally hands the conversation over to a team or teammate.

Inside a step when the bot can't solve the issue. This follows the escalation path defined in the workflow following the Fin block that is defined in the Deploy section.

Important:

  • No nesting: You cannot nest Condition steps inside other Conditions.

  • Single logic type: You cannot mix code and natural language conditions within a single step.

  • Unsupported attributes: Attributes like dates or decimals cannot currently be referenced in conditions.

Sub-procedures

  • Reuse: You can reuse a sub-procedure multiple times within the same parent procedure.

  • Scope: Sub-procedures are currently local and cannot be called by other unrelated procedures.

Add guidance

Give Fin specific guidance on how to interact with customers while running a procedure. To add guidance, open a Fin Procedure and click Guidance in the top right corner of the Instructions editor.

Choose which workspace level guidance should apply to this procedure. Fin will combine all selected guidance:

  • Communication style

  • Context and clarification

  • Handover and escalation

  • Other guidances

You can also write custom procedure-specific guidance that apply only to this procedure. Fin will combine this with any workspace level guidance you selected. For example: "Never bring up a refund unless a customer mentions it first."

Test and verify the procedure

Before you set your procedure live, you must verify that it works as intended. Click the Test button at the top of the editor to access two testing methods:

Preview

The Preview tab allows you to interact with Fin as a customer would. Use this to get a feel for the tone, greeting, and general flow of the conversation.

Simulations

The Simulations tab allows you to automatically test different logic paths within your instructions. This gives you confidence that Fin will behave as intended before you launch the procedure to real customers.

Choose a simulation type:

  • Happy path: Fin's AI automatically suggests a standard scenario to help you get started quickly and see how the feature works.

  • You can also create Custom Simulations: Create specific scenarios to test edge cases or technical integrations by defining:

    • The context: Set the opening customer message and how the conversation should proceed.

    • Mock data: Define custom inputs and mock Data Connector responses to simulate how Fin handles live data (e.g., a "Payment Failed" response from Stripe).

    • Success criteria: Specify the exact outcomes you expect, such as which tools should be triggered or what information Fin must provide.

Run and review:

Run the simulation to watch Fin execute your steps, trigger the mock APIs, and follow your logic.

  • Pass: The simulation met all defined criteria.

  • Fail: The simulation failed. Click into the simulation to see exactly where Fin deviated from the instructions.

Once you are satisfied with the results, click Set live to make the procedure available to your customers.

Did this answer your question?