Webhooks | Online Help - Zoho CRM

Creating Webhooks

Webhooks facilitates communication with third-party applications by sending instant web notifications every time an event occurs in Zoho CRM. With Webhooks, you can configure HTTP URLs and associate them in workflow rules to automate the entire notification process. For general information about Webhooks, please refer to webhooks.org.

Scenarios

  • After closing a deal in Zoho CRM, you can push the customer information to Accounting software (e.g. Zoho Books) and automatically generate an Invoice for the Customer.
  • You can add subscribers to the mailing list in Email Marketing software (e. g. MailChimp) based on leads or contacts collected from your Website using Zoho CRM's Web forms.
  • You can trigger SMS reminders to field sales reps about customer meetings, demos and other events.
  • You can generate an estimate in your Accounting software (e.g. Zoho Books) as soon as the opportunity stage is changed from Prospecting to Price Quote.
  • After closing a deal in Zoho CRM, you can automatically calculate the commission for Sales Reps in Sales Commission Application built over Zoho Creator.

Target Audience

  • CRM Users with Manage Workflow permissions
  • Programmers with REST API skills
Availability
Permission Required
Users with Manage workflow permission in their profile can access this feature.



List of Fields in Webhook

Field Name
Description
Limits and Data Type
Name
Specify name of the webhook.
Alphanumeric (100)
Description
Add a description for the webhook.
200 characters
Method

Select type of API method - POST, GET,  PUT, and DELETE .

  • POST allows you to enter the values in the fields of the associated application.

  • GET allows you to retrieve information to update in the fields of a record in Zoho CRM 

  • PUT updates the existing value in the associated application.

  • DELETE deletes the existing value in the associated application.

 

Note: By default, system will select the POST method.
Picklist
URL to Notify
Specify the REST API URL of the third-party application.
300 characters
Authorization Type
Select the desired Authorization type - General ( includes API Key or AUTH Token)  and Connection (OAuth, API Key, etc..)
Radio Button
Connection

If Connection is selected, then you can choose the appropriate connection from the list.

 

Note: The connection option will only list the existing active connections. Either choose an existing connection or create a new one. Read more about connections
Radio Button
Module

Choose one of the Zoho CRM modules.

Supported Modules:

  • CRM primary module, such as leads, accounts, contacts, deals, etc.
  • Meetings and Tasks

Note: You can not set up webhooks for Call Logs and Notes modules.

Picklist
Header

Note: URL Parameters - A URL consists of information on the trigger between Zoho CRM and other applications. The information trigger in a webhook URL is typically classified as Header and Body.

Parameters added to the header section will have data that will synchronize with the header of other application. In addition to the trigger information, header can customarily carry API Keys/ Auth tokens.To form the Header URL parameters, choose Module Parameters and/or custom parameters.


Header Limit: A webhook can accommodate up to 10 Header URL Parameters.
Module Parameters

Specify the Parameter Name, Parameter type, and corresponding Parameter Value. Add multiple parameters to build the string. This format is dynamic, and the CRM gives you the options to choose the field values from the picklist.

Parameter Type includes 

  • CRM primary modules

  • Users

  • Organization

-
Custom Parameters
Specify the CRM Parameter Name and corresponding value for the webhook. The name and the value are as configured. Because the value in custom parameter is static, this key/value pair is mainly used to send the Auth tokens, security tokens,API key, etc..

Body

The Body part of the URL contains information in the URL string about the trigger to other application. You can choose to use Form-Data or Raw from the picklist, to configure the body part of the URL.

Form-Data: It allows you to build the body part of the URL by simply appending together, Parameter name,and Parameter type or Parameter Value.You can build Form-Data in 3 ways - Module Parameters, Custom Parameters, and User-Defined Parameters.

User defined parameter: Specify the Parameter name and the parameter value. This format is also dynamic, with the ability to choose the type of value from the insert merge field option using #

Raw Data: Apart from forming the parameters, you can also write your own data values in the text editor if you select the option Raw Data as body type. You can input data in either of the following formats XML, JSON, HTML, or TEXT.You can also use the # merge field feature to denote a field value within the script.

 


Raw Data Limit: A webhook can hold up to 15000 characters in the raw data text editor.
Preview URL
Preview URL displays the complete webhook URL with header and body components. To preview the configured URL and the updated / added connections

Click the Refresh icon in the bottom of the text editor, You can also copy the URL.
Read-only 
Notes: 
  1. If the Request Method is selected as POST or PUT, then the configuration types - Header and Body appears.
  2. If the Request Method is selected as DELETE, then the header and Form-Data of the body configuration appears.
  3. If the Request Method is selected as GET, only the body of the configuration type in form-data format, appears.

Set Up Webhooks

Setting up Webhooks includes the following three steps:

  • Create a webhook.
  • Associate webhook to a workflow rule.
  • Test webhook integration.

To create a webhook

  1. Go to Setup > Automation > Actions > Webhooks.
  2. In the Webhooks page, click Configure Webhook.
  3. In the New Webhook page, specify all necessary parameters.
  4. Click Save.

Recognize Unsupported Merge Field Values

Sometimes you may notice that the merge field values you have used in the Value Description editor of your webhook now get displayed as ${Unsupported_Field}. Following are some of the reasons why this happens.

Custom field deleted

The merge field whose value you have inserted has been deleted. If your webhook's Value Description editor continues to contain the merge field value of a deleted field, that value will be displayed as ${Unsupported_Field}.

Custom look-up field deleted

The custom look up field whose value you have inserted has been deleted. If your webhook's Value Description editor continues to contain the merge field value of a deleted look-up field, that value will be displayed as ${Unsupported_Field}.

Field not listed in the list of Available Merge Fields

If you have used the merge field value of a field that is not among the list of available merge fields for the selected module, then it will be displayed as ${Unsupported_Field}.

For example, if you insert the merge field value ${Leads.Lead Id} in the Value Description editor for the Deals module, it will get displayed as an unsupported field.

Integrations/Features disabled

When a feature or integration has been disabled for your account, the fields that were created as part of the integration will also not be available for the account post the deactivation. If a merge field value of such a field has been inserted in the Value Description editor, it will be displayed as ${Unsupported_Field}. This is applicable to the following features/integrations.

  • Google Ads Integration - Google Ads fields that are no longer available will not be supported.
  • Visitor Tracking (Zoho SalesIQ Integration): Visitor Tracking fields that are no longer available will not be supported.
  • Territory Management - Fields that are no longer available will not be supported.
  • Multicurrency - Currencies that have been deactivated will not be supported.

To associate webhook to a workflow rule

  1. Go to Setup > Automation > Workflow Rules
  2. In the Workflow Rules page, click the Create Rule.
  3. In the Create New Rule page, specify workflow rule parameters.
  4. Under Workflow Actions, select webhooks.
  5. In the Call Webhook popup, select the required webhook and click Associate.
  6. Click Save.

To test the webhook integration

  1. Add test data in CRM according to your workflow rule criteria.
  2. In your application check for the data received from Zoho CRM via webhook notification.
  3. If there is an error or data mismatch, modify your webhook settings in Zoho CRM.
  4. Continue this test until you obtain the required data from Zoho CRM to your Application.

Important Notes

  • You can associate up to 6 (1 Instant Action and 5 Time-Based Actions) webhooks per workflow rule.
  • You can transfer data for a maximum of 10 CRM fields from Zoho CRM to third-party applications using webhook.
  • You cannot retrieve data from other Apps to Zoho CRM using webhooks.
  • You must update the API ticket regularly according to limits in third-party applications.
  • You will not receive any email notification, if the Webhook integration stopped functioning due to any issue in a third-party API.
  • In webhooks, we allow maximum 10000 characters for user defined format, while using the POST method.
  • If there is any failure in the process, Webhook will send a notification first, Zoho CRM system will send a second notification after 15 min. Thereafter, the system will not send any Webhook notifications for that particular workflow trigger.
  • If you exceed the maximum count per day, the system will not send remaining Webhook notifications to third-party applications and will notify the failure to Administrator.
  • In the URL to Notify field, if you want to specify a port number, please note that only 80 or 443 port numbers are supported.
  • Zoho CRM gives an option to select the required Date/Date Time format and Time Zone during Webhook param configuration.
  • Limits for Webhooks:
    • Professional edition - 50,000 calls/day or 100 calls/user/day (whichever is lower).
    • Enterprise edition - 500,000 calls/day or 500 calls/user/day (whichever is lower).
    • Ultimate edition - 1,000,000 calls/day or 1000 calls/user/day (whichever is lower).

Business Scenario 1

Calculate Sales Commission in Zoho Creator App upon closing an Opportunity in Zoho CRM.

Purpose

Sales Managers and the Payroll team can use the Sales Commission app to calculate the compensation for your Sales Reps according to a pre-defined formula that is been set by your organization (for example, flat 2% of the closed contract or sales amount). This application helps you to reduce manual entries, minimize errors and save time while calculating the commission for your Sales Reps. Additionally, Sales Reps can track their monthly commissions in a central location.

Pre-requisite

  • Account in Zoho Creator Application
  • Permission to access Zoho API
  • Familiarity with Zoho Creator

Procedure

  1. Create the Sales Commission App in Zoho Creator (Refer Zoho Creator Tutorial on Creating Apps)
  2. Configure webhook in Zoho CRM
  3. Set up Workflow Rule
  4. Test your webhook integration

Step 1: Create Sales Commissions App in Zoho Creator

In Zoho Creator, create the Sales Commission App with following fields:

  • Sales Rep
  • Deal Name
  • Customer Name
  • Opportunity Amount
  • Type of Business: New Business or Existing Business
  • Closing Date
  • Sales Commission

To create an Application in Zoho Creator refer to the online help

Step 2: Configure Webhook

Select the following Fields from the Deal module while setting up user-defined parameters:

  • Deal Name
  • Closing Date
  • Type
  • Record Owner
  • Amount

In Webhook, specify the following details:

URL to Notify:

  1. https://creator.zoho.com/api/xml/writePOST method

Raw- Body type Parameters (XML, Text, JSON, or HTML)

  1. <ZohoCreator>
  2.     <applicationlist>
  3.         <application name='sales-commissions'>
  4.             <formlist>
  5.                 <form name='Commissions'>
  6.                     <add>
  7.                         <field name='Name'>
  8.                             <value> ${Potentials.Potential Name} </value>
  9.                         </field>
  10.                         <field name='Closed_Amount'>
  11.                             <value> ${Potentials.Amount} </value>
  12.                         </field>
  13.                         <field name='Closing_Date'>
  14.                             <value> ${Potentials.Closing Date} </value>
  15.                         </field>
  16.                         <field name='Customer_Name'>
  17.                             <value> ${Accounts.Account Name} </value>
  18.                         </field>
  19.                         <field name='Type_of_Business'>
  20.                             <value> ${Potentials.Type} </value>
  21.                         </field>
  22.                         <field name='Sales_Rep'>
  23.                          <value> ${Potentials.Potential Owner} </value></field>
  24.                     </add>
  25.                 </form>
  26.             </formlist>
  27.         </application>
  28.     </applicationlist>
  29. </ZohoCreator>
Note
  • In the above XML string, name represents the field in Zoho Creator App and the value for data is to be pushed from Zoho CRM.
  • <applicaton name> is the name of the application that contains the form in Zoho Creator. Get your application name from the Application Settings tab of Zoho Creator.
  • <form name> is the name of the form where you edit records in Zoho Creator. Get your form name from the Form Settings of your Zoho Creator account.
  • Ensure that the date format in the Creator app is in yyyy-MM-dd format. You can change the date format from the Application Settings of your Zoho Creator account.

Custom Parameters:

Parameter
Description
AuthorizationConfigure a connection with creator in the Connections under Developer Space and select the same in the authorization type of the webhook in CRM. Refer to the Creator help for more details.
zc_ownername*
Specify the application owner's name of your creator account. 
Note
  • To retrieve data from other apps to Zoho Creator, you must specify the username and Authorisation typ. To generate Zoho API information, refer to the Online help

Step 3: Set up Workflow Rule

Follow these steps in the Workflow Rule page:

  1. Set up workflow criteria as:
    • Type is New Business
    • Stage is Closed Won
  2. Click Next.
  1. Select webhook as instant action.
  2. In the Call Webhook popup, select the required webhook from the list and click Associate.
  3. Save the workflow rule.
 

Associate Webhook to Workflow Rule

Step 4: Test your Integration

  1. Add a test deal in CRM with Type and Stage fields as a New Business and Closed Won respectively. While entering test data, ensure that Amount, Closing Data, Record Owner, Account Name and Deal Name are also entered.
  2. Open your Sales Commission App in Zoho Creator and check for the CRM data. 
    If you've not received any data, modify the webhook configuration and continue testing. After successful testing, remove test entries and roll-out this integration to your CRM users.

Business Scenario 2

Send SMS alerts to customers and sales reps.

Purpose

A payment from a customer is due today. You can send an SMS with the payment due date, customer name, and amount details to your Sales Rep by associating webhook to time-based action in workflow rule.

Pre-requisite

  • Account in SMS gateway service
  • Permission to access Workflow Rules

Procedure

  1. Create an account in SMS gateway service
  2. Configure webhook in Zoho CRM
  3. Set up Workflow Rule
  4. Test your webhook integration

Step 1: Create an account in SMS gateway service

In your SMS gateway service, create an account and get these details to configure webhook:

  • Sales Rep
  • Deal Name
  • Customer Name
  • Opportunity Amount
  • Type of Business: New Business
  • Stage: Closed Won
  • Payment Due Date (custom field)

Currently Zoho has partnered with the following SMS Gateway providers:

You can buy SMS credits and API details from the above vendors.

Step 2: Configure Webhook

Select the following Fields from the Leads module while setting up user-defined parameters:

  • Domain Name of SMS gateway
  • Username
  • Auth Token

In webhook, specify the following details:

URL to Notify:

  1. http://<Domain Name>/smsgateway/post - POST method

User-defined Parameters (XML or JSON)

  1. <?xml version="1.0"?>
  2. <m:Library xmlns:m="http://www.screen-magic.com/" xmlns="http://www.defns.com/">
  3. <username>xxxx@xxxxx.com</username>
  4. <senderid>SMS-Provider</senderid>
  5. <accountid>XXXXXXX</accountid>
  6. <authtoken>XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX</authtoken>
  7. <message mobilenumber="${User.Mobile}">Hi ${User.Last Name}, Payment amount ${Potential.Amount} is due today from ${Account.Name}. Please contact ${Contact.Last Name} ASAP</message>
  8. </m:Library>
Note
  • In the above XML string, we've used Screen Magic gateway for demonstration purpose.

Step 3: Set up Workflow Rule

Follow these steps in the Workflow Rule page:

  1. Set up workflow criteria as:
    • Type is New Business.
    • Stage is Closed Won.
    • Choose Closing date.
  2. Select the webhook as a time-based action.
  3. Save workflow rule.

Workflow Rule Criteria

 

Associate Webhook to Workflow Rule


Step 4: Test your Integration

  1. Add a test deal in CRM with Type and Payment Due Date fields as a Existing Business and Today respectively. While entering test data, ensure that Amount, Closing Data, Record Owner, Account Name and Deal Name are also entered.
  2. In your mobile phone check for the SMS alert
    If you've not received SMS, modify the webhook configuration and continue testing. After successful testing, remove test entries and roll-out this integration to your CRM users.

Refer Error Codes

Webhook execution may sometimes fail due to one of the following reasons: 

  • Bad Request - A required parameter may be missing
  • Unauthorized Request - An invalid Auth Token is provided.
  • Request FailedParameters were valid but request failed.
  • Page not Found - If the requested item doesn't exist.
  • Third-party error - Due to a glitch in the third-party application.
  • Third-party server not available - Disconnection at the third-party API server.
  • Internal process failureIf there is an error in processing the webhook.
  • Day limit reachedIf the org had reached the maximum limit for the day.
  • Invalid URLIf the URL is SSRF vulnerable or an invalid URL.
  • Socket timeoutIf the webhook is invoked but response is not received until 10 seconds. 

View Webhooks Usage Graph

Zoho CRM provides graphs that show the daily or weekly usage statistics of webhooks across various features. You can view the alert usage from Go to Setup Automation Actions > Webhooks.

The More Info link provides detailed information on the usage stats. Please note that the graph will cover the usage stats of the past 7 days.


SEE ALSO

    Zoho DataPrep Personalized Demo

    If you'd like a personalized walk-through of our data preparation tool, please request a demo and we'll be happy to show you how to get the best out of Zoho DataPrep.

    Zoho CRM Training

      Create, share, and deliver

      beautiful slides from anywhere.

      Get Started Now





              Zoho CRM Training Programs

              Learn how to use the best tools for sales force automation and better customer engagement from Zoho's implementation specialists.

              Zoho CRM Training


                  Zoho TeamInbox Resources




                            Zoho DataPrep Resources

                              Zoho DataPrep Demo

                              Get a personalized demo or POC

                              REGISTER NOW


                                Design. Discuss. Deliver.

                                Create visually engaging stories with Zoho Show.

                                Get Started Now











                                                      • Related Articles

                                                      • Configuring Workflow Rules

                                                        Workflow Rules in Zoho CRM, are a set of actions (email notifications, tasks and field updates) that are executed when certain specified conditions are met. These rules automate the process of sending email notifications, assigning tasks and updating ...
                                                      • Can assignment rules be triggered for records created using workflow rules?

                                                        No, you cannot apply assignment rules to records that are created through workflow rules. The assignment rules automation only applies to records that are imported or enter CRM through webforms or from third-party applications via APIs. There is an ...
                                                      • Creating Workflow Tasks

                                                        Workflow Tasks are among the actions associated to a workflow rule. A task is an activity that is assigned to a user. When you associate a workflow task to a workflow rule, it is automatically assigned to the user when the rule is triggered for the ...
                                                      • Workflow for Calls

                                                        Workflow rules for calls allow you to perform certain actions automatically whenever a call is received, made, missed or scheduled. It significantly reduces manual effort of updating or adding details about the individual call. For example, you can ...
                                                      • Workflow for Social (Facebook and Twitter)

                                                        Workflows allow you to set up an action-reaction system in your business, that continues to take place as long as the condition is true. For example, if a customer replies to a particular email, workflow rules automatically send an acknowledgement ...

                                                      Resources

                                                      Videos

                                                      Watch comprehensive videos on features and other important topics that will help you master Zoho CRM.



                                                      eBooks

                                                      Download free eBooks and access a range of topics to get deeper insight on successfully using Zoho CRM.



                                                      Webinars

                                                      Sign up for our webinars and learn the Zoho CRM basics, from customization to sales force automation and more.



                                                      CRM Tips

                                                      Make the most of Zoho CRM with these useful tips.



                                                        Zoho Show Resources