Kaizen #19- C# SDK

Kaizen #19- C# SDK

Hello everyone!
Welcome back to another week of Kaizen!
This week, we will discuss the C# SDK.

What is the C# SDK for Zoho CRM?

C# SDK allows you to create client C# applications that you can integrate with Zoho CRM, effortlessly. It serves as a wrapper for the REST APIs, thus making it easier to use the services of Zoho CRM.

Here is a sample of how the SDK acts as a middleware between Zoho CRM and a client C# Application.


What can you do with the C# Software Development Kit?

  • You can use C# SDK to exchange data between Zoho CRM and the client Java application. 
  • The authentication process becomes hassle-free with C# SDK. Since it is handled in the SDK code by default, you need not worry about generating the grant token, access/refresh tokens every time you sync data between Zoho CRM and your client. 
Environment Setup
  • Client app must use .net framework 4.6.1 or above. You can download .net framework through: https://dotnet.microsoft.com/download/dotnet-framework/. The .net core is present by default in Mac and Linux OS.
  • The C# SDK is available as a NuGet package. You can install it in three ways:
    • Packet Manager (Windows OS)
      Goto visual studio > View > Other windows > Package manager console.
      Using the following commands, you can install the C# SDK.
      Install-Package ZCRMSDK
      Install-Package Newtonsoft.Json
      Install-Package MySql.Data
      Install-Package System.IO.Compression.ZipFile -Version 4.3.0
      Install-Package System.IO.Compression -Version 4.3.0
    • .NET CLI
      Install the .NET core CLI by clicking here. Further, in command prompt, navigate to your project and using the following commands, install the C# SDK.
      dotnet add package ZCRMSDK
      dotnet add package Newtonsoft.Json
      dotnet add package MySql.Data [Only if DB persistence is used]
      dotnet add package System.IO.Compression.ZipFile --version 4.3.0
      dotnet add package System.IO.Compression --version 4.3.0
    • Visual Studio
      For Mac OS
      Goto Visual Studio > Project > Dependencies > NuGet > Manage Nuget  Packages > Search for ZCRMSDK and install it.
      For Windows OS
      Goto Visual Studio > Project > References > Manage NuGet packages > In  the browse tab search for ZCRMSDK and install it.
How to Start using the C# SDK?
In this section, we will discuss how to start using the C# SDK for your application (authenticated via self-client) which uses Zoho CRM: 
Step 1: Register your application 
      1.a. For self-client
      1.b. For web-based client
Step 2: Configure your application
      2.a. For .Net Core applications
      2.b. For other applications 
Step 3: Add persistent classes
      3.a. File Persistence
      3.b. DB Persistence
      3.c. InMemory Persistence
Step 4: Initialization
      4.a. Generating grant token
      4.b. Generating access and refresh token using the grant token
      4.c. Generating access token using the refresh token
Let us now discuss these steps in detail.

Step 1: Register your application

All the Zoho CRM APIs are authenticated by the OAuth2.0 standards. It is mandatory to authenticate your application with Zoho.
You can register your application either as a Self Client (single user app) or a web-based app (multiple users app).

1.a. Self Client
  1. Go to https://api-console.zoho.com.
  2. Click ADD CLIENT
  3. Choose the Client Type as Self Client, and click CREATE.
  4. You will receive a client ID and a client secret upon successful registration.


1.b. Web-based Client
  1. Go to https://api-console.zoho.com.
  2. Click ADD CLIENT
  3. Choose the client as Web-based and click CREATE NOW.
  4. Specify the client name, homepage URL of your application's UI, and a redirect URI to which you want to redirect the users after they grant consent to your application.
  5. Click CREATE.

Your Client ID and Client Secret will be displayed.


Step 2: Configure your client application

2.a. For .Net Core applications

Specify the application configuration details in the app.config file. Add a section named oauth_configuration and ensure that the section has the attribute type as 'ZCRMSDK.CRM.Library.Common.ConfigFileHandler.ConfigFileSection, ZCRMSDK', which is a namespace in C# that consists of the code to read the app.config file. 

<configuration>
    <configSections>
        <section name="oauth_configuration" type="ZCRMSDK.CRM.Library.Common.ConfigFileHandler.ConfigFileSection, ZCRMSDK"></section>
        <section name="zcrm_configuration" type="ZCRMSDK.CRM.Library.Common.ConfigFileHandler.ConfigFileSection, ZCRMSDK"></section>
    </configSections>
    <oauth_configuration>
        <settings>
            <add key="client_id" value="1000. xxxxxxx" />
            <add key="client_secret" value="xxxxxxxx" />
            <add key="redirect_uri" value="null" />
            <add key="iamUrl" value="https://accounts.zoho.com" />
            <add key="persistence_handler_class" value="com.zoho.oauth.clientapp.ZohoOAuthDBPersistence" />
            <!--for database. "com.zoho.oauth.clientapp.ZohoOAuthFilePersistence" for file, user can also implement own persistence and provide the path here-->
            <add key="mysql_username" value="username" />
            <add key="mysql_password" value="password" />
            <add key="mysql_database" value="zohooauth" />
            <add key="mysql_server" value="localhost" />
            <add key="mysql_port" value="3306" />
            <add key="oauth_tokens_file_path" value="/path/to/file.log" />
            <!--Ex:/User/Document/testapplication/src/file.txt). The file can be .txt or .config-->
        </settings>
    </oauth_configuration>
    <zcrm_configuration>
        <settings>
            <add key="apiBaseUrl" value="https://www.zohoapis.com" />
            <add key="photoUrl" value="https://profile.zoho.com/api/v1/user/self/photo" />
            <add key="apiVersion" value="v2" />
            <add key="logFilePath" value="/path/to/file.log" />
            <!--path must be absolute(Ex:/User/Document/testapplication/src/file.log)-->
            <add key="timeout" value="3000" />
            <add key="minLogLevel" value="WARNING" />
            <add key="currentUserEmail" value="patricia@zylker.com" />
            <add key="domainSuffix" value=".com" />
        </settings>
    </zcrm_configuration>
</configuration>

Key Value Description
a. <oauth_configuration>
Key 
Description
client_id and client_secret
mandatory
Client details you received after registering your application. 
redirect_uri
mandatory for web-based clients
The callback URL that you specified during client registration. You need not specify this key for self client from ZCRMSDK version 2.1.5. For lesser versions, this key is mandatory for all types of clients. In the case of self-client in lesser versions, specify the value as "null".
iamURL
optional
The domain-specific accounts URL from which you generate the tokens.
peristence_handler_class
mandatory
Name of the class of the custom implementation for persistence. This key is mandatory if you want to use custom persistence.
mysql_password, mysql_username, mysql_port, mysql_database, mysql_server
mandatory when you use DB persistence
The MySQL details. Default values are:
mysql_username="root",
mysql_password="youe_password",
mysql_database="zohoauth",
mysql_sever="localhost",
and mysql_port="3306".
oauth_tokens_file_path
mandatory when you use file persistence
The path to store the OAuth tokens in the file. This key is mandatory if you want to use file persistence. If you include this key, this method takes precedence over other persistent methods.

b.<zcrm_configuration>

Key
Description
apiBaseUrl
optional
The domain-specific API URL from which you make API calls. For users from domains other than US, this key is mandatory.
photoUrl
optional
The URL of the image representing the record. It differs based on apiBaseUrl.
apiVersion
optional
Represents the version of the CRM APIs. The value is v2.
logFilePath
optional
The absolute path to log the exceptions during the usage of the SDK.
timeout
optional
The request timeout in milliseconds.
minLogLevel
optional
Represents the minimum log level for logging of SDK. The supported values are:
a. ALL: Verbose messages, informational messages, warning messages, and error messages.
b. INFO (default): Informational messages. warning messages, and error messages
c. WARNING: Warning messages and error messages
d. ERROR: Only error messages.
e. OFF: None
currentUserEmail
mandatory
The email ID of the current user. When you do not specify this value, the SDK throws an exception. This key is mandatory in the configuration dictionary for self-client apps.
domainSuffix
optional
The domain from which the API calls are made. It can be com(for US), eu(for Europe), cn(for China), au(for Australia). If you specify this value, you need not specify apiBaseUrl and iamURL.

2.b. For other applications like ASP.NET, ASP Web App, ASP Website, and so on

Specify the application configuration details in the configuration dictionary. In this case, you can specify the properties of <oauth_configuration> and <zcrm_configuration> in a single section.

Sample:

public static Dictionary<string, string> config = new Dictionary<string, string>()
 {
 {"client_id","1000.XXXX"},
 {"client_secret","b477XXXX"},
 {"redirect_uri","null"},
{"persistence_handler_class","ZCRMSDK.OAuth.ClientApp.ZohoOAuthDBPersistence, ZCRMSDK"},
  
{"oauth_tokens_file_path","/path/to/file.txt"}, //file can be .txt or .config file
  {"mysql_username","root"},
  {"mysql_password","your_password"},
  {"mysql_database","zohooauth"},
  {"mysql_server","localhost"},
  {"mysql_port","3306"},
  {"apiBaseUrl","{https://www.zohoapis.com}"},
  {"fileUploadUrl","{https://content.zohoapis.com}"},
"},
  {"apiVersion","v2"},
  {"logFilePath","/path/to/file.log" }, //absolute path
  {"timeout","3000"},
  {"minLogLevel","WARNING"},
  {"domainSuffix","com"},
  {"currentUserEmail","patricia@zylker.com"}
 };
ZCRMRestClient.Initialize(config);

Step 3: Add persistence classes

Your application should retain tokens (grant, access, and refresh tokens) to automate the process of data sync between your C# application and Zoho CRM.

You can choose to persist (store) the tokens in three ways.
      3.a. File Persistence
      3.b. DB Persistence
      3.c. In Memory Persistence

3.a. File Persistence

If you want to store the tokens in a file, provide the absolute path of the directory containing this file in the oauth_tokens_file_path key in <oauth_configuration> section in the app.config file (or) config dictionary. The file persists the tokens of a single user. So, it is best used for the 'self-client' type of authentication since it involves only one user.  

Ex: 
<add key = "oauth_tokens_file_path" value = "/User/Document/testapplication/src/file.txt" /> 

The file can be a .txt or .config file.

3.b. DB Persistence

Pre-requisites:

  1. MySQL must be running in the same machine serving at the default port 3306.
  2. The database name should be zohooauth.
  3. There must be a table oauthtokens with the columns useridentifier (varchar(100)), accesstoken (varchar(100)), refreshtoken (varchar(100)) and expirytime (bigint).
To use custom DB persistence, you must
Implement IZohoPersistenceHandler interface, and write a custom implementation of the following functions:
  • GetOAuthTokens: invoked to fetch the saved tokens. This method should return the ZohoOAuthTokens object for the library to process it.
  • SaveOAuthTokens: invoked to store the tokens.
  • DeleteOAuthTokens: invoked to delete the tokens.
Include "persistence_handler_class" in the app.config file (2.a) or configuration dictionary (2.b), along with other mandatory keys. 
Ex: 
a. app.config file: 
<add key = "persistence_handler_class" value = "ZCRMSDK.OAuth.ClientApp.ZohoOAuthDBPersistence"/> 

b. Configuration dictionary: 
{"persistence_handler_class","ZCRMSDK.OAuth.ClientApp.ZohoOAuthDBPersistence, ZCRMSDK"}

If the persistence handler class is not specified, the InMemory Persistence handler handles the persistence implementation by default. Pre-defined persistence handler classes belong to the assembly ZCRMSDK.

3.c. InMemory Persistence

This type of persistence uses a singleton class to store and retrieve tokens. The InMemory persists the tokens of a single user. So, it is best used for the 'self-client' type of authentication since it involves only one user. 

The below table contains the list of keys you must include in the configuration dictionary based on the type of persistence.

Mandatory Keys
File Persistence
DB Persistence
InMemory Persistence
client_id
client_id
client_id
client_secret
client_secret
client_secret
redirect_uri (for web-based client)
redirect_uri (for web-based client)
redirect_uri (for web-based client)
persistence_handler_class
persistence_handler_class
persistence_handler_class
oauth_tokens_file_path
-
-

Optional Keys
File Persistence
DB persistence
InMemory Persistence
logFilePath
logFilePath
logFilePath
apiBaseUrl
apiBaseUrl
apiBaseUrl
apiVersion
apiVersion
apiVersion
currentUserEmail
currentUserEmail
currentUserEmail

Step 4: Initialization

Intializing your application involves the following steps:

      4.a. Generating grant token
      4.b. Generating access and refresh token using the grant token
      4.c. Generating access token using the refresh token

4.a. Generating grant token

For Self Client Applications
  1. Log in to Zoho and go to Zoho Developer Console.
  2. Select your Self Client.
  3. Provide the necessary scopes separated by commas, along with the scope aaaserver.profile.READ
  4. Select the Time Duration from the drop-down. This is the time the grant token is valid for.
  5. Add a description. Click GENERATE.
  6. Copy the grant token.
For Web-based Applications

It is the responsibility of your client app to generate the grant token for the users trying to login.
Your Application's UI must have the Login with Zoho option to open the grant token URL of Zoho, which would prompt for the user's OAuth2.0 authorization.
Upon the successful login of the user, the grant token will be sent as a parameter to your registered redirect URL.

4.b. Generating an access and refresh tokens from the grant token

Use the below code snippet in your main class to generate the access and refresh tokens for the first time. As discussed earlier, the C# SDK will automatically generate the grant token, access/refresh tokens every time you sync data between Zoho CRM and your client.

ZCRMRestClient.Initialize(config);
ZohoOAuthClient client = ZohoOAuthClient.GetInstance();
string grantToken = <paste_grant_token_here>;
ZohoOAuthTokens tokens = client.GenerateAccessToken(grantToken);
string accessToken = tokens.AccessToken;
string refreshToken = tokens.RefreshToken;

Note:
  • The code snippet to generate the access token from the grant token is valid only once per grant token. If the grant token expires before you generate the access token, you must generate a new grant token only.
  • Generating access and refresh tokens is a one-time process. After the tokens are generated for the first time, the SDK persists them based on the keys defined in the configuration dictionary and refreshes the access token as and when required.
4.c. Generating an access token from the refresh token

Use the below code snippet when you already have a refresh token in place, and you want to use it to generate access token:

ZCRMRestClient.Initialize(config);
ZohoOAuthClient client = ZohoOAuthClient.GetInstance();
string refreshToken = <paste_refresh_token_here>;
string userMailId = <provide_user_email_here>;
ZohoOAuthTokens tokens = client. GenerateAccessTokenFromRefreshToken(refreshToken,userMailId);

Starting the application
The SDK requires the following line of code to be invoked every time your app gets started. This method should be called from the main class of your c# application to start the application. It needs to be invoked without any exception.
ZCRMRestClient.Initialize(config);
The parameter passed is the configuration dictionary name (config), if you are using an app.config file, mention null.

Sample code

Here is a sample to insert records. You can find the code in the attachment.


The isTokenGenerated Method

You need to add this method to check if the access token has already been generated or not. It returns a Boolean value.

true - The access token has already been generated. 
false - The access token has not been generated previously, thus, it shifts the control to the code snippet that leads to access token generation.

For more sample codes, refer to REST API samples.

Cheers!

Previous 'Kaizen' - Ruby SDK
Next 'Kaizen' - Node JS SDK

    Access your files securely from anywhere







                          Zoho Developer Community






                                                • Desk Community Learning Series


                                                • Digest


                                                • Functions


                                                • Meetups


                                                • Kbase


                                                • Resources


                                                • Glossary


                                                • Desk Marketplace


                                                • MVP Corner


                                                • Word of the Day


                                                • Ask the Experts



                                                          • Sticky Posts

                                                          • Kaizen #197: Frequently Asked Questions on GraphQL APIs

                                                            🎊 Nearing 200th Kaizen Post – We want to hear from you! Do you have any questions, suggestions, or topics you would like us to cover in future posts? Your insights and suggestions help us shape future content and make this series better for everyone.
                                                          • Kaizen #198: Using Client Script for Custom Validation in Blueprint

                                                            Nearing 200th Kaizen Post – 1 More to the Big Two-Oh-Oh! Do you have any questions, suggestions, or topics you would like us to cover in future posts? Your insights and suggestions help us shape future content and make this series better for everyone.
                                                          • Celebrating 200 posts of Kaizen! Share your ideas for the milestone post

                                                            Hello Developers, We launched the Kaizen series in 2019 to share helpful content to support your Zoho CRM development journey. Staying true to its spirit—Kaizen Series: Continuous Improvement for Developer Experience—we've shared everything from FAQs
                                                          • Kaizen #193: Creating different fields in Zoho CRM through API

                                                            🎊 Nearing 200th Kaizen Post – We want to hear from you! Do you have any questions, suggestions, or topics you would like us to cover in future posts? Your insights and suggestions help us shape future content and make this series better for everyone.
                                                          • Client Script | Update - Introducing Commands in Client Script!

                                                            Have you ever wished you could trigger Client Script from contexts other than just the supported pages and events? Have you ever wanted to leverage the advantage of Client Script at your finger tip? Discover the power of Client Script - Commands! Commands


                                                          Manage your brands on social media



                                                                Zoho TeamInbox Resources



                                                                    Zoho CRM Plus Resources

                                                                      Zoho Books Resources


                                                                        Zoho Subscriptions Resources

                                                                          Zoho Projects Resources


                                                                            Zoho Sprints Resources


                                                                              Qntrl Resources


                                                                                Zoho Creator Resources



                                                                                    Zoho CRM Resources

                                                                                    • CRM Community Learning Series

                                                                                      CRM Community Learning Series


                                                                                    • Kaizen

                                                                                      Kaizen

                                                                                    • Functions

                                                                                      Functions

                                                                                    • Meetups

                                                                                      Meetups

                                                                                    • Kbase

                                                                                      Kbase

                                                                                    • Resources

                                                                                      Resources

                                                                                    • Digest

                                                                                      Digest

                                                                                    • CRM Marketplace

                                                                                      CRM Marketplace

                                                                                    • MVP Corner

                                                                                      MVP Corner







                                                                                        Design. Discuss. Deliver.

                                                                                        Create visually engaging stories with Zoho Show.

                                                                                        Get Started Now


                                                                                          Zoho Show Resources


                                                                                            Zoho Writer Writer

                                                                                            Get Started. Write Away!

                                                                                            Writer is a powerful online word processor, designed for collaborative work.

                                                                                              Zoho CRM コンテンツ





                                                                                                Nederlandse Hulpbronnen


                                                                                                    ご検討中の方




                                                                                                          • Recent Topics

                                                                                                          • A formula that capitalises the first letter of each word

                                                                                                            Hi all, is there a zoho formula that can capitalise the first letter of each word in a string? INITCAP only capitalises the first letter of the first word.
                                                                                                          • Quotes in Commerce?

                                                                                                            In Zoho Ecommerce, I need to be able to generate quotes, negotiate with customers, and then generate invoices. Currently, I plan to integrate Zoho CRM to generate quotes. After negotiation and confirmation, I will push the details to Zoho Ecommerce to
                                                                                                          • Zoho Commerce - Mobile Application

                                                                                                            Does Zoho Commerce have a mobile application for customers to place an order?
                                                                                                          • Register user through Phone Number by Generating OTP

                                                                                                            In zoho commerce , I am developing website on online food store Inilialy the user get verification code to their email for registering there account for login. But I need to login using phone number by generating OTP automatically rather than verification
                                                                                                          • Unable to change sales_order status form "not_invoiced" to "invoiced"

                                                                                                            I am automating process of creating of invoice from sales_orders by consolidated sales_orders of each customer and creating a single invoice per customer every month. I am doing this in workflow schedule custom function where i create invoice by getting
                                                                                                          • Custom Buttons for Mass Actions

                                                                                                            Hello everyone, We’ve just made Custom Buttons in Zoho Recruit even more powerful! You can now create Bulk Action Buttons that let you perform actions on multiple records at once, directly from the List View. What’s new? Until now, custom buttons were
                                                                                                          • Zoho Vault Passwords

                                                                                                            Is there a way to consume Zoho Vault Manager passwords using the API? Thanks in advance.
                                                                                                          • Is the ChatGPT Assistant integration capable of recognizing WhatsApp voice messages?

                                                                                                            I was wondering: if a visitor sends me a voice message on WhatsApp, would the assistant be able to transcribe it and reply to them?
                                                                                                          • Zoho Creator to Zoho CRM Images

                                                                                                            Right now, I am trying to setup a Notes form within Zoho Creator. This Notes will note the Note section under Accounts > Selected Account. Right now, I use Zoho Flow to push the notes and it works just fine, with text only. Images do not get sent (there
                                                                                                          • 【Zoho CRM】レポート機能のアップデート

                                                                                                            ユーザーの皆さま、こんにちは。コミュニティチームの藤澤です。 今回は「Zoho CRM アップデート情報」の中から、レポート機能のアップデートをご紹介します。 目次 1. レポートのエクスポート時のレコードIDの表示について 2. 通貨項目の表示について 3. レポートの削除の監査ログへの反映について 1. レポートのエクスポート時のレコードIDの表示について これまで、レポートをエクスポートするとファイルにレコードIDが必ず含まれていました。レコードIDが識別子として役立つ場合もありますが、実際には多くの企業で参照されることはありません。
                                                                                                          • Translation in zoho bookings

                                                                                                            We cant translate zoho booking emails. The general text we can change. But what about text like: ""Here a link to join the meeting online:"" and "Add to Zoho Calendar" and "Add to Google Calendar"? No professional business have mixed languages. Its looking
                                                                                                          • Is there any way to bill one client in different currencies on different invoices?

                                                                                                            I have some customers who have their currency set as USD and most of their billing is done in USD.   However, from time to time I have a need to bill them in my base currency GBP for some specific invoices, but there seems to be no way of doing this that I can see. The only workaround that I can see is to create two client records for the same client, one for USD billing and one for GBP billing, but this is not an ideal situation. Is it likely that the (hopefully!) soon to arrive multi-currency support
                                                                                                          • API name for all fields in Zoho Project (Standard or custom)

                                                                                                            Hi! I struggle to find easily all API name of all field in Zoho Project to build my API rest with other services. We can find them very fast in CRM but not in PRoject.   Could you share a function to get the list of all API Name of any field of an App
                                                                                                          • Disappearing Mouse cursor in Zoho Mail / Windows 11 (Chrome + Edge)

                                                                                                            I'm seeing an issue when writing mails with the light theme with the mouse cursor being white and the document area also being white - making it nearly impossible to see the mouse cursor. I see the problem on Windows 11 under Chrome and Edge. (Yet to
                                                                                                          • Zoho Assist not rendering NinjaTrader chart properly

                                                                                                            Hi everyone. Just installed and testing Zoho Assist. I want to display my laptop' screen (Windows 11) on a monitor connected to my Mac mini. The laptop is running a stock trading program called NinjaTrader. Basically, when running, this program displays
                                                                                                          • Link(s) between Notes

                                                                                                            Hello Everyone, It would be great if links could be created between notes. Let's say we have 5 Notes A, B, C , D, E. I would like to be able to link Note A to Note B but not in other way, so no link appears in Note B linking to Note A. An so on, linking
                                                                                                          • Zoho Books | Product updates | August 2025

                                                                                                            Hello users, We’ve rolled out new features and enhancements in Zoho Books. From the right sidebar where you can manage all your widgets, to integrating Zoho Payments feeds in Zoho Books, explore the updates designed to enhance your bookkeeping experience.
                                                                                                          • Feature Request: Assign Documents to Already Entered Bills, Expenses, Invoices, etc.

                                                                                                            Hi Zoho Team, We are regular users of the Documents module in Zoho Books and appreciate its ability to keep financial records well-organized. However, we’ve noticed a limitation: There is no way to attach a document from the "Documents > Files" section
                                                                                                          • I don't see any WITHDRAWL transaction at all

                                                                                                            Hi I manually imported my bank statement to Zoho books today and I am a complete newbie. I have been reading the knowledgebase but unable to fix this. I only see "Uncategorized 91 DEPOSIT transactions". I don't see any WITHDRAWL transaction at all. Also,
                                                                                                          • Shared inbox unable to see replies

                                                                                                            Hi we are a small company me and someone else, we have a shared inbox for our sale@ and contact@ however we have this issue where by if i reply to an email or the other person reply to the email, it does not show it to them and therefore we end up replying
                                                                                                          • Kaizen #136 - Zoho CRM Widgets using ReactJS

                                                                                                            Hey there! Welcome back to yet another insightful post in our Kaizen series! In this post, let's explore how to use ReactJS for Zoho CRM widgets. We will utilize the sample widget from one of our previous posts - Geocoding Leads' Addresses in ZOHO CRM
                                                                                                          • 404 error at checkout

                                                                                                            Our customers are getting a 404 error at checkout. Anyone else with the same problem?
                                                                                                          • FONT Sizing in Notebook

                                                                                                            Hi Kishore - What is the status of adding font sizing to the application? I have several things that I have pasted directly into Notebook and the fonts are HUGE! I would like the ability to highlight them and reduce the font to a legible size. Nothing
                                                                                                          • Can managers Upload documents to their direct rapports?

                                                                                                            Admin employees have the ability to upload documents to employees' files; however, managers do not have add/manage button - is it possible for managers to upload their direct reports' documents, such as absence documents or 121 documents. Is there something
                                                                                                          • Leave balance display for next year

                                                                                                            Is there a way to not have a rollover or not limit the leave balance depending on the date. For example an employee has 10 days leave balance and wants to apply for January leave in December. They cant because the rollover doesnt show the leave balance
                                                                                                          • Please add an “Auto-Apply Unused Credits” toggle

                                                                                                            Hello — please add a simple org-level option to automatically apply unused credits (credit notes, excess payments, retainers) to new invoices and/or bills. An ON/OFF toggle with choices “invoices”, “bills”, or “both” would save lots of manual work for
                                                                                                          • Zoho Books not working/loading

                                                                                                            Hi! I haven't been able to access/load Zoho Books for the past hours. I get a time out (and it is not due to my internet connection). Could you please check this asap? Thank you!
                                                                                                          • Custom Fields with Data Types for Expense and Payments Received in Zoho Books

                                                                                                            Hi all, We are glad to present to you, the option to create Custom Fields for the Expense and Payments received modules in Zoho Books. This also comes with an icing on top of it - Yes, the custom fields can now be created with different data types. Types like Text, Number, Decimal, Amount, Auto Number and Check Box are supported as of now. Rush to the gear icon at the top right corner, select 'More Settings', choose 'Preferences' in the left pane. Click the Expense/Payment preferences where you can
                                                                                                          • Zoho Cliq - Incident alert (Server outage - IN DC) | August 28

                                                                                                            We've received server down alerts and are currently investigating the issue (IN DC) to find the root cause. Our team is actively working to restore normal operations at the earliest. Status: Under investigation Start time: 09:44:21 AM IST Affected location:
                                                                                                          • Claude + MCP Server + Zoho CRM Integration – AI-Powered Sales Automation

                                                                                                            Hello Zoho Community 👋 I’m excited to share a recent integration we’ve worked on at OfficehubTech: ✅ Claude + MCP Server + Zoho CRM This integration connects Zoho CRM with Claude AI through our custom MCP Server, enabling intelligent AI-driven responses
                                                                                                          • How can I see content of system generated mails from zBooks?

                                                                                                            System generated mails for offers or invices appear in the mail tab of the designated customer. How can I view the content? It also doesn't appear in zMail sent folder.
                                                                                                          • Limitations on editing a message in Cliq

                                                                                                            Hi I've checked the documentations and there's no mention of how many times a message can be edited. When trying with code, I get various numbers such as ~1000 edits or so. Please mention if there's a limit on how many times one can change a message via
                                                                                                          • Narrative 10: Assignment Rules - Streamlining Ticket Management

                                                                                                            Behind the scenes of a successful ticketing system: BTS Series Narrative 10: Assignment Rules - Streamlining Ticket Management In the complex world of customer support, a flood of incoming tickets can hit the help desk in seconds. Businesses must do more
                                                                                                          • Free webinar! Digitize recruitment and onboarding with Zoho Sign and Zoho Recruit

                                                                                                            Hello, Tired of being buried in onboarding paperwork? With the integration between Zoho Sign and Zoho Recruit, a powerful applicant tracking system, you can digitize and streamline the entire recruitment and onboarding process, all from one platform.
                                                                                                          • Custom form - Duplicate Value Present

                                                                                                            I am new to Zoho People. I create a new form on Zoho People quite simple. A date (by default the current date) and a radio button with 3 options (Yes, No, Not applicable) I defined the date as ‘No duplicate’ as only one entry by date is allowed. I added:
                                                                                                          • Zoho API connection issues

                                                                                                            Hi, Today at around 1930 GMT our application started experiencing intermittent timeouts from the Zoho API. These intermittent timeouts are not enabling our app to work properly. The API connection was working just fine before. HTTPSConnectionPool(host='www.zohoapis.com',
                                                                                                          • Query Regarding our Partnership between AIC-JKLU and Zoho

                                                                                                            Dear Zoho Team, I am writing to raise a concern on behalf of AIC-JKLU, one of Zoho’s incubator partners. Recently, our startups have been facing difficulties while trying to get themselves onboarded on Zoho through our dedicated partner link. Unfortunately,
                                                                                                          • Disputed Purchase Invoices

                                                                                                            We have recently moved to Zoho Books from Sage. In Sage we were able to post a purchase/vendor invoice but mark it as on dispute. This would usually be a pricing query or if something was damaged. It would show in their ledger, so we could agree their
                                                                                                          • Getting events in the future

                                                                                                            Hi I am trying to get events in the future by calling this API Endpoint https://www.zohoapis.eu/crm/v8/Events?fields=Event_Title,Created_By,Created_Time,Start_DateTime But that gives me all events in the database. How do I make a query that returns all
                                                                                                          • Created Date/Invalid Fields

                                                                                                            Since Saturday we have suddenly had issues with our webhooks and data retrieval from CRM. Specifically how Created Date is handled. It appears there was some sort of change within CRM that broke a lot of our code that has been in place for several years.
                                                                                                          • Next Page