Zoho: Email Deliverability / SPF / DKIM / DMARC / Toolkit
- Category: Zoho
- Hits: 24903
A quick article on the SPF & DKIM setup to improve email deliverability from a ZohoApp and methods to check.
Why?
Not sure how I came across it as most of our customers don't use ZohoMail, but there is a Zoho Toolkit to run some checks on the email deliverability for a customer: https://zohomail.tools/#runChecks.
How?
So first I'll outline the steps to set this up in ZohoCRM and then how to troubleshoot issues with this. One important thing to note is that the setup needs to be done by whoever manages the domain for the client.
ZohoCRM Webhook: Create ZohoInventory Records from an eBay order
- Category: Zoho
- Hits: 34161
This is a not-so-quick article that queries an eBay order and creates the relevant ZohoInventory item, contact, sales order, package slip, shipment order, invoice, payment records...
Why?
I'm storing this here as a reference and taking the bits that I need for the various clients that request an eBay integration. This is a comprehensive snippet which does the whole lot.
How?
Using the method of "mega-functions", here is the code snippet for one function which will accept as parameter the eBay order reference and generate all the respective records in Zoho Inventory. We're using a ZohoCRM webhook, because CRM webhooks run more reliably then the ones we have found in ZohoBooks and other Zoho Apps.
Zoho Cliq: Integrate OpenAI and ChatGPT 3.5 Turbo
- Category: Zoho
- Hits: 44592
A quick article on my adaptation of some code posted by Poorvik Palanikumar on the Zoho Community Forums to connect a ZohoCliq to the OpenAI API and ChatGPT... Note that I have another article for those who want to integrate ChatGPT with ZohoZIA.
Why?
Previously, I would edit the message handlers of a Cliq Bot I created but it would only understand the questions I have programmed it to and respond with the responses I programmed it to answer with. Any variations of the questions it did not understand, it would return a response similar to Siri or Ask Google where it includes the keywords in a "Search the web..." task.
ChatGPT by OpenAI is viral at the time of print
How?
The basics of setting this up would be to setup a bot in ZohoCliq and then to edit either a message handler or participation handler. As for the usage, simply ask the Cliq Bot a question and it will forward the query and respond with the response from the OpenAI API.
Zoho Deluge: Get All Orders from eBay
- Category: Zoho
- Hits: 21689
Following on from my article: ZohoCRM: Get All eBay Active Listings, this is how to get all the orders from a client's eBay.
Why?
Our use-case is a data migration from eBay to a fresh instance of Zoho Inventory. In this task, we are simply getting a CSV with all the order IDs for a particular year output as a spreadsheet.
How?
Similar to how we retrieved the eBay active listings (see article link above), we're going to use the GetOrders call for order (sales) management.
ZohoCRM: Get Organization Business Hours using Deluge/API
- Category: Zoho
- Hits: 26981
A super quick article on getting the business hours set in ZohoCRM.
Why?
When creating a booking system in ZohoCreator, I want to enter the default working shift for an employee either existing or that has been added to the system based on the business hours set at the organization level in ZohoCRM.
How?
Using an invokeURL, the key here is you'll find them in the settings; so check that your connection has the scope to access both Organization details (ZohoCRM.org.READ is enough - perhaps optional) and access to Settings (ZohoCRM.settings.READ). I'm calling mine "mycrmconnection".
ZohoDeluge: Check Shipment Status via DHL API
- Category: Zoho
- Hits: 26436
A quick note here on how to connect to the DHL API and check on a package given a tracking number.
Why?
In our megafunction to generate a customer, a product/item, a sales order, an invoice, a package slip/delivery note, a shipment order; as well as record any payments, inventory adjustments, status changes; all from an eBay Order coming into the system via a webhook... I would like to mark a shipment as delivered only if the courier, in this case DHL, confirms the tracked order was delivered.
How?
So first I'll give some brief instructions on how to get an API key from DHL as a developer and then I'll include the code to query the shipment status based on a tracking number.
ZohoAnalytics: Pivot Campaigns vs Contacts
- Category: Zoho
- Hits: 14761
A very quick article of a quick solution but at least a working example of an ANSI-SQL (ZohoSQL) query pivoting campaign results vs contacts.
Why?
Simply the client wanted a report on customers on each row and then the campaigns as columns.
What we want:
Contact Name Lead Source Campaign 1 Campaign 2 Campaign 3 ---------------- --------------- -------------- -------------- -------------- Joel Google Ads Accepted Invited Sent Me Web Invited Accepted Sent Myself Walk-In Accepted Sent InvitedThe catch is that our campaign names are in data rows not individual columns.
How?
There may be ways of doing this using the GUI and a "Pivot View" report but I always resort to a query when I get confused with the GUI:
ZohoCRM: Get All eBay Active Listings
- Category: Zoho
- Hits: 25161
Another one of these articles talking about getting all the active product listings from eBay for a specific client.
Why?
Our use-case scenario here is that we want to get an inventory level or stock check of all the products that are currently listed in a client's eBay store; we want to get the stock level and then use this data to synchronize with data held in Zoho Inventory...
How?
So we're going to use a ZohoCRM function to get this file which we can run on demand. Why not in Zoho Inventory or any other Zoho app? Because we like to challenge ourselves...
Page 12 of 25
Credit where Credit is Due:
Feel free to copy, redistribute and share this information. All that we ask is that you attribute credit and possibly even a link back to this website as it really helps in our search engine rankings.
Disclaimer: Please note that the information provided on this website is intended for informational purposes only and does not represent a warranty. The opinions expressed are those of the author only. We recommend testing any solutions in a development environment before implementing them in production. The articles are based on our good faith efforts and were current at the time of writing, reflecting our practical experience in a commercial setting.
Thank you for visiting and, as always, we hope this website was of some use to you!
Kind Regards,
Joel Lipman
www.joellipman.com
Latest Articles
Accreditation
Donate & Support
If you like my content, and would like to support this sharing site, feel free to donate using a method below:

bc1qf6elrdxc968h0k673l2djc9wrpazhqtxw8qqp4
0xb038962F3809b425D661EF5D22294Cf45E02FebF
Paypal:

Bitcoin:
bc1qf6elrdxc968h0k673l2djc9wrpazhqtxw8qqp4
Ethereum:
0xb038962F3809b425D661EF5D22294Cf45E02FebF

