Self Hosted Minimal ZohoCRM Workbench
- Published on
- • 915 words•5 mins read•--- views
- Authors
- Name
- GandS
- @gands-tech
If you want to integrate ZohoCRM with your app, In the begginning, you’ve heared lot of terms like COQL, REST, etc with ZohoCRM. This article explain key terms involved in ZohoCRM and how we can integrate with your node application.
ஆரம்பிக்கலாங்களா !!!
What is ZohoCRM?
CRM stands for Customer Releationship Management. It is a software that is used to store customer information like name, address, phone, email, etc. And also keep track of the customer activities. There are numerous CRM softwares are available out there. ZohoCRM is the one among them. Salesfoce CRM helps your business in terms of marketing, sales, commerce, service and IT team works which makes your customers happy.
What is ZohoCRM Workbench?
ZohoCRM workbench is a free, open source, web based application to manage the ZohoCRM data. This allows developers and admins to integrate the ZohoCRM with any third party application. It allows transfer data between your ZohoCRM environments and Workbench.
Benefits of Using ZohoCRM Workbench
- Minimal, pretty fast and really easy to use.
- Can perform both COQL as well as REST.
- Work with any standard modules as well as custom modules.
- Can make use of Advanced REST Mode.
- You can host this in your server (Self Hosted).
COQL, Modules, Records, other common ZohoCRM terms
COQL
COQL (CRM Object Query Language) is a query language used to retrieve data from ZohoCRM databases. It is designed by ZohoCRM for quering the ZohoCRM objects and their fields to fetch specific records that match certain criteria. Is is similar to standard SQL but with some changes that allows to work with ZohoCRM objects.
Since it is based on standard SQL, it allows various querying techniques like get only required fields, filtering, sorting, aggregation and traversing relationships between objects.
Modules
Modules represent a table that stores specific types of data. It is analogous to a column in a spreadsheet. Simply Modules are entities that holds records with related information.
Here are some of the standard modules in Zoho CRM:
- Leads
- Contacts
- Accounts
- Task
- Notes
- Attachments
You can create your own modules based on your business needs
Records vs Fields
Records are instance of Objects that contains specific data. whereas Fields are attributes or columns of the records such as name, phone, email, etc.
Similar to Modules, we can have standard ZohoCRM fields along with organization specific custom fields.
Pipeline
A visual representation of your sales funnel, showing the progress of your opportunities from lead to deal. It helps to track the progress of the sales team. Zoho allows us to use both pre-built pipelines or custom pipelines that you can customize.
You will need to specify the following when you are creating pipeline in ZohoCRM:
- Stages - Based on your sales process.
- Criteria - For moving opportunities between two pipeline stages.
- Metrics - To track for each stages.
Workflow
A set of automated rules that execute before or after specific events like lead creation, updating or even deletion. It allows developers to perform anything based on the events and their business logic.
Some example scenarios:
- Send a welcome email to a lead when they are created in your CRM.
- Update lead status whenever the lead stage changes in the pipeline.
- Assign the task to the sales representative when the lead reaches a certain stage in your sales pipeline.
- Alert customer when their subscription is about to end.
Customization
The ability to change the look (UI) and feel of Zoho CRM to match your client, branding and business needs.
ZohoCRM Configuration
You can sign up for a free ZohoCRM developer account here.
Once You are created your account, Follow the steps carefully,
You're required to create a client app when using the OAuth 2.0 JWT bearer authorization flow.
Open Zoho API Console from here and Create a new connected app by clicking Add Client
in top right corner (Refer Screenshot Below).
![App Manager](/_next/image?url=%2Fstatic%2Fimages%2Fblog%2Fzoho%2Fconsole.png&w=3840&q=75)
- Now you have to select the Client Type from these option. Since this is a browser based application, you can choose
Client-based Applications
.
![Application Type](/_next/image?url=%2Fstatic%2Fimages%2Fblog%2Fzoho%2FApplication.png&w=3840&q=75)
- Fill basic informations like client name, Homepage URL, authorized URL, Domain. Keep localhost for now. You can change this to your website url once you moved to production. (Refer Screenshot Below)
![App Details](/_next/image?url=%2Fstatic%2Fimages%2Fblog%2Fzoho%2FAppDetails.png&w=3840&q=75)
Click save ZohoCRM to create a app for you with Client ID
and Client Secret
.
Once created, click on manage consumer details, make a note of Client ID
and Client Secret
and fill these details in you .env file.
Running Code Locally
- Clone the project
git clone https://github.com/gokulselvan-r/zoho-workbench
- Go to the project directory
cd zoho-workbench
- Install dependencies
npm install
- Start the server
npm run build-n-start
Output
If you open http://localhost:8080
after running the code sucessfully, It'll look like below.
![Login](/_next/image?url=%2Fstatic%2Fimages%2Fblog%2Fzoho%2FLogin.png&w=3840&q=75)
![ZohoCRM Login](/_next/image?url=%2Fstatic%2Fimages%2Fblog%2Fzoho%2FZOHOLogin.png&w=3840&q=75)
![COQL Before](/_next/image?url=%2Fstatic%2Fimages%2Fblog%2Fzoho%2FCOQL1.png&w=3840&q=75)
![COQL After](/_next/image?url=%2Fstatic%2Fimages%2Fblog%2Fzoho%2FCOQL2.png&w=3840&q=75)
![REST Before](/_next/image?url=%2Fstatic%2Fimages%2Fblog%2Fzoho%2FREST1.png&w=3840&q=75)
Conclusion
This minimal ZohoCRM workbench provides various capabilities for developers working with the ZohoCRM platform. It allows the developers to test and troubleshoot their integrations with the ZohoCRM. It provides an environment for executing REST and COQL requests, examining response data, and debugging any issues that may arise when executing REST and COQL requests.