Learn how to use Bigin's Developer Console to build toppings

Learn how to use Bigin's Developer Console to build toppings

Hey Biginners,

In our last post, we discussed what toppings are, why they're essential to extending Bigin's capabilities, and how the Bigin Developer Center serves as the starting point for building them. As a cloud platform, the Developer Center empowers developers with a dedicated space exclusively for creating and managing toppings, as well as publishing them to the Bigin Marketplace. Once they create their topping drafts in the Bigin Developer Center, developers can enter the Bigin Developer Console, which is where the actual development takes place.

The Developer Console provides all the resources needed for the entire development journey, from creating and automating to testing toppings before they go live. By using these features, you can create a unique topping that perfectly bridges the gap between Bigin and user-specific needs.


Now let's dive into each of the Bigin Developer Console's features for creating toppings.

Customization

When building a topping, you can include custom components from the Bigin Developer Console. These components range from simple fields to related lists that enable easier navigation through Bigin's user interface.

You can add custom fields in addition to the standard fields available in Bigin to handle your topping requirements. Using custom buttons and links can streamline actions in Bigin or integrate Bigin data with external URLs, applications, or systems. To establish a direct relationship between the records inside Bigin, you can use related lists.
For a step-by-step implementation guide to creating these custom components, please refer to the following links:
  1. Fields
  2. Buttons
  3. Links
  4. Related lists
  5. Widgets
Next, let's explore the Bigin Developer Console's automation features and incorporate them to adding more functionalities to your topping.

Automation features

The Bigin Developer Console offers features that automate repetitive tasks, simplify processes, reduce manual effort, and enhance user efficiency. You can incorporate automation features like workflows, schedules, functions, signals, and more.

A developer creating a topping to improve pipeline management in Bigin might seek to automate repetitive tasks, such as managing stages and assigning responsibilities. For instance, when a new deal enters the "Inquiry" stage in the Sales pipeline, the system promptly assigns it to an appropriate sales rep through an automatic owner assignment rule, which eliminates the need for manual intervention. Likewise, you can set a schedule to send automated email reminders to prospects who haven't responded within a week and define a signal that notifies users in real time when a recipient opens an email.

To learn more about how to implement these automation features in your toppings, check out our detailed implementation guide here. Alongside our automation features, we also enable developers to create custom functions using Deluge scripts.

Custom functions

The Bigin Developer Console enables developers to create custom functions using Zoho's Deluge scripting language. These functions serve to implement business-specific logic in toppings, and are invoked by other functions or components. They eliminate the need for manual repetitive tasks by enabling developers to define specific functions once and invoke them as needed.

Custom functions are categorized into two types: standalone functions and REST API functions.

Standalone functions are self-contained blocks of code that can be invoked from any part of the topping. They can also be invoked from other functions, which enables modular and reusable scripting. On the other hand, Bigin's REST API functions allow developers to expose Deluge code as an API endpoint, enabling external applications to invoke the custom logic hosted in the topping.

For a comprehensive understanding of custom functions, their types, and how to implement them, please refer to our Functions Guide.

While these features enhance the utilities of toppings and improve Bigin's native functionalities, there's another kind of feature that helps expand Bigin's capabilities by integrating it with other applications.

Connections

One sort of topping you may want to build is a connection that transfers data between Bigin and a third-party service. Connections simplify this integration process, ensuring seamless data exchange between applications. Once a connection is established, you can access authenticated data.

Preconfigured default services are available when you're creating a connection. For these services, developers only need to provide the connection details, select the necessary scopes from the available list, and establish the connection. If their preferred services aren't preconfigured, developers can create custom connections by providing service details and authentication credentials. In this case, understanding the authentication and authorization protocols these third-party applications follow is essential for successful integrations.

Consider a scenario in which a sales team wants to notify customers about the sales process by sending instant message notifications via Twilio. For example, when a deal advances to the Proposal Sent stage, Bigin can trigger an SMS notification via Twilio to provide the customer with proposal details. Similarly, when the deal status changes to Closed-Won, the system automatically sends a confirmation message from Bigin to update the customer about the deal's successful closure.

To implement this functionality, developers can create a connector to integrate Bigin with Twilio, as well as to include the logic necessary for sending the message. Also, by incorporating Bigin automation features like workflows, developers can set up triggers that execute functions when certain conditions are met. This streamlines communication, enhances customer satisfaction, and keeps customers informed throughout the sales process. For more information on creating and managing connections, please refer to our detailed guide.

While connections handle backend integrations to enable data exchange between Bigin and other applications, connected apps comes into play when you need an interactive way to engage with both internal data and data from external applications directly within the Bigin interface.

Let's see how Bigin's connected app functionality facilitates this interaction!

Connected apps

A connected app enables an external application to integrate with Bigin through an interface, which is a widget that enhances Bigin's functionality and provides users with a seamless experience in Bigin. You can design your own UI interface and have complete control over the widget.

For example, sales teams often need customers to sign contracts or agreements before closing deals. With a connected app, you can embed an e-signature widget like Zoho Sign directly into Bigin. This enables users to send documents for signatures, track their statuses, and receive signed copies—all without leaving Bigin.

Read here to learn how to build a connected app, create a widget, and embed it into Bigin's UI.

Once you've built all the custom components you need for your topping, you can test it out inside the Bigin Developer Center itself. Let's explore how!

Testing and publishing your topping

Testing ensures that the topping is working as expected, and is important to do before publishing. The Bigin Developer Console provides a sandbox environment wherein you can thoroughly test all your customization components, connections, widgets, and workflows.
Once testing is complete, you can publish the topping through either of the following methods:
  1. Private: Make the topping available to specific users.
  2. Marketplace: The topping becomes accessible to all Bigin users after being validated by the Marketplace approval team.
In the next post, we'll explore testing and publishing in detail and implement real-time use cases.

Stay tuned!

<< Previous                                                                                                                                                                                                                                                                                                                                  Next>>
    • Recent Topics

    • Cannot see Application from Lookup field

      Hi all, I am trying to access data for an application on our account via a lookup field; however, the application doesn't appear in the dropdown at all. Can anyone shed any light on this, please? I have asked Zoho support; however, they're just as confused,
    • Cannot see correct DNS config for mail after moving domain to another provider

      I have moved my domain from one provider to another and after that zoho mail stopped working (expected). Problem is, zoho mail admin panel still shows (10 hours after move) that all records are correct while I haven't changed anything in my domain DNS
    • Zoho CRM Meetings Module Issues

      We have a use-case that is very common in today's world, but won't work in Zoho CRM. We have an SDR (Sales Development Rep) who makes many calls per day to Leads and Contacts, and schedules meetings for our primary Sales Reps. He does this by logging
    • Zoho Books integration sync from Zoho CRM does not work

      Hi Zoho Community & Zoho Support We just tried to get a sync some products into Zoho Books from CRM using the native sync and we're getting an error: "It looks like some mandatory fields you're trying to map are empty. Please provide valid field names
    • P & L Sub-categorized accounts

      How can I show sub-categorized Income and Expense accounts on the P & L report?
    • Report showing Bill Details with Project and Sales Invoice Number

      Hi There, I am hoping that someone can help, I am looking for report that can show the bill and expense details along with project its as assigned to and the invoice number that the sales has been raised in. The goal is I can filter a customer/project
    • Advanced Payment for Inventory Items with serial numbers

      Hello, We sell equipment that we track the unique serial numbers on using Sales Orders. We can charge the customers an advanced payment, then the balance on delivery. We cannot figure out a way to do this in Books/Inventory: - Cannot part invoice a SO
    • Is it possible to restrict ZCRM user to see only custom views created by administrator

      I have segmented data in my CRM and I want to allow different users to be able to see only parts of it based on some criteria. I've tried to create and share a custom view, but then there is always an option for user to see all open lead for example.
    • Issues Logging into ZOHO

      Hello, one of my coworkers is having issues logging into ZOHO, she has requested a code when entering and the email is correct but she has not received the code. can you help us with this?
    • Google Fonts Integration in Pagesense Popup Editor

      Hello Zoho Pagesense Team, We hope you're doing well. We’d like to submit a feature request to enhance Zoho Pagesense’s popup editor with Google Fonts support. Current Limitation: Currently, Pagesense offers a limited set of default fonts. Google Fonts
    • Add Popup Rejection Metrics to Reports

      Hello Zoho PageSense Team, We would like to request improved reporting for popup interactions. Current Limitation: PageSense currently provides conversion data, but there is no clear visibility into: Popup rejections Popup closes (✕ button clicks) Dismissals
    • Ability to Reset / Reinitialize Popup Cookies

      Hello Zoho PageSense Team, We would like to request the ability to manually reset popup cookies. Current Limitation: At the moment, it is not possible to initiate a new popup cookie from the our side. Visitors who rejected or closed a popup will not see
    • Control Popup Cookie Expiration Duration

      Hello Zoho PageSense Team, We would like to request an enhancement related to popup cookie management. Current Limitation: Currently, PageSense popup cookies remain active for 365 days, and this duration cannot be modified by us. If a visitor closes or
    • Clone / Export Popup Design Across PageSense Projects

      Hello Zoho PageSense Team, We hope you’re doing well. We would like to request an enhancement that allows popup designs to be reused across different PageSense projects. Problem Statement: Currently, Zoho PageSense allows popups to be duplicated only
    • Are there settings for hyperlinks?

      Clicking a hyperlinked cell in Sheet creates this little pop-up with the actual hyperlink inside. Is it possible to have a 1-click link where if you click the cell it opens the link directly with no pop-up?
    • Automatically include all ticket attachments in the ticket resolution email

      Hello Zoho Community, We are implementing Zoho Desk in a real customer-facing production environment and have run into a limitation that is becoming a blocking requirement for our clients. The problem When a ticket is closed or resolved, Zoho Desk sends
    • Finding text within a ticket: Expand All or Search this Ticket

      The auto-collapse feature within a ticket is nice for screen scrolling, however it makes it difficult to find text within the ticket if the email is collapsed. In fact you cannot find text if it is collapsed. I would like to propose a feature that allows
    • Books & Desk. Client mapping

      Hi, I’ve been using Zoho Books for several years and am now looking to improve my customer service. I'm experimenting with Zoho Desk and want to sync and map my client data from Zoho Books. However, it seems that mapping requires both contacts to have
    • String handling

      If I cut a currency string from a quote and try and paste it into the Deal "Amount", it will fail unless I manually delete any commas. Dollar signs are no problem, but comma's seem to fail. Please correct this Input Validation error.
    • What's new in Zoho Sheet: Simplify data entry and collaboration

      Hello, Zoho Sheet community! Last year, our team was focused on research and development so we could deliver updates that enhance your spreadsheet experience. This year, we’re excited to deliver those enhancements—but we'll be rolling them out incrementally
    • Feature Request - Allow Customers To Pick Meeting Duration

      Hi Bookings Team, It would be great if there was an option to allow customers to pick a duration based on a max and minimum amount of time defined by me and in increments defined by me. For example, I have some slots which are available for customers
    • Support for Custom Fonts in Zoho Recruit Career Site and Candidate Portal

      Dear Zoho Recruit Team, I hope you're doing well. We would like to request the ability to use custom fonts in the Zoho Recruit Career Site and Candidate Portal. Currently only the default fonts (Roboto, Lato, and Montserrat) are available. While these
    • YouTube Live streaming? how to? Zoom has this feature, built-in. Can't find it on zoho meetings.

      YouTube Live streaming? how to? Zoom has this feature, built-in. Can't find it on zoho meetings.
    • Feature Request - A Way To Search Item Groups

      Hi Inventory Team, I can't find any way to filter or search by fields of Item Groups. It would be great to see that functionality added. I have a use case where a single product might come from 5 or more suppliers and each supplier's item is an Item in
    • Feature Reqeust - Include MPN In Selectable FIelds

      I have noticed that the MPN is not available to show in the list view of Items. Please consider adding it as EAN, UPC and ISBN are all available, so it doesn't make much sense to exclude this similar option. Thanks for considering my feedback.
    • Feature Request - Option To Hide Default System Fields on Items

      Hi Zoho Inventory Team, As far as I know it is not possible to hid some of the defult system fields on Items, such as UPC, MPN, EAN, ISBN. A good use case is that in many cases ISBN is not relevant and it would be an improved user experience if we could
    • Making an email campaign into a Template

      I used a Zoho Campaign Template to create an email. Now I want to use this email and make it a new template, but this seems to be not possible. Am I missing something?
    • Campaigns does not work!

      I am running into so many problems trying to use Zoho Campaigns, that I am seriously considering dropping the app from my (shrinking) list of Zoho applications I actually use. Apart from having to fight the software trying to create a design and email,
    • Feature Request - Make Available "Alias Name" Field In Item List View

      Hi Zoho Inventory Team, I have noticed that the "Alias Name" field does not appear on the list of selectable columns in the Customise Columns feature in the Items module. This would be very useful to see for businesses who are using the Alias Name field
    • Marketing Automation

      L.S. Marketing Automation is and has always been part of the Zoho One bundle - according to the information provided on the Zoho Website. Why when I open Marketing Automation do I get the following message?: "Your trial has expired. We hope you enjoyed
    • Cliq iOS can't see shared screen

      Hello, I had this morning a video call with a colleague. She is using Cliq Desktop MacOS and wanted to share her screen with me. I'm on iPad. I noticed, while she shared her screen, I could only see her video, but not the shared screen... Does Cliq iOS is able to display shared screen, or is it somewhere else to be found ? Regards
    • Bigin, more powerful than ever on iOS 26, iPadOS 26, macOS Tahoe, and watchOS 26.

      Hot on the heels of Apple’s latest OS updates, we’ve rolled out several enhancements and features designed to help you get the most from your Apple devices. Enjoy a refined user experience with smoother navigation and a more content-focused Liquid Glass
    • project name field issue- n8n

      Hey guys, I have a question. I want to create a new product using the workflow. The problem is with the product name field; I don't know how to fill it in. The workflow starts with retrieving information from the leads table, retrieving links to scrape
    • How to filter Packages in zoho inventory api

      Hi Team, I want to perform some tasks in a schedular on the packages which are in "Shipped" state. I tried to use filter_by in my api call but in return I get response as {"code":-1,"message":"Given filter is not configured"} My Api request is as follows
    • CRM

      Is anyone else experiencing this issue? Our company is not moving out of using Gmail's web app. It just has more features and is a better email program than Zoho Mail. Gmail has an extension (Zoho CRM for Gmail) that we're using but we've found some serious
    • ZOHO add-in issue

      I cannot connect ZOHO from my Outlook. I am getting this error.
    • Syncing with Google calendar, Tasks and Events

      Is it possible to sync Zoho CRM calendar, task and events with Google Calendar's tasks and events. With the increasing adoption by many major tool suppliers to sync seamlessly with Google's offerings (for instance I use the excellent Any.do task planning
    • How can i view "Child" Accounts?

      It can be very useful in our field of business to know the parent-child account relationship. However, there seems to be a shortcoming in the parent account view: no child account list. How can we view the child accounts per each account?
    • Ability to assign Invoice Ownership through Deluge in FSM

      Hi, As part of our process, when a service appointment is completed, we automated the creation of the invoice based on a specific business logic using Deluge. When we do that, the "Owner" of the invoice in Zoho FSM is defaulted to the SuperAdmin. This
    • Easily perform calculations using dates with the new DATEDIF function

      Hey Zoho Writer users! We've enhanced Zoho Writer's formula capabilities with the new DATEDIF function. This allows you to calculate the difference between dates in days, months, and years. Function syntax: =DATEDIF(start_date, end_date, unit) Inputs:
    • Next Page