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

    • Zoho CRM Community Digest - July 2026 | Part 1

      Hello everyone, July is here! The first two weeks brought six CRM updates ranging from privacy-ready webforms to a significantly more powerful Layout Rules engine, two community wins worth a look (a dashboard workaround for spotting leads with no activities,
    • What is a realistic turnaround time for account review for ZeptoMail?

      On signing up it said 2-3 business days. I am on business-day 6 and have had zero contact of any kind. No follow-up questions, no approval or decline. Attempts to "leave a message" or use the "Contact Us" form have just vanished without a trace. It still
    • Zoho CRM - Email/Message icon for Deal List View

      Hi Team, My idea is to include a message icon at the start of the row of Deals when an unread message has been received. This would really help highlight the Deals where urgent action is required. Thanks for considering this request. Regards, Ashley
    • Email notification for followers

      Is there a way to enable email notification for followers of a support ticket? ie: Ticket #123 is owned by Agent#1, Agent#2 adds themselves as a follower. Whenever ticket #123 receives an email from the customer, Agent#1 receives an email. Agent#2 would
    • Introducing parent-child ticketing in Zoho Desk [Early access]

      Hello Zoho Desk users! We have introduced the parent-child ticketing system to help customer service teams ensure efficient resolution of issues involving multiple, related tickets. You can now combine repetitive and interconnected tickets into parent-child
    • Desk Contact Name > split to First and Last name

      I am new to Zoho and while setting up the Desk and Help Center, I saw that new tickets created or submitted from the Help Center used the Contact Name field. This would create a new Contact but put the person's name in the Last Name field only. The First
    • Vendor payment unexpectedly routed through Prepaid Expenses instead of Accounts Payable

      Hello, We are investigating an unexpected accounting behavior in Zoho Books. We created vendor bills and vendor payments for two suppliers using what appears to be the same workflow, but the journal entries are different. Vendor 1 – UZ Store (works correctly)
    • Line Spacing

      I am new to zoho writer - when I create a new document or either open an existing document - everything is double spaced. I tried changing the line spacing to single but still nothing happens do you know what I can do to change this double spacing format?  
    • Is there a way to show contact emails in the Account?

      I know I can see the emails I have sent and received on a Contact detail view, but I want to be able to see all the emails that have been sent and received between all an Accounts Contacts on the Account Detail view. That way when I see the Account detail
    • LinkedIn RSC is now live in Zoho Recruit

      LinkedIn Recruiter System Connect (RSC) is here. Your Zoho Recruit data (candidates, jobs, notes, stage updates, resume attachments, and more) now syncs with LinkedIn in real time. Note: LinkedIn RSC is included with your LinkedIn Recruiter Corporate
    • Managing Shopify Payout Balances in Zoho Books

      I am recording my Shopify orders as Invoices and once Shopify credits my bank account I reconcile the payout to the specific invoices and create a new transaction to account for the Shopify Merchant Fee. That is fairly straightforward to me. How should
    • Charging for WhatsApp replies starting in October 2026

      Meta has announced that it will charge for reply messages on WhatsApp starting October 1, 2026, and the free 24-hour window will no longer exist. How will Zoho SalesIQ handle this billing? https://developers.facebook.com/documentation/business-messa
    • Upcoming Change: Increased character limits for module and field labels

      To provide greater flexibility in customizing your CRM, we are increasing the maximum character limits for module labels and field labels in Zoho CRM. What's changing? Label Current Limit New Limit Module Label 25 characters 50 characters Subform Module
    • Creating Email template that attaches file uploaded in specific field.

      If there's a way to do this using Zoho CRM's built-in features, then this has eluded me! I'm looking to create a workflow that automatically sends an email upon execution, and that email includes an attachment uploaded in a specific field. Email templates
    • SPAM (and some other) folders missing on three of my Zoho Mail accounts

      I have four email accounts with Zoho Mail. Three days ago, the Spam folder on three of these accounts vanished. It is gone on the Windows and Linux desktops as well as the web-based and Android versions, and I have tried it on multiple machines. The only
    • Using data from multiple sheets

      I am looking for a way to automate the process of taking multiple Zoho sheets and collating the data into one combined sheet (such that no duplicates occur). Currently I can only think of importing all the sheets into Excel and then running a macro to perform the task. Is there a simpler way offered by Zoho?
    • 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
    • Error 1011 saving website personalisation — blocking all changes (corrupted "home_page.content" field)

      When trying to save changes under Settings → Brands → MY COMPANY → Website → Personalisation → Messenger, I receive the following error: "Either the request parameters are invalid or absent" upon checking on the developer console of the browser I get
    • All new Address Field in Zoho CRM: maintain structured and accurate address inputs

      Availability Update: 29 September 2025: It's currently available for all new sign-ups and for existing Zoho CRM orgs which are in the Professional edition exclusively for IN DC users. 2 March 2026: Available to users in all DCs except US and EU DC. 24
    • CRM x WorkDrive: We're rolling out the WorkDrive-powered file storage experience for existing users

      Release plan: Gradual rollout to customers without file storage add-ons, in this order: 1. Standalone CRM 2. CRM Plus and Zoho One DCs: All | Editions: All Available now for: - Standalone CRM accounts in Free and Standard editions without file storage
    • HR Helpdesk Cases

      We have Zoho One Enterprise. I'm trying to find HR Helpdesk Cases, but my UI does not match the documentation. I'm not sure how to move forward.
    • Tip #7 - Siri shortcuts in Zoho CRM

      Hello Everyone, Here is a tip about the 'Siri Shortcuts' feature and how it works in the iOS version of the Zoho CRM mobile app. What are Siri shortcuts? Siri Shortcuts are quick actions across your apps on iOS. They can perform an action automatically
    • Automatic Department and Employee Sync Between Zoho One and Zoho People

      Dear Zoho Support, I'm writing to propose a valuable feature request that would streamline data management and improve user experience within the Zoho ecosystem: automatic synchronization between departments and employees in Zoho One and Zoho People.
    • Nothing triggers a Journey

      I have been on the phone with Zoho support and they claim their development team needs to investigate more. However, I've found this is a pretty standard answer after a call takes any amount of time. After that, it's days and even weeks before it actually
    • Manually Backorder Sales Order and/or Change Sales Order Status

      Is there an option to manually 'backorder' a sales order, or otherwise change it's status?  In some cases, we receive orders for products that are out of stock, but we already have issued POs to our suppliers for replenishment.   Ex- we created a PO on
    • Backorder process review - Automating Removal of Sales Order from "On Hold" When PO is Received

      Hello Zoho Inventory Team, Currently, sales orders in On Hold status are released only when the bill for the purchase order is created. In our workflow, it would be much more efficient if the sales order could automatically move out of On Hold as soon
    • Kaizen #254 - Building a Temporal Lead Score Decay System in Zoho CRM

      Hello, CRM Wizards! Welcome to a fresh week of Kaizen. In this post, we will build a temporal lead score decay system that works alongside your existing scoring rules by introducing percentage-based score decay driven solely by customer inactivity. By
    • Metadata API Access to Functions

      I think it would be incredibly helpful to have api access to every function's code. Our team primarily uses deluge functions to update fields across modules according to business logic. I would like to create a visual dependancy model for our CRM, but
    • API actions/approvals endpoint returns UNAPPROVABLE despite user having full permissions and being the assigned approver

      Hi Team, We are trying to programmatically approve a record via the CRM API but consistently receive an UNAPPROVABLE error, even though the same user can approve the record without issue from the UI. Endpoint called: POST https://www.zohoapis.com/crm/v6/{module}/{record_id}/actions/approvals
    • Get a realistic picture of your revenue with Forecast Adjustments in Zoho CRM

      #crm25q1 Dear Customers, We hope you're doing well! Today, we're here with an important enhancement for business decision makers: forecast adjustments. Let's get straight to it! With technology on the rise and CX at its core, businesses are constantly
    • I am not able to check in and checkout in zoho people even location access allowed

      This issue i am facing in mackbook air m1, I allowed location in chrome browser and i also tried in safari but getting similar issue. Please have a look ASAP.
    • WhatsApp Vendors Module

      Hello, so WhatsApp works with the below, mainly with the customer side modules. Can we get functionality on the vendor side modules, i.e., PO, Bills, Vendor Credits, Payments Made, Purchase Received? WhatsApp is often the preferred method of communication
    • Upload ticket attachments via Drag-&-Drop

      Hello, if you want to upload a file to the ticket attachment you need to click the button and use the file browser to select and upload the desired file. In many cases, it would be much more efficient if you could simply drag the file to the browser window...
    • Elevate your Radar experience: Best practices part 3

      In the Spotlight: Zoho Desk's Radar app Customer support requires human intelligence combined with emotional intelligence. How about these coupled with contextual intelligence? These elevate the customer support experience. When providing support through
    • Migrating my email from GMAIL to ZOHO MAIL..........

      I am a long time GMAIL user and I really only understand how they operate, but after reviewing your tutorials and forums online, it is quite unbelievable how much more and how much more streamlined ZOHO mail is, not to mention ZOHO's wonderful, more advanced capabilities. I do have several questions about transitioning over to ZOHO.  Primarily, where is the best place to start, what do I do first? And how hard is it actually to move all my business and personal accounts over here?  When I sign up
    • Unable to send message;Reason:553 Relaying disallowed. Invalid Domain

      Hi, Now when I try to reply to an email, I see the Unable to send message;Reason:553 Relaying disallowed. Invalid Domain voicemessagedownloader.com error. I tested sending an email when I set it up in the past and it worked. I have checked the Zoho Organization
    • RFID Scanner/Adapter Solution for barcode scanning

      Hello, We will be trialing using barcode scanning for item verification during our picking process. Using a phone or a tablet is awkward and uncomfortable. Are there any Zoho compatible RFID scanners, or an RFID device/adapter that will connect with a
    • Approval Process not retriggering after rejection when stage is manually changed back

      We have an Approval Process on the Opportunities module that triggers when Stage is changed to Negotiation (Execute on: Edit Only). On rejection, a field update action reverts Stage back to Proposal. The issue: after rejection, AE can manually changes
    • Free Webinar Alert! Workdrive + Office Suite in Zoho Workplace: Create, co-edit and collaborate

      Hello Zoho Community! Looking for a better way to create, manage, and collaborate on your business documents? Join our upcoming webinar to discover how Zoho WorkDrive and the Zoho Office Suite (Writer, Sheet, and Show) help teams to work together from
    • Updating Sales orders on hold

      Surely updating irrelevant fields such as shipping date should be allowed when sales orders are awaiting back orders? Maybe the PO is going to be late arriving so we have to change the shipment date of the Sales order ! Not even allowed through the api - {"code":36014,"message":"Sales orders that have been shipped or on hold cannot be updated."}
    • Next Page