# Zoho

Nimbata's Zoho integration automatically sends call data to Zoho CRM, so you can create or update contacts and track the marketing sources that drive phone leads. When a caller is not in Zoho yet, Nimbata creates the modules you choose, such as a Lead. When the caller already exists, it updates the fields you map or logs the call against the record. A workflow decides which calls are sent.

**Before you start**

- Permissions: Zoho, under Integrations, in your Nimbata role
- A Zoho CRM account you can sign in to.
- The Nimbata project whose calls you want to send: the integration is set up per project.

## Connect Zoho

1. (1) **Open the Zoho integration**

   Go to **Integrations** and click **Go to integration** on the **Zoho** tile (1), or go straight to [Integrations > Zoho](https://app.nimbata.com/integrations/service/zoho).

   [The Zoho tile on the Integrations page, with Go to integration marked 1]

   *Open the Zoho tile (1).*

2. **Connect your Zoho account**

   - Click **Connect**.
   - In the pop-up, select the Zoho account you want to connect.
   - A confirmation message appears once connected.

## Configure Zoho

Each setup, such as **Zoho Settings 1**, has two sections: **Caller not found**, what Nimbata creates when the caller is not in Zoho, and **Caller found**, what it sends when they are. Zoho calls its objects modules, so the button under each section reads **Add module**. To send different calls to Zoho in different ways, click **Set up Zoho** to add another setup; each workflow picks the setup it sends.

1. (1) **Configure what happens when a new caller reaches you**

   - In the **Caller not found** section, choose whether to create a Lead, Contact, Account, Task, or Call Activity.
   - Then map the Nimbata fields (caller ID, UTM parameters, recording link, and so on) to the corresponding Zoho properties.

   [The Zoho Caller not found section: Create a Lead with Description (UTM Source, UTM Medium, UTM Campaign and GCLID), First Name, Last Name, Lead Source and Phone mapped, and Use Default Config marked 1]

   *Caller not found: a new Lead with its fields mapped. Use Default Config (1) fills in the recommended mapping.*

   > **Tip:** Click Use Default Config at the bottom of the section to auto-populate the recommended field mapping.

2. (1) **Configure what happens when an existing contact calls**

   - In the **Caller found** section, answer the two matching questions first: which entity to enrich when the Caller ID is found in more than one module (1: **Contact**, **Lead** or **All**), and how to handle duplicates when it is found more than once in one module (2: **Handle first**, **Handle all** or **Ignore all**).
   - Then define what call information is sent when a caller already exists in Zoho.
   - For example, log a Call Activity with duration, tags, and a recording link against the existing record.

   [The Zoho Caller found section: the entity question with Contact chosen, marked 1, and the duplicates question with Handle first chosen, marked 2]

   *Choose the entity to enrich (1) and how to handle duplicates (2).*

## Test the integration

1. **Send a test event**

   Click **Send Test and Save** to validate your configuration before going live. Fill in the test values, including a **Caller ID**, and click **Send event**: if the Caller ID is already in Zoho, Nimbata runs your **Caller found** actions, otherwise your **Caller not found** actions. Check Zoho for the record.

2. **Save the setup**

   Click **Save**.

## Send calls with a workflow

Which calls are sent is decided by a workflow with a Zoho action: a workflow that runs when a call ends, with no filter, sends every call, and its filters (for example call outcome or tracking number) narrow it down.

1. **Create a workflow**

   Go to **Workflows**, click **Create** and choose **From Scratch**. Keep the **Inbound Call** trigger with **Call Ends**, and add any filters you need.

2. (1) **Add the Zoho action**

   Click the **+** plus sign, select **Perform action**, and choose **Zoho** under **Integrations**. Pick your setup under **Select configuration** (1), then click **OK**.

   [The Zoho pop-up of the workflow builder, with the Zoho Settings 1 setup selected and marked 1]

   *Pick the Zoho setup to send (1), then click OK.*

3. (1) **Enable the workflow**

   Click **Enable** (1).

   [A workflow firing on Inbound Call, Call Ends, with a Zoho action sending Zoho Settings 1, and the Enable button marked 1]

   *The workflow sends every inbound call to Zoho when it ends. Click Enable (1).*

Detailed guide: [Create a workflow](https://help.nimbata.com/workflows/workflows#create-a-workflow)

## Check it worked

The Zoho page now shows the workflow that uses the integration. Place a test call to one of your tracking numbers: once it ends, the record appears in Zoho CRM.

[The connected Zoho integration, used in 1 workflow, with Zoho Settings 1 used by the Zoho calls workflow]

*The page shows Used in 1 workflow, and the setup lists the workflow that sends it.*

🎉 Done! Each call that meets your trigger criteria is automatically logged in Zoho CRM.

## Troubleshooting

### The Zoho tile says Disconnected

Nimbata has lost its connection to Zoho. Your Zoho settings are saved, but nothing is sent until you reconnect: open the integration and click **Reconnect** in the red **Disconnected.** banner.

[The Zoho tile on the Integrations page with a red Disconnected badge]

*A disconnected integration shows a red Disconnected badge on its tile.*

### Send Test and Save is greyed out

- Connect Zoho first: the button stays off until the integration is connected.
- Map at least one field under **Caller not found** or **Caller found**.
- If the test answers "Please provide a valid caller id", fill in the **Caller ID** box in the test panel.

### Calls are not reaching Zoho

- Check that a workflow with a **Zoho** action is enabled, and that its filters let the call through.
- Check that the workflow's Zoho action uses the setup you configured, under **Select configuration**.
- Check that the Zoho tile does not say **Disconnected**.
- Send a test from **Send Test and Save** to see the error Zoho returns.
