Application Architecture in Zoho Creator: Why You Should Think About It from the Start

Application Architecture in Zoho Creator: Why You Should Think About It from the Start

Many companies begin using Zoho Creator by building simple forms to automate internal processes.

This is natural — the platform is extremely accessible and allows applications to be built very quickly.

The challenge begins to appear when the application starts to grow.

Over time, issues such as the following start to emerge:

  • difficulty in maintaining the system

  • performance degradation

  • data duplication

  • complex and hard-to-understand workflows

  • dependencies that break the system when changes are made

And then an important question arises:

Why does this happen?

The answer is simple: a lack of architectural planning from the beginning of the project.

Every application starts small.
But just like business processes evolve, applications evolve as well.

A system that initially automates a single process may eventually:

  • integrate multiple departments

  • support dozens of workflows

  • execute hundreds or thousands of functions

  • become responsible for a large part of the company's operations

When architecture is not considered from the start, application growth often leads to rework, complexity, and sometimes even the need to rebuild the system from scratch.

Throughout several projects where I developed enterprise automation solutions using Zoho Creator, I realised that many problems could be avoided by applying a few architectural best practices.

Below are some techniques that help ensure scalability, performance, governance, and maintainability.


Common Mistakes in Zoho Creator Projects

Certain patterns frequently appear in applications that have grown without architectural planning.

Some of the most common issues include:

  • A single massive app containing the entire system

  • Business logic scattered across multiple workflows

  • Data duplication

  • Large and complex subforms

  • Lack of separation between applications

  • Direct integrations without a service layer

These problems typically arise because the application was built focusing only on immediate functionality, rather than on the system architecture.


1. Modular Architecture

One of the most important strategies is to divide the system into business domains.

Instead of creating a single monolithic application, the system can be organised into independent modules.

Example structure:

Core App

  • Master data

  • Customers

  • Users

  • Companies

Sales

  • Opportunities

  • Proposals

  • Pipeline

Operations

  • Service execution

  • Operational management

Portal

  • Customer interface

  • Service tracking

Benefits

  • Clear separation of responsibilities

  • Easier maintenance

  • Reduced impact of changes

  • Reusability across applications

This approach is similar to concepts used in Domain Driven Design (DDD).


2. Event-Driven Architecture

Another common mistake is executing all logic within a single workflow.

A better approach is to use events to decouple processes.

Example:

Event: Customer Created

From this event, multiple actions can be triggered:

  • create account in Zoho CRM

  • create folder in Zoho WorkDrive

  • send welcome email

  • create supporting records

Benefits

  • process decoupling

  • greater scalability

  • easier maintenance

  • reduced impact of future changes


3. Normalised Data Model

A well-designed data model prevents duplication and inconsistency.

Common mistake

An order containing the customer name stored as a text field.

Correct approach

Order
→ Lookup: Customer

This ensures:

  • data is centralised

  • changes to the customer record are automatically reflected

  • data inconsistencies are avoided

This concept comes directly from database normalisation principles.


4. Centralised Automation

Another recurring issue is business logic spread across multiple workflows.

A recommended practice is to centralise rules within reusable functions.

Example:

calculate_invoice_total(record_id)

This function can be used in:

  • workflows

  • buttons

  • schedules

  • API integrations

Benefits

  • logic reuse

  • simpler maintenance

  • reduced code duplication


5. Integration Architecture with the Zoho Ecosystem

Zoho Creator often acts as a custom application layer within the Zoho ecosystem.

A common architectural model is:

Portal / Mobile App

Zoho Creator (Application Layer)

Zoho CRM / Zoho Desk / Other Systems

In this model:

  • CRM manages customer relationships and sales processes

  • Creator handles custom operational processes

  • other Zoho applications complement the solution

This creates a distributed architecture within the Zoho platform.


6. Document Architecture (Document Management)

In solutions that involve many documents, storing large files directly inside Zoho Creator is not recommended.

Best practice is to use:

  • Zoho WorkDrive

  • Zoho Docs

  • or external document repositories

Zoho Creator should store only:

  • metadata

  • links to the files

This improves both performance and system organisation.


7. Performance Strategies

Some best practices help prevent performance issues as the system grows.

Avoid:

  • very large forms

  • subforms with many records

  • queries without filters

Instead, use:

  • indexed fields

  • filtering criteria

  • aggregations

  • optimised queries

These practices help keep the system responsive even with a growing dataset.


8. Governance and Versioning

Zoho Creator 6 introduced important governance features with separated environments:

  • Development

  • Staging

  • Production

This allows teams to:

  • test changes before publishing

  • control versions

  • document functions and system updates

This model brings Zoho Creator development closer to modern DevOps practices.


9. Architecture with Zoho Catalyst (for Larger Applications)

In more complex scenarios, it may be necessary to use Zoho Catalyst.

Catalyst can be used for:

  • microservices

  • heavy processing

  • complex APIs

  • large-scale data processing

  • machine learning

In this architecture, Zoho Creator remains the application and interface layer, while Catalyst executes more advanced backend services.


Conclusion

Zoho Creator is one of the most powerful platforms within the Zoho ecosystem for building custom applications.

When used correctly, it enables the development of robust solutions capable of supporting complex business operations.

However, like any development platform, the quality of the architecture directly influences the scalability and sustainability of the system.

Thinking about architecture from the start helps avoid:

  • rework

  • difficult-to-maintain systems

  • performance degradation

  • future limitations

Applying architectural best practices ensures that Zoho Creator applications can evolve safely and grow alongside the business.

Zoho Creator allows applications to be built quickly — but building systems that truly scale requires something more: architecture.

The real differentiator of a Zoho Creator developer is not just the ability to build applications, but the ability to architect platforms that evolve with the business.

    • Recent Topics

    • WO Completion Status Not Updating Automatically

      Hello Latha, Hope you are doing well. Over the past few days, we have been facing an issue with WO completion. When an AP is marked as complete, the work order status is not automatically updating to “Completed,” and we have to mark it manually. Could
    • Able to change project on timelog entries

      Ability to move the timesheet entry from one project to another. When a user adds a wrong entry a manager can change/update the timesheet entry to the correct project.
    • Marketing Tip #28: Increase buyer confidence with visible social media links

      Your social media pages are often where customers go to “double-check” your brand before buying. When visitors can easily find your Instagram, Facebook, YouTube, or LinkedIn from your store, it builds trust and makes your business feel more real and active.
    • [Webinar] Solving business challenges: One tool for documents, forms, PDFs, e-signatures, and more

      Hi Zoho Writer users, Most businesses rely on multiple tools, such as a word processor, form builder, e-signature provider, and PDF editor, for their document workflows. Managing multiple subscriptions, switching between tools, and moving data across
    • Customer Message Edit/Delete Function & Backend Visibility Inquiry

      目前客服已发送的对话支持编辑和删除功能,请问在 Zoho 系统后台,是否可以查看客服具体发送了什么内容,以及删除或修改了哪些信息?如果无法查看,这个功能是否可以通过设置关闭客服的编辑和删除权限?如可以,请告知具体设置路径。 Currently, customer service agents are able to edit and delete messages after sending them. In the Zoho system backend, is it possible to view
    • Google Drive API 403 PERMISSION_DENIED from Deluge custom function - OAuth connection not recognised

      Hi all, I've built a custom Deluge function to route Zoho CRM Account attachments into specific Google Drive subfolders based on filename prefix. The CRM API steps all work correctly, however our first Google Drive API call (listing subfolders via drive/v3/files)
    • Supercharge Your Zoho Billing Workflows with AI Using Zoho MCP

      What is MCP and how does it connect to Zoho Billing? If you've ever wished you could just tell your billing software what to do without clicking through menus, running reports manually, or switching tabs every five minutes, that's exactly what the Zoho
    • What's new in Zoho Social - Q1 recap

      Hello everyone, We’ve rolled out a bunch of updates in Q1, and we’re excited to walk you through them. To help you explore these features in detail, we’re hosting a Q1 recap webinar where we’ll show you how to make the most of each update. Q1 recap webinar
    • Introducing Auto-trigger for Screening Bot

      Still manually sending screening tests after every application? Not anymore. With Auto-trigger for Screening Bot, screening now begins automatically. When a candidate applies for a job that has an attached assessment, Recruit checks whether the test has
    • Trying to validate user's age through DoB

      We have a form where a user enters their birthdate. We'd like a rule that counts whether the user is over or under 25 years of age. This amounts to 9125 days elapsed between today and an easy way to do this would be to use conditional rule Is Before [x]
    • Automation Series: Notify Admin When User Accepts an Invitation

      In Zoho Projects, a portal is an organisational-level workspace where user can manage multiple projects. To join a portal, a user will have to accept the portal invitation. However, it is important for admins to be in the loop when a user accepts the
    • Introducing SlyteUI : From Idea to a Working Interface in Minutes

      Hello everyone! Are you spending hours building basic UIs? Does even the smallest customization feel like a major task? CRM customization should feel intuitive and straightforward, not time consuming or exhausting. SlyteUI makes this possible by simplifying
    • Api Version 2 Refresh Token invalid_code

      While Refresh token i am always getting Error {     "error": "invalid_code" } i am trying to pass all parameter as per this https://www.zoho.com/crm/developer/docs/api/refresh.html still non of things working any one have idea whats the reason for same ... please help due to this i stuck since last one week
    • Knowledgebase SEO

      We have a custom-domain mapped help center that is not restricted via login. I have some questions: a) will a robots.txt file still allow us to control indexing? b) do we have the ability to edit the sitemap? c) do category URLs get indexed by search
    • Super Admin Logging in as another User

      How can a Super Admin login as another user. For example, I have a sales rep that is having issues with their Accounts and I want to view their Zoho Account with out having to do a GTM and sharing screens. Moderation Update (8th Aug 2025): We are working
    • Mail Merge preview won't load

      Hello! One of our users has not been able to use mail merge templates in CRM as the preview screen does not load. We have many templates for one of our custom modules and the users are used to this feature and have been using it for years without any
    • mask Customer phone number and agents cant see customer phone number

      Is there any way we can integrate Zoom Phone with Zoho CRM while ensuring that customer phone numbers remain masked? We need a solution where agents can make outbound calls but cannot see customer phone numbers. Please let us know if there is any solution
    • Issue with Zoho Sheets

      Edit: Small Error of Opening doc and losing entire formatting while downloading to *.xlsx format. Also my formulas don't work while opening a document downloaded from Zoho sheets, since the colors aren't matched to the correct data. Even though the data
    • Record-Level Cliq Conversations Inside Zoho CRM

      It would be extremely useful to bring the Zoho Projects + Cliq conversation experience into Zoho CRM records. Today, in Zoho Projects, each project or task can have its own related chat conversation through Cliq, allowing team members to discuss that
    • Introducing note actions and dynamic visibility in Kiosk Studio

      Hello all, We are introducing enhancements to Kiosk Studio that will improve the product scope and meet your custom needs more precisely. What's new? Add notes as Actions: You can add notes to CRM records as kiosk Actions, as well as insert merge fields
    • Logging Calls not working

      For some reason, logging calls is not working anymore. Description of problem: On a Lead's record, in the "Open Activities" block, clicked on "Add New" Clicked on "Call", clicked on "Log a call" Nothing happens. If I click on "Schedule a call" nothings
    • How do I filter contacts by account parameters?

      Need to filter a contact view according to account parameter, eg account type. Without this filter users are overwhelmed with irrelevant contacts. Workaround is to create a custom 'Contact Type' field but this unbearable duplicity as the information already
    • Data Import into Zoho Forms

      Hi everyone, I am migrating several Google Forms into Zoho Forms. I can recreate the forms, but I also need to bring over historical response data currently stored in Google Sheets. I want to keep using that data inside Zoho for analysis, reporting, and
    • Best practice to handle 50+ invokeurl calls in a loop without hitting the 30-second timeout?

      Hi everyone, I am working on a custom Deluge function where I have a Map containing around 50+ key-value pairs. I need to iterate through this Map using a for each loop and make a GET API call (invokeurl) for each item. The Problem: Because of the 50+
    • How Can I Clear Deleted Members and Free Up Their Storage?

      Can we remove these deleted members and free up their storage?
    • 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
    • Zoho Desk - Event Calendar View

      Hi Desk team, Are there any plans to introduce a calendar or timeline view for Events in Zoho Desk? It would be very helpful if we could see Events visually in a calendar and/or timeline. This is very helpful when desk side support activities need to
    • Pro rata holiday allowance for variable part time employees

      We have some part time staff who work variable hours and their holiday allowance is based on pro rata system. In Zoho people is there any way to calculate their holiday allowance based on actual hours worked? I.e. worker is entitled to a pro-rata amount of 5.6 weeks holiday, which is equivalent to 12.07% of hours worked over a year. So part time staff's holiday is accrued at a rate of 12.07% per hour worked. Thanks
    • Zoho Bookings - Provide Appointment System ID in Zoho Flow Variable

      Hi Bookings Team, It would be great if you could provide the system record ID for appointments as a variable in Zoho Flow trigger outputs and Fetch Appointments action. This would allow us to create a dymanic URL which can be clicked by a staff user to
    • Invoice date is incorrect

      I'm trying to pull a report of Sales Orders and filter by Invoice Date. (ex: all of 2025) Unfortunately, the filter still returns lots of SO's from other years including 2026 which would be impossible to have an invoice in 2025 from a 2026 order. It's
    • Query on Tracking Visitor Activity with Zoho Forms & SalesIQ

      I have a query regarding Zoho Forms, Zoho SalesIQ, and Zoho CRM. I have embedded a Zoho Forms form on my website, and I’m trying to understand if it’s possible to capture a user’s website activity (such as pages visited, visit count, etc.) when they submit
    • Understanding tasks

      So we have a module linked to contacts called Equipment and that in turn has a related module called service calls. Often on a service call we want add a task but we are not able. I think it needs a link to the contact. WE therefore tried to add tasks
    • How to transfer files from Creator file upload fields to CRM file upload fields

      This article describes how to transfer files from Zoho Creator file upload fields to Zoho CRM file upload fields. I'm posting it here because the current documentation does not fully and accurately describe how to do this with certain file types (PDF,
    • Add Comprehensive Accessibility Features to Zoho Writer

      Hello Zoho Writer Team, We hope you are doing well. We would like to submit a feature request to enhance Zoho Writer with a full set of accessibility tools, similar to the accessibility options already available in the Zoho Desk agent interface. 🚧 Current
    • ¿Puedo migrar mi sitio desde WordPress a Zoho? ¿Zoho admite herramientas con código personalizado?

      ¡Hola comunidad! Estoy evaluando la posibilidad de migrar mi sitio web https://calculadoradenotas.cl/ desde WordPress a una solución Zoho, y tengo algunas dudas técnicas que espero puedan aclararme. Mi sitio no es solo informativo: es una herramienta
    • Make Task ID and Issue ID columns filterable like all other columns

      Hello Zoho Projects Team, We hope you are doing well. We would like to submit a feature request regarding the Task ID and Issue ID columns in Zoho Projects list views. Current Limitation: As of now, in both the Tasks and Issues modules, almost every visible
    • Improve Back Navigation (X Button) Inside Nested Milestones, Task Lists, Tasks, and Issues

      Hi Zoho Projects Team, We would like to request an improvement to the X / close button navigation behavior inside milestones. Currently, the milestone area behaves as a nested hierarchy (tree structure): Project → Milestone → Task List → Task So when
    • Add a way to connect Log360 Cloud logs with Zoho analytics

      Hi, Several month ago Log360 Cloud was added to zoho one - and this is great. But as far as I see there is no prebuilt way to connect Zoho analytics to the logs we have in Log360 Cloud. Please add a prebuilt connection like we have for so many other zoho
    • Extend GitHub Commit Integration to Tasks in Zoho Projects

      Hello Zoho Projects Team, We hope you are doing well. We would like to submit a feature request regarding the current GitHub integration in Zoho Projects, specifically the ability to link commit information. Current Limitation: As of now, Zoho Projects
    • Enable Screen Recording in Zoho WorkDrive Mobile Apps (Android & iOS)

      Hi Zoho WorkDrive Team, How are you? We are enthusiastic Zoho One users and rely heavily on Zoho WorkDrive for internal collaboration and content sharing. The screen-recording feature in the WorkDrive web app (similar to Loom) is extremely useful- however,
    • Next Page