Using schedules and workflow functions

Using schedules and workflow functions

Hello Biginners,

In our previous forum post, we explored install and uninstall actions and learned how to trigger custom logic the moment a topping is added or removed from an organization. In this post, we'll look at how to automate actions during regular, everyday use. To achieve this, we'll explore two important features in the Bigin Developer Console: schedules and workflow functions.

Together, schedules and workflow functions allow us to build toppings that respond to record events in real time and monitor conditions over time. To understand how these features work, let's walk through a common requirement in a customer support pipeline.

The challenge: Avoiding communication gaps and idle tickets

In a customer support pipeline, clear communication and timely follow-ups are crucial. A ticket represents a customer request, and delay affects customer trust.

There are two common scenarios that help make managing support tickets smoother for teams:
  1. When a ticket is created, sending an acknowledgment email to the customer and notifying the assigned ticket owner with customized content ensures clear and immediate communication.
  2. After a ticket is assigned, setting up a structured reminder system for tickets that remain idle in the same stage helps prevent them from being overlooked and ensures timely follow-ups.
We can build a topping to handle these scenarios.

Overview of the topping

We'll build a follow-up support automation topping that handles both real-time communication and time-based monitoring.

This topping will include:
  1. A workflow function that is triggered when a ticket is created. It sends an acknowledgement email to the customer saying that their request has been received and also sends a notification to the ticket owner about the new ticket.
  2. A scheduled function that runs 24 hours after a ticket is created. If the ticket remains open beyond 24 hours, the topping sends a reminder email to the ticket owner every 12 hours until the ticket is closed, ensuring timely follow-up.
We can achieve this by building a topping using the features available in the Bigin Developer Console, like workflows, schedules, and functions.

Setting up the topping

A topping needs to be created using the Bigin Developer Center. For detailed instructions on creating a topping, refer to this post for a tutorial.

Once you've created a topping and accessed the Bigin Developer Console, the next step is to create the required service connection.

Since the topping needs to have access to the Bigin pipelines and ticket owner details, you need to create a default service connection for Bigin with the scopes ZohoBigin.modules.Pipelines.ALL and ZohoBigin.org.ALL.

For detailed instructions on creating a default service connection, refer to this post for a tutorial.

After creating the Bigin connection, you can proceed with the first part of the topping implementation, which handles newly created tickets.

Creating a workflow rule for new tickets

To configure the workflow, navigate to the Automate section in the left panel of the Bigin Developer Console and select Workflow. Create a new workflow rule in the Pipelines module.


In the workflow configuration, set the rule to execute based on a Record action and choose Create so that it triggers whenever a new ticket is created. Under conditions, select Pipelines matching certain conditions and define the condition as Pipeline is Customer Support Standard. This ensures that the rule applies only to tickets created in that specific pipeline. Under Instant Actions, you need to associate the workflow with a custom function so that it executes immediately when the workflow is triggered.


This function will fetch the ticket details, send an acknowledgement email to the customer, and notify the assigned ticket owner.

Below is the code for sending the acknowledgment emails when a new ticket is created in the customer support pipeline:

Workflow Function – WorkflowFunction.txt – Please find the attachment with the code for sending emails via workflow


Once saved and activated, the workflow will automatically send the acknowledgement email every time a new ticket is created in the support pipeline.

While workflows react instantly to events, schedules allow us to monitor records over time. In simple terms, workflows respond immediately, and schedules keep watch in the background.

Now, let's handle the second part of the topping use case: monitoring tickets that remain unresolved for too long. For that, we need to create a schedule and associate it with a function.

Let's move into the scheduler implementation.

Creating a schedule for idle tickets

A schedule is a time-based execution mechanism that allows a function to run automatically at defined intervals. Unlike workflows, which react to record actions, schedules operate independently and continuously in the background.

For our use case, we need to monitor tickets after they're created and ensure they aren't left unresolved for long periods. This means the system should periodically check existing records, evaluate their status, and take action if certain conditions are met. Since this requirement is based on time rather than a user-triggered event, a schedule is the best solution.

To implement this, navigate to the Schedules section in the Bigin Developer Console and create a new schedule. Once you provide a name, choose Writing Function for the Function to be executed option.


You'll be redirected to the deluge editor to implement the reminder logic.

In this function, you need to implement the reminder logic that evaluates each ticket and determines whether follow-up action is required. The function should retrieve the necessary ticket details, compare the ticket’s created time with the current time, verify that the ticket isn't already resolved, and then trigger a reminder email to the assigned owner if it's been longer than the set time.

The code below implements the logic for scheduled reminder:

Scheduler Function – SchedulerFunction.txt – Please find the attachment with the code for sending emails via schedule

Once you save the script, you’ll be redirected to the scheduler configuration page.

Here, provide a schedule name and choose an upcoming date and time for the Execution Start Date, since schedules must begin in the future. Under Frequency, select Hourly and configure it to run every 12 hours to match the reminder requirement. In the Ends section, choose Never because we want the schedule to continue running without stopping.


After saving, the scheduler will automatically execute the function at the defined intervals.

At this point, everything for the topping is in place. You can now test and publish it.

Once the topping is published, whenever a new ticket is created in the Customer Support Pipeline, an acknowledgment email will be sent to the customer and a notification email will be sent to the ticket owner.




If the ticket remains in an unresolved stage for more than 24 hours, the scheduled function will trigger and send a reminder email to the ticket owner every 12 hours until the ticket is resolved.


In this post, we explored how to use workflows and schedules together to automate real-time actions and time-based monitoring in a Bigin topping. The workflow sends emails when a ticket is created, and the schedule checks tickets periodically to send reminders if they remain unresolved. This approach helps ensure consistent follow-up without manual monitoring.

Stay tuned for more posts where we'll dive deeper into additional features and best practices for developing powerful toppings in Bigin.

    • Recent Topics

    • Project Management Bulletin: March, 2026

      We are passionate about equipping our users with efficient solutions that help them run their businesses successfully. Our collective efforts over the past 2 years have culminated in the launch of Sprints 3.0— built with reliable features, impactful integrations,
    • Composite items inside of composite items; bill of materials needed

      Hi Zoho and Everyone, I am evaluating whether Zoho Inventory will work for my small business. I grow and harvest herbs and spices but also get from wholesalers. I use all these items to make herbal teas, but also sell them as individual items on my Shopify store and Etsy. I discovered the composite item bundling and am wondering if I could get some assistance since there is no bill of materials: Our herbal company's best selling tea is a sleepytime tea. Sleepytime Tea can be purchased in three weights
    • Automation Series: Sync Task Status with Zoho Desk Tickets

      In Zoho Projects, you can automatically close and reopen an associated Zoho Desk ticket when the status of a task is changed. This syncs the current state of the task with the support ticket without manual updates. For instance, a support team handling
    • Auto-Generate Line Numbers in Item Table Using HTML & CSS Counters (Zoho Books & Zoho Inventory Custom Templates)

      <div> <style> /* Start counter from 0 inside tbody */ tbody#lineitem { counter-reset: rowNumber; } /* Increment counter for each row */ tbody#lineitem tr { counter-increment: rowNumber; } /* Show counter value in first column */ tbody#lineitem tr td:first-child::before
    • Does zoho inventory need Enterprise or Premium subsrciption to make Widgets.

      We have Zoho One Enterprise and yet we can't create widgets on inventory.
    • Zoho CAMPAIGNS working hours

      Hi I use Campaigns Automation workflows to automate follow-ups to my Leads. I discovered this weekend that emails are being sent out on Sundays. How do I limit my Campaigns outgoing emails to business working hours? This is very important! Thanks, D
    • Depositing funds to account

      Hello, I have been using Quickbooks for many years but am considering moving to Zoho Books so I am currently running through various workflows and am working on the Invoicing aspect. In QB, the process is to create an invoice, receive payment and then
    • Create Receipt of a Donation (not a sale)

      We are a non-profit organization that receives general donations. How do I create a receipt of payment for the donor and categorize the payment as a Gift? I tried the method of creating an invoice; however that automatically created a "Sales" transaction
    • Function #2: Create a Deal in Zoho CRM when an Estimate is created in Zoho Books

      For those who use Zoho CRM integrated with Zoho Books, here's a nifty function that helps you optimize your sales process by adding a Deal in Zoho CRM whenever an estimate is created in Zoho Books. Custom Function: To create the custom function, go to
    • New Custom View -Sorting the Custom fields

      While creating a New Custom View in invoice , Customers, Bills ,expense etc , the sorting of custom fields are not available , a query function "order by / sort by  " may also be included in  Define new criteria module  which will be more beneficial to
    • Grouping Undeposited Funds to Move to other accounts

      In the bank option it would be nice to check what transactions in undeposited funds I want to move to other accounts. Then while checking this it can accumulate totals and created whats essentially a deposit slip. Once the transaction is moved it should
    • Sync your CRM Tasks with Zoho Projects

      Zoho Projects integration with Zoho CRM helps you manage your tasks more efficiently. You can create all project related activities right inside your CRM using this integration. Create new portal or associate an existing portal, add projects to the portal,
    • Zoho CRM strips whitespace in text fields

      When editing field text with multiple spaces: CRM - both UI and API trim / compress the whitespace to a single space when saving: Is this known / expected / documented behaviour?
    • Custom Button makes scroll bar go down in report

      I have a report with a Custom button called Completed. A colleague mentionned to me that when he pressed this custom button it scrolled down the page which is annoying since he want to stay at the same space on the repoort. There is no reload linked to
    • Quickbooks Integrations Stopped Working

      All of our Quickbooks integrations have stopped working. I am checking in to see if: a) this is a known issue b) if anyone else is having this issue. As usual, Zoho support is unavailable.
    • Incorrect Functioning of Time Logs API (Version 3)

      We need to fetch the list of time logs for each task for our company internal usage. We are trying to achieve it by using the next endpoint: https://projects.zoho.com/api-docs#bulk-time-logs#get-all-project-time-logs Firstly, in the documentation the
    • Dynamic image in form works in the app but not on the customer portal.

      img = frm_Fichas[ID == input.Nombre].Foto; imgno = Nophoto[ID2 = 1].Image; if(len(img) > 1) { img = img.replaceAll("/sharedBy/appLinkName/",zoho.appuri); img = img.replaceAll("viewLinkName","Fichas_de_personal_public"); img = img.replaceAll("fieldName","Foto");
    • Uplifted homepage experience

      Editions: All editions. Availability update: 17th February 2026: All editions in the CA and SA DC | JP DC (Free, Standard and Professional editions) 23 February 2026: JP (All Editions) | AU, CN (Free, Standard, Professional editions) 27 February 2026:
    • Approval Workflow for Purchase Orders Abrir

      The requirement is , that all purchase orders greater than or equal to 5000 go through an approval process from certain people, but within books I only see that the approvers can be by levels or any approver but we cannot enter a rule like these. Can
    • WeTravel + Zoho CRM Integration - Has Anyone Built a Connector or Extension?

      Hi all, I'm exploring options for integrating Zoho CRM with WeTravel (booking & payment platform for tour operators). Zapier seems to be the common method but seems limited. I'm wondering if anyone in the community has developed a more comprehensive solution,
    • Option in pipeline deal to select which hotel or branch or store if client has more than one local store

      Hi, I would like to know if there is an option in the deal pipeline to select which hotel, branch, or store a deal is related to—if the company has more than one location. For example, I have a client that owns several hotels under the same company, and
    • Undo article like/dislike

      It seems to be not possible to undo your like/dislike for an article. Would be great if you can. Kind regards, Helen
    • Nested notebooks

      Dear Sir/Madam, I would like to know if it is possible to nest notebooks. It would be very helpful when there are too many, as it would improve organization. Thank you for your response. Best regards.
    • Tax in Quote

      Each row item in a quote has a tax value. At the total numbers at the bottom, there is also a Tax entry. If you select tax in both of the (line item, and the total), the tax doubles. My assumption is that the Tax total should be totalling the tax from
    • Dynamically Fetching Lookup Field Display Value

      I have an audit trail form, Audit_Changes, that tracks old vs new values across different forms. For lookup fields, the old/new value is the ID, but I also need the display value. What's a best practice for dynamically fetching the display value of the
    • Stop Scrolling, Start Asking: Meet Zia for Your Files

      Hey everyone 👋 The era of 'scrolling and searching' is officially over. Whether it's a dense legal contract or a long meeting recording, searching for specific details is a massive time-sink. We think you should be able to interact with your files, not
    • How do I open MSG files in Microsoft Word?

      If you want to open MSG files in Microsoft Word is not natively supported, as MSG is an email file format created by Microsoft Outlook. However, there are professional approaches to access MSG content in Word. First, open the MSG file in Outlook and copy
    • Unable to charge GST on shipping/packing & Forwarding charges in INDIA

      Currently, tax rates only apply to items. It does not apply tax to any shipping or packing & forwarding charges that may be on the order as well. However, these charges are taxable under GST in India. Please add the ability to apply tax to these charges.
    • How to add packing & forwarding charge in purchase order & quotation???

      Hello Zoho Team I have just started using Zoho for my company and I wanted to make purchase order. My supplier charges fix 2% as packing & forwarding on Total amount of material and then they charge me tax. For example, Material 1 = 100 Rs Material 2
    • How to create a boxplot chart in Zoho Analytics?

      Hi, I'm looking forward to making a boxplot in Zoho Analytics, either with all my data or with a time segmentation. No documentation or YouTube video explaining that was found. I guess this is a feature gap. How feasible would it be to add this to Analytics?
    • What are the create bill API line item requiered fields

      While the following documentation says that the line items array is requiered it doesn't say what if any files are requiered in the array. Does anyone know? API documentation: https://www.zoho.com/inventory/api/v1/bills/#create-a-bill I'm trying to add
    • Budget function?

      Has there been any progress on the development of a budget function in Zoho Books / Invoice? It's impossible to grow/run a business without some kind of budgeting. If I've missed something, apologies, but there seems little point in using Zoho Books without a budgeting function. Otherwise, I'm very impressed with the Zoho apps and the support. Keep up the great work.
    • Connecting Zoho Inventory to ShipStation

      we are looking for someone to help connect via API shipStation with Zoho inventory. Any ideas? Thanks. Uri
    • Where is the settings option in zoho writer?

      hi, my zoho writer on windows has menu fonts too large. where do i find the settings to change this option? my screen resolution is correct and other apps/softwares in windows have no issues. regards
    • Using IMAP configuration for shared email inboxes

      Our customer service team utilizes shared email boxes to allow multiple people to view and handle incoming customer requests. For example, the customer sends an email to info@xxxx.com and multiple people can view it and handle the request. How can I configure
    • When Does WorkDrive integrate with Books?

      When Does WorkDrive integrate with Books?
    • POP mailbox limits

      If I am accessing a remote POP mail server using Zoho Mail is there a mailbox quota for the account or is it all related to my mail account storage limits?
    • Warranty Service and Repair in Zoho FSM

      Hi There, We are a retail store that sells products and also performs installations and repairs. Our field technicians handle this work. Some repairs are covered by manufacturers, who reimburse us for both parts and labour. In these cases, we perform
    • WhatsApp phone number migration

      Hi @Gowri V and @Pheranda Nongpiur, Thanks for implementing the promised enhancements to the integration between Zoho CRM and WhatsApp. The previous discussion has been locked, so I'm opening this new one. I am copying below a specific
    • SPF: HELO does not publish an SPF Record

      I am using Zoho mail. Completed all of the required prerequisites from the dashboard to avoid any issues with mail delivery. But when checking on mail-tester.com getting the following error. Can anyone help me solve this?
    • Next Page