Last project of 2023!
Hey there, friends! During the final project week of 2023, we embarked on an exciting venture: developing an app in Alteryx specifically designed for an online ordering system. This innovative app was crafted to seamlessly integrate with ClickUp for managing and tracking sales orders. After an order was placed, the app facilitated the creation and emailing of invoices through Zoho, streamlining the customer transaction experience. Moreover, all the transaction details, including order information and invoice records, were efficiently stored in an SQL Server database. In this blog, we’re going to focus on a key component of this system – connecting to the Zoho API. We’ll share some essential tips and insights to help you understand how to establish this crucial connection. So, if you’re ready to learn about linking your online ordering system with Zoho, let’s get started with these helpful tips.
Documentation and Key Links.
Before we start, it’s essential to read the API documentation for Zoho Invoice.
- Zoho Invoice API documentation: Zoho Invoice API
- Zoho Accounts: Zoho OAuth Protocol
- Zoho API Collection for Postman: Zoho Invoice API Collection
Setting Up Accounts and Tools for Zoho API Integration
As we dive into the world of Zoho API, the first step is to set up the necessary accounts and tools. This process is straightforward but crucial for a smooth experience.
- Create Your Zoho Account: Start by signing up for a Zoho account, focusing on Invoice. Visit the Zoho Signup Page, fill in your details to get your User ID and Organization ID, and you’re ready to go.
- Register on Zoho Developer Console: Next, visit the Zoho Developer Console. This platform is designed for those building applications using Zoho’s API. Here, you can register your application and create tokens.
- Get Familiar with Postman: Finally, download and set up Postman. This tool is essential for testing your API requests and responses, offering a user-friendly interface favoured by developers.
How We Authenticate with Zoho Invoice API?
The Zoho Invoice API employs OAuth 2.0 for secure authorization and authentication, ensuring protected access to its resources. Let’s break down the authentication process:

Registering New Client:
Begin by registering your application in Zoho’s Developer console. This step is crucial to obtain your Client ID and Client Secret, the keys to your application’s access.
Generating Grant Code:
Navigate to Zoho’s authorization URL, inputting parameters like scope, client_id, and response_type. This action will grant you a token necessary for further steps.

With your grant token, make a POST request to Zoho’s token URL. This will provide you with both access and refresh tokens. Remember, the access token is time-bound, while the refresh token is long-lasting and used for generating new access tokens.

Generate Access Token From Refresh Token:
Should your access token expire, the refresh token allows you to request a new one, maintaining uninterrupted API access.

Calling An API: The access token can only be passed in the header of API requests.
- Header name should be Authorisation
- Header value should be Zoho-oauthtoken {access_token}
Wrapping up
In essence, mastering the Zoho API connection involves understanding your access scopes, managing token expiration, and efficiently using refresh tokens. Tools like Postman simplify this process, and Zoho’s comprehensive guides offer step-by-step assistance. Equipped with these tools and knowledge, you’re ready to effectively utilize the Zoho API.
Important Notes:
- Defining Scopes: When generating the code for API access, defining scopes is crucial. Scopes authorize specific attributes to the code, which is particularly useful for setting security levels in different departments. For example, some departments may have permissions to create, read, update, or delete. For a detailed list of available scopes in Zoho Invoice, visit Zoho Invoice API Scopes.
- Multi-Region Support: Zoho Invoice is hosted across multiple data centers, catering to various regions with specific domains. For instance, the US uses .com, Europe .eu, India .in, Australia .com.au, and Japan .jp. This ensures that users can access the service from the domain closest to their location.
- Usage Limits: To maintain quality service, Zoho Invoice imposes request limits. On the Free Plan, users are allowed up to 1000 API requests per day. Additionally, there is a general limit of 30 requests per minute and a maximum of 20 invoices per day. These limits ensure fair usage and optimal performance for all users.