Plug Sample #8 - Track your ecommerce order real-time with Zobot - Zoho Commerce integration

Plug Sample #8 - Track your ecommerce order real-time with Zobot - Zoho Commerce integration

Hi Everyone!

Zoho SalesIQ's Zobot is an intelligent tool to increase customer engagement and provide support, especially in the e-commerce industry. A crucial aspect of e-commerce is ensuring your customers can easily keep track of their orders. Just imagine your Zobot providing real-time updates on your customers' order status, tracking URL, shipment details, and estimated delivery dates. Sounds cool, right? That's what we are going to look at in this post. 



Zoho Commerce is a comprehensive e-commerce platform for building a website, accepting orders, tracking inventory, processing payments, and more. With SalesIQ's Zobot seamlessly integrated with Zoho Commerce, you can now provide exceptional support and prioritize convenience for your customers by making your bot actively promote your key offers, assist in tracking orders, create support tickets, and much more. 

To learn more about chatbots usage in the e-commerce industry, check out our exclusive webinar and help article. Now, let's dive into the step-by-step process of how to make your bot track orders with the codeless bot builder.

Overview of tracking orders



Step 1 - Create a connection between SalesIQ and Zoho Commerce.

  •  In your SalesIQ Dashboard, navigate to Settings > Developers > Plugs > Click on Add.
  •  Provide your plug a name, and description, select the Platform as SalesIQ Scripts, and finally, click on Connection to your left bottom. You will be redirected to the connection interface.

  •  Click on Create connection at the top right corner. Under Default connection, select Zoho OAuth service. 

  • Provide your connection name, connection link name, and choose the scopes below.
    • ZohoCommerce.salesorders.READ
    • ZohoCommerce.items.READ
  • Click on Create And Connect to connect Zoho SalesIQ and Zoho Commerce. 


  • Upon successful authentication,  Zoho SalesIQ will be connected with Zoho Commerce. 
Note: The Connection Link Name will be used in the scripts to invoke URL tasks.
 

 

Step 2 - Fetch the "Shipped" orders (Plug 1)

First, let's look at how to list all the shipped orders of the visitor from Zoho Commerce. To do this, we need the email address of the visitor. By List all sales orders API, the bot can fetch all the orders from the visitors (email). Then using the status as a filter, all the Shipped orders can be fetched and displayed to the visitors as options. 

Input Parameter:
  • Name: email | Type: Email
Output Parameter: 
  • Name: orderList | Type : Options list


Copy/paste the below code to list all the shipped orders. 
 
  1. response = Map();
  2. if(session.containsKey("email"))
  3. {
  4. email = session.get("email").get("value");
  5. }
  6. params = Map();
  7. params.put("email",email);
  8. params.put("page","1");
  9. params.put("per_page","5");
  10. header = Map();
  11. //Insert your Zoho Commerce Org ID (From your Zoho Commerce, navigate to the Store > Settings > Organization Profile > Organization ID)
  12. header.put("X-com-zoho-store-organizationid","<org_ID>");
  13. check_status = invokeurl
  14. [
  15. url :"https://commerce.zoho.com/store/api/v1/salesorders"
  16. type :GET
  17. parameters:params
  18. headers:header
  19. connection:"zohocommerce"
  20. ];
  21. array = check_status.get("salesorders");
  22. optionList = List();
  23. for each  entry in array
  24. {
  25. salesorder_id = entry.get("salesorder_id");
  26. URL = "https://commerce.zoho.com/store/api/v1/salesorders/" + salesorder_id;
  27. get_order_details = invokeurl
  28. [
  29. url :URL
  30. type :GET
  31. headers:header
  32. connection:"zohocommerce"
  33. ];
  34. shipping_status = get_order_details.get("salesorder").toList().get(0).get("shipped_status").toUpperCase();
  35. //Printing the shipped orders
  36. if(shipping_status == "SHIPPED")
  37. {
  38. product_ordered = get_order_details.get("salesorder").get("line_items").toList().get(0).get("name");
  39. quantity = get_order_details.get("salesorder").get("line_items").toList().get(0).get("quantity").toNumber();
  40. display_text = product_ordered + " (" + quantity + ")";
  41. optionList.add({"id":salesorder_id,"text":display_text});
  42. }
  43. }
  44. response.put("orderList",optionList);
  45. return response;
  • Then, click Save, preview the plug and Publish it. 
Note: API invoked in the plug List all sales orders 

Step 3- Getting order details (Plug 2)

In the previous step, we fetched all the "Shipped" orders and displayed them to the visitors. When they click on a specific order, the bot will get the order details from the Retrieve sales order API and provide them to the visitor. 

Input Parameter:
  • Name : orderID | Type : String
Output Parameter: 
  • Name: shippingAddress | Type : String
  • Name: deliveredDate | Type : String
  • Name: orderName | Type : String
  • Name: orderNumber | Type : String
  • Name: quantity | Type : Number
  • Name: orderCost | Type : Number
  • Name: trackingUrl | Type : String
  • Name: shippedDate | Type : String
  • Name: paymentMode | Type : String
  • Name: shippingStatus | Type : String


 Copy and paste the below code to get the order details.
 
  1. if(session.containsKey("orderID"))
  2. {
  3. salesorder_id = session.get("orderID").get("value");
  4. }
  5. header = Map();
  6. //Insert your Zoho Commerce Org ID (From your Zoho Commerce, navigate to the Store > Settings > Organization Profile > Organization ID)
  7. header.put("X-com-zoho-store-organizationid","<ord_ID>");
  8. URL = "https://commerce.zoho.com/store/api/v1/salesorders/" + salesorder_id;
  9. get_order_details = invokeurl
  10. [
  11. url :URL
  12. type :GET
  13. headers:header
  14. connection:"zohocommerce"
  15. ];
  16. order_number = get_order_details.get("salesorder").toList().get(0).get("salesorder_number");
  17. product_ordered = get_order_details.get("salesorder").get("line_items").toList().get(0).get("name");
  18. cost = get_order_details.get("salesorder").get("line_items").toList().get(0).get("rate").toNumber();
  19. quantity = get_order_details.get("salesorder").get("line_items").toList().get(0).get("quantity").toNumber();
  20. payment_mode = get_order_details.get("salesorder").get("offline_payment_details").toList().get(0).get("payment_mode");
  21. shipping_address = get_order_details.get("salesorder").get("shipping_address").toList().get(0).get("address");
  22. tracking_url = get_order_details.get("salesorder").get("packages").toList().get(0).get("status_message");
  23. shipping_address = get_order_details.get("salesorder").get("shipping_address").toList().get(0).get("address");
  24. shipping_status = get_order_details.get("salesorder").toList().get(0).get("shipped_status").toUpperCase();
  25. if(shipping_status == "FULFILLED")
  26. {
  27. shipping_status = "Delivered";
  28. tracking_url = "No tracking URL";
  29. delivered_date = get_order_details.get("salesorder").get("packages").toList().get(0).get("shipment_date");
  30. shipped_date = get_order_details.get("salesorder").get("packages").toList().get(0).get("shipment_date");
  31. }
  32. else if(shipping_status == "SHIPPED")
  33. {
  34. shipping_status = "Shipped";
  35. tracking_url = get_order_details.get("salesorder").get("packages").toList().get(0).get("status_message");
  36. shipped_date = get_order_details.get("salesorder").get("packages").toList().get(0).get("shipment_date");
  37. delivered_date = get_order_details.get("salesorder").get("packages").toList().get(0).get("shipment_date");
  38. }
  39. else
  40. {
  41. shipping_status = "Yet to Ship";
  42. tracking_url = "No tracking URL available";
  43. shipped_date = "NA";
  44. delivered_date = "NA";
  45. }
  46. response = Map();
  47. response.put("orderNumber",order_number);
  48. response.put("orderCost",cost);
  49. response.put("orderName",product_ordered);
  50. response.put("quantity",quantity);
  51. response.put("shippingStatus",shipping_status);
  52. response.put("paymentMode",payment_mode);
  53. response.put("shippingAddress",shipping_address);
  54. response.put("trackingUrl",tracking_url);
  55. response.put("shippedDate",shipped_date);
  56. response.put("deliveredDate",delivered_date);
  57. return response;
  • Then, click Save, preview the plug and Publish it. 
Note: API invoked in the plug Retrieve sales order
 

Step 4 - Adding these plugs to the Codeless bot builder

  • Navigate to Settings > Bot > Add, provide the necessary information, and select Codeless Bot as a bot platform or open an existing bot.
  • To list the shipped orders, get the email address from the visitor by email card. 
  • Then, select the Plugs under Action Cards and select listShippedOrder (Plug 1). In the input parameters, select the Email context variable and provide a name (tracking.order) to save the list of shipped orders. 


  • Next, use the Single choice card to display all the shipped orders. Provide an option "Can't find my order" and click on dynamic suggestions and select the (tracking.order) variable. 

  • Next, click on Save in bot context (post.tracking.order) and store the visitor's order choice. 

  • Then, use the criteria router to route the flow based on the visitor's choice. 

  • After that, select the orderDetails plug in Plug card. And provide the post.tracking.order as the input and provide names for the outputs. 



  • Finally, use these context variables by typing % in the Send message card to display the order details to track orders. 

  • Also, use the markups to provide the tracking URL as a hyperlink.  


Bot Preview (Output)

  • The bot will ask for the email address and then provide the "shipped" orders list.  

  • Then the visitor selects one order, and the bot will provide the information about the order.  

  • Once the bot flow is complete, click Publish to deploy Zobot on your website or online store. Zobot will be ready to engage with your customers, provide support, and assist with their purchasing journey.
 
Related links:
To know more about the features of Zobot, kindly visit our Resources Section. 

    Access your files securely from anywhere


          All-in-one knowledge management and training platform for your employees and customers.






                                Zoho Developer Community




                                                      • Desk Community Learning Series


                                                      • Digest


                                                      • Functions


                                                      • Meetups


                                                      • Kbase


                                                      • Resources


                                                      • Glossary


                                                      • Desk Marketplace


                                                      • MVP Corner


                                                      • Word of the Day


                                                      • Ask the Experts





                                                                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

                                                                                                  Get Started. Write Away!

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

                                                                                                    Zoho CRM コンテンツ





                                                                                                      Nederlandse Hulpbronnen


                                                                                                          ご検討中の方





                                                                                                                    • Recent Topics

                                                                                                                    • Zoho Analytics Aggregates

                                                                                                                      I have the attached report that lists Jobs and I want to aggregate the totals of Total Budgets, Total Bills and Difference for each Construction Stage. Can anyone tell me how I aggregate them?
                                                                                                                    • Customer/Vendor Portal session duration - can it be extended?

                                                                                                                      Hi all, We'd like to know how long the login session lasts for the Customer/Vendor Portal in Zoho Books, and whether there's any way to extend it (either through settings or via support/API). Right now this is causing a pretty poor experience for our
                                                                                                                    • Last Name Required

                                                                                                                      Is there a way in CRM with the last name field to make it not mandatory? We are taking leads from a web form created in ZoHo CRM Form builder Form fields for this specific form are: First Name E-Mail Question/Comment Previously when using another form
                                                                                                                    • Cannot receive emails

                                                                                                                      Sent one days ago still no feedbacks, cannot call customer services number
                                                                                                                    • Rating system button not translated to Spanish + "Done"

                                                                                                                      I've run into a issue with the new system for rating support interactions when the chat is ended: Missing Spanish translation: The button is still showing in English as "Done," even though the interface language is set to Spanish. It should display something
                                                                                                                    • Deprecation Notice: OpenAI Assistants API will be shut down on August 26, 2026

                                                                                                                      I recieved this email from openAI what does it means for us that are using the integration and what should we do? Earlier this year, we shared our plan to deprecate the Assistants API once the Responses API reached feature parity. With the launch of Conversations,
                                                                                                                    • Zoho Cliq not working on airplanes

                                                                                                                      Hi, My team and I have been having this constant issue of cliq not working when connected to an airplane's wifi. Is there a reason for this? We have tried on different Airlines and it doesn't work on any of them. We need assistance here since we are constantly
                                                                                                                    • Completed Calls don't associate with Scheduled Calls

                                                                                                                      I schedule calls at specific times so that they are easily viewable on my phone. I open a given call on my phone and use the call icon at the bottom of the screen. I complete the call and select "yes" when asked if I want to log the call. I enter the
                                                                                                                    • Need Parallel Transitions for Zoho Desk Blueprint

                                                                                                                      Zoho CRM's Blueprint already supports Parallel/Multiple Transitions, letting multiple transitions run simultaneously between two states (refer to https://help.zoho.com/portal/en/kb/crm/process-management/blueprint/articles/parallel-and-multiple-transitions-configuration-and-usage#Using_Parallel_Transitions)
                                                                                                                    • Zoho Forms integration Google Sheets

                                                                                                                      Hi, quick one. I wonder if you can help. I have a Zoho Form integrated to a Google Sheet. The fields are showing across the top, but no records are there. I have checked in Zoho Forms to see if there have been any failed integrations, but there are none.
                                                                                                                    • ZoHo Mail & MCP connectors

                                                                                                                      Is ZoHo working an MCP connector for mail?? I find it very useful in Gmail to have Claude summarize messages for me. Thanks Jim P.S. Sorry if this is the incorrect forum. Mods please adjust as necessary.
                                                                                                                    • Introducing the Required Skills field for Job Openings

                                                                                                                      We're excited to announce a new enhancement to the Job Openings module - the Required Skills field, formerly known as the Skillset field. This enhancement brings improved functionality and a fresh UI to help you define your job requirements effortlessly.
                                                                                                                    • ZDialer app sign in replys: Account doesn't exist

                                                                                                                      I couldn't find Zoho Voice for a category. Problem: I have an active Zoho account with Zoho Voice and Zoho CRM. I can successfully sign into both services from my computer using my email address. However, the ZDialer mobile app redirects to accounts.zoho.com
                                                                                                                    • Checking validity of fields when converting Leads

                                                                                                                      Hello, When converting a lead to a contact (and Company), we want to check beforehand if some fields are filled. Ideally a script or action should be triggered to check the fields and then continue if all is fine, or display a message and stop the process. Reasons: Leads are created with few data at the beginning (often name and email), and with time the profile is augmented. Until it reaches some minimal data, this leads shouldn't be convertable as Contacts. Contacts are people we are making business
                                                                                                                    • Is it possible to have conditional pages?

                                                                                                                      We have a Document, which consists of multiple different subdocuments. We want to have the subdocuments as pages inside a doc and only show them in specific cases. Is it possible to have conditional pages inside of a mail merge based on CRM data?
                                                                                                                    • Reports not adding up

                                                                                                                      I have a subform that we add lines for costs. These are added up in the aggregate (see image 1). When I pulled these into reports, I link the aggregate subform cost, but it keeps adding each subform line, instead of just the PO Subject and the numbers
                                                                                                                    • 【西日本初開催】「AI and DX Summit 2026」のご案内

                                                                                                                      ユーザーの皆さま、こんにちは! 西日本初開催となるZoho ユーザー / 検討中の方々向けイベントのご紹介です。 AI・DX大型カンファレンス「AI and DX Summit 2026」を、2026年7月16日(木)に開催します。 会場は、ウォルドーフ・アストリア大阪。 グラングリーン大阪直結のラグジュアリーな空間で、AIとDXの最新トレンド、実践事例、 展示、ネットワーキングが集結する、特別な1日をお届けします。 👉イベントページを見る ━━━━━━━━━━━━━━━ AIとDXの“今”を、体感。
                                                                                                                    • creating an alias

                                                                                                                      your instructions for creating an alias are wrong. there is no add alias in my mail account. also i dont have a control panel link just a settings link how do i really make an alias
                                                                                                                    • Set Mandatory Lookup Fields in Ticket Layout

                                                                                                                      I added a custom module called 'Site' in the desk. I also added a lookup field 'Site' in the ticket layout. Now, I want the 'Site' field to be mandatory in the blueprint transition. How can I do that?
                                                                                                                    • viewing deactivated users on a calendar

                                                                                                                      I was just on help chat Me: Ok, Can i verify that I understand correctly? If i fire someone, I need to deactivate them in zoho asap so they don't have access to company data (like customers). When I do that, there is no way to see them on the CRM calendar
                                                                                                                    • Non-depreciating fixed asset

                                                                                                                      Hi! There are non-depreciable fixed assets (e.g. land). It would be very useful to be able to create a new type of fixed asset (within the fixed assets module) with a ‘No depreciation’ depreciation method. There is always the option of recording land
                                                                                                                    • Reconciliation: don't auto-select transactions outside the entered Period

                                                                                                                      When initiating a reconciliation for a defined Period (say April 1 to April 30), Zoho Books auto-checks transactions whose Statement Detail dates fall after the period end date. With "Show based on grouped bank statements" enabled (the default), the screen
                                                                                                                    • Settling Credit Card Payments

                                                                                                                      Hello All, Been using Zoho books recently. The banks have been configured to add credit cards as a liability account in the chart of accounts. we have incurred payments and have recorded these expenses as paid thru credit card However when it comes to
                                                                                                                    • Integrations of freelancing websites

                                                                                                                      It is a customized effort which we require to be implemented on our Zoho recruit. We want that Upwork and Freelancer and other such freelancing websites get integrated into our Zoho Recruit, so that, any communication which we do with the candidates from those websites gets directly recorded on our Zoho recruit and we don't have to move back and forth by opening any other application other than Zoho. If this can be done, we think of managing the entire communication through Zoho recruit and use it
                                                                                                                    • Create Package From A Picklist

                                                                                                                      Dear Zoho, Can it be made possible to create a package from a picklist? The reason our company makes a picklist is for that to become a package Our sales orders have 600-1000 items I hope that makes it clear that it's hard to delete 990 items when we
                                                                                                                    • Ability to Set Client Name During Portal Invitation

                                                                                                                      Hi Zoho Team, We would like to suggest an important enhancement to the Zoho Creator Client Portal functionality. Zoho Creator recently introduced the option to set a client’s display name in the Client Portal settings, which is very helpful for creating
                                                                                                                    • Once the photo is clicked, the image is not making a reliable match against profile image on the organization's Zoho People database.

                                                                                                                      Please advise how to improve reliability of the kiosk image match for clocking in/out. We are trialing this however not having success after the first image match. I'm guessing these matched because the profile image was taken the same day and the employee
                                                                                                                    • Announcing new features in Trident for Mac (1.38.0)

                                                                                                                      Hello everyone! We’re excited to introduce the latest updates to Trident, which are designed to take workplace communication to the next level. Let’s dive into the details. Access message drafts from anywhere. Have you ever typed out a detailed response
                                                                                                                    • Direct Access and Better Search for Zoho Quartz Recordings

                                                                                                                      Hi Zoho Team, We would like to request a few enhancements to improve how Zoho Quartz recordings are accessed and managed after being submitted to Zoho Support. Current Limitation: After submitting a Quartz recording, the related Zoho Support ticket displays
                                                                                                                    • Celebrating the businesses behind Bigin: Customer Awards 2026

                                                                                                                      Hello Biginners, We're excited to announce the very first Bigin Customer Awards! If Bigin has played a role in your organization's journey, we'd love to hear about it. Share your story for a chance to be recognized among the best Bigin users across industries.
                                                                                                                    • What's New in Zoho Analytics - June 2026

                                                                                                                      Hello Users! This month is about meeting your data wherever it lives: reaching it from AI assistants, bringing it in from more sources, and keeping it flowing with less manual effort. Here's what's new across Ask Zia and AI, data import, integrations,
                                                                                                                    • Quick response appreciated - Vertical line on line graph

                                                                                                                      Hi, I need to present a line graph showing historical and future data points. What I'd like to do is add a vertical line to denote the current date - to clearly show what is past and what is future. How can I achieve this please? Thank you Marc
                                                                                                                    • Zoho forms with iframe and Javascript embedding not working

                                                                                                                      I have integrated zoho forms with iframe and Javascript embedding in my Ruby on Rails application.There is problem form action are not working on clcik on just Chrome browser mobile view ,it's working on Firefox and others.So, what is the solution of
                                                                                                                    • Agentes Zia en Zoho CRM: ¿Qué son los agentes de IA?

                                                                                                                      Los agentes de IA son entidades digitales autónomas impulsadas por inteligencia artificial que pueden actuar de forma similar a un empleado humano. Los chatbots convencionales y la IA generativa pueden proporcionar información o redactar contenido, y
                                                                                                                    • [Free webinar] Creator Tech Connect - Zoho Creator product updates, July 2026

                                                                                                                      Hello everyone, We’re excited to invite you to another edition of the Creator Tech Connect webinar. About Creator Tech Connect The Creator Tech Connect series is a free monthly webinar comprised of pure technical sessions, where we dive deep into the
                                                                                                                    • What's New in Zoho POS - June 2026

                                                                                                                      Hello everyone, Welcome to Zoho POS’s monthly update, where we share our latest feature updates, enhancements, events, and more. Let’s take a look at how June went. Zoho POS for macOS We are excited to announce that we extended our front end billing application
                                                                                                                    • Different languages for users

                                                                                                                      Hello, Do you plan to enable individual users to select their languages for interface? Currently language can be changed for everyone - it looks like a settings for a whole portal, which is not good when you are working internationally. Best regards,
                                                                                                                    • People 5.0 widget and API questions

                                                                                                                      While creating Widget for People 5 I found couple issues that I can’t find answer on my own: 1) How to get leave requests according to this API https://www.zoho.com/people/api/get-records-v2.html. I tried: requestData = { "url": "https://people.zoho.eu/api/v2/leavetracker/leaves/records",
                                                                                                                    • How to Fix the Corrupted Outlook 2019 .pst file on Windows safely?

                                                                                                                      There are multiple reasons to get corrupted PST files (due to a power failure, system crash, or forced shutdown) and several other reasons. If You are using this ScanePST.EXE Microsoft inbuilt recovery tool, it only supports the minor corruption issue
                                                                                                                    • What's New in the Trips Experience

                                                                                                                      We've redesigned the Trips module to make trip management simpler and more intuitive. Here's a quick look at what's changed. Simplified Trip Creation and Itinerary Management Flexible Trip Creation: You can now create and save a trip without adding itineraries
                                                                                                                    • Next Page