Revenue Management: #4 What if there are uncertainties in project or service delivery?

Revenue Management: #4 What if there are uncertainties in project or service delivery?

Our previous post taught us how Zoho Billing makes life easy for businesses with its automated revenue recognition rule. However, certain businesses have more challenges that an automated system cannot handle, and there are certain situations where automated revenue recognition is not feasible. For example, construction services paid in advance but with uncertain start dates can make the revenue recognition rule look inappropriate. Some manual interventions are needed to handle this scenario.

Manual revenue recognition
in Zoho Billing helps you handle these uncertainties. It is used when the timing and amount of revenue cannot be determined accurately through automated rules. This is common in industries such as construction, where project completion is tied to milestones that may occur at irregular intervals.


Example 1:

Imagine a construction firm signs a $50,000 contract to renovate a commercial building. The client pays the entire amount upfront, but the agreement specifies that the revenue will be recognized only as key project stages are completed. Each milestone carries a defined value or percentage of the total contact, say,

  • Design & Approval Phase: $5000

  • Demolition & Site Preparation: 30% of the total contract value

  • Structural & Roofing Work: 40% of the total contract value

  • Interiors & Handover: 100% of the remaining

Milestone

Recognition

Completion Date

Amount Recognized

Design & Approval

Fixed Cost

12/Jan/2025

$5000

Demolition & Site Preparation

30% of the total contract

20/Feb/2025

$15,000

Structural & Roofing Work

40% of the total contract

25/Apr/2025

$20,000

Interior & Handover

100% of the balance

30/Jun/2025

$10,000

Total Revenue Recognized= $50,000


The company ensures that its financial statement accurately reflects real project progress by only reporting revenue when each phase is completed, rather than relying on an automated schedule that may not match the actual work done.

If you look at the revenue recognition report, it will show up like this,


i) Recognized Revenue Report

At the end of the project,

Month

Recognized Revenue

Jan 2025

$5000

Feb 2025

$15,000

Mar 2025

$0

Apr 2025

$20,000

May 2025

$0

Jun 2025

$10,000

Total Recognized

$50,000

 

ii) Deferred Revenue Report

As the project progresses, deferred value gets recognized.

Month

Deferred Revenue

Jan 2025

$45,000

Feb 2025

$30,000

Mar 2025

$30,000

Apr 2025

$10,000

May 2025

$10,000

Jun 2025

$0

 

iii) Revenue Waterfall Report

Billing Date

Total Billed

Jan 2025

Feb 2025

Mar 2025

Apr 2025

May 2025

Jun 2025

Recognized Revenue

Deferred Revenue

Jan 2025

$50,000

$5,000

$15,000

$0

$20,000

$0

$10,000

$50,000

$0

 

The project owner ensures that revenue is recorded accurately only after each milestone is completed, and this is done manually without any specific frequency.


Example 2:

A software consulting firm signs a $120,000 contract to implement an in-house ERP solution with a client. The client pays the amount upfront, but the project involves phases that don't follow uniform timelines/deadlines.

The defined timelines are,

  • Requirement Analysis & Resource Planning: $10,000

  • System Customization: 25% of the total contract

  • Testing & QA: 35% of total contract

  • Deployment & Support: Remaining contract value

 

Milestone

Recognition

Completion Date

Amount Recognized

Requirement Analysis & Planning

Fixed Cost

15/Jan/2025

$10,000

System Customization

25% of the contract value

10/Mar/2025

$30,000

Testing & QA

35% of the contact value

25/May/2025

$42,000

Deployment & Support

100% of the balance

30/Jul/2025

$38,000

Total Revenue Recognized= $120,000

 

When you look at the revenue recognition report for this software deployment, it will show up as follows,


i) Recognized Revenue Report

At the end of the deployment,

Month

Recognized Revenue

Jan 2025

$10,000

Feb 2025

$0

Mar 2025

$30,000

Apr 2025

$0

May 2025

$42,000

Jun 2025

$0

Jul 2025

$38,000

Total Recognized

$120,000

 

ii) Deferred Revenue Report

As the development progresses, deferred value gets recognized.

Month

Deferred Revenue

Jan 2025

$110,000

Feb 2025

$110,000

Mar 2025

$80,000

Apr 2025

$0

May 2025

$38,000

Jun 2025

$38,000

Jul 2025

$0

 

iii) Revenue Waterfall Report

Billing Date

Total Billed

Jan 2025

Feb 2025

Mar 2025

Apr 2025

May 2025

Jun 2025

Jul 2025

Recognized Revenue

Deferred Revenue

Jan 2025

$120,000

$10,000

$0

$30,000

$0

$42,000

$0

$38,000

$120,000

$0

 

Manual revenue recognition is critical when automated rules don't serve the purpose. As we saw through construction and IT consulting examples, Zoho Billing allows businesses to recognize revenue at the right amount and time, ensuring financial statements remain aligned with real project progress.


While we learn the manual recognition process, we will explore these specific industry types in future posts and provide a detailed walk-through of how these businesses record their earnings.

Our next post will start with the SaaS industry, where revenue recognition follows a very different pattern. Unlike milestone-based revenue recognition, SaaS depends more on a recurring billing cycle.

Stay tuned as we explore revenue recognition for SaaS businesses in a few days. 

      • Sticky Posts

      • Community Learning Series | Digest #5 — September 2020

        Dear customers, We're happy to bring you the September edition of our #CommunityDigest! Keep track of your subscription KPIs right from your smartphone: Last month, we enhanced our Android mobile app to help our customers get daily updates on their business health. We got to know from a lot of customers that this has made their job much more easier because they no longer have to keep a reminder to manually check on the previous day's revenue or activations. If you have not downloaded it yet, here's
      • Community Learning Series | Digest #4 - August 2020

        Dear customers, We hope you're staying safe and healthy. I'm happy to bring you the fourth edition of our #CommunityDigest with some brand-new updates from us. 1. Daily Business Updates (for Android users) The Zoho Subscriptions Android app has got a cool new update: You can now get a push notification to your smartphone that lets you know how many activations and cancellations have taken place, and what's the net revenue for the previous day. The best part is, you can tell the app when exactly you
      • Community Learning Series | Digest #3 - July 2020

        Dear customers, We hope you're staying safe and healthy. We're glad to bring you the July edition of our #CommunityDigest. New community members can view our previous newsletters here. This time, we have two major updates and three interesting topics for you: 1. Zoho Subscriptions Developer Community Since the inception of Zoho Subscriptions, our team believed that the recurring billing platform we provide should be able to offer an extensive API library that empowers businesses to automate most
      • Introducing: Community Learning Series | Digest #1 - May 2020

        Dear customers, We hope you are staying safe and healthy. Helping businesses manage their customer subscriptions more efficiently has always been, and always will be, our goal at Zoho Subscriptions. We strongly believe this is possible if we grow together as a community and share what we know with each other. To nurture this shared learning experience, here is our brand-new Community Learning Series! ​ Welcome to the first edition of our digest! Each edition of our community digest includes guides

        • Recent Topics

        • How can we clear a signature field with deluge?

          I would like to clear a signature field in the Edit -> On Load. I have tried input.signature = ""; input.signature = null; clear input.signature; None of the above is working. is there any other way I am missing?
        • Online PDF Editor

          Hello Team, There is a small glitch i found when i was using your online software called "PDF Editor", There is a menu bar on right side comes when we click on 3 dots for any pdf, but that entire menu has no options to choose, that is totally blank, please
        • How do I disconnect my Salesforce integration?

          I need to integrate a different Salesforce sandbox with my Zoho form.
        • Zoho Recruit - Email Relay

          Good day, Has anyone succeeded in setting up an email relay for Office 365? If I add the details from https://support.microsoft.com/en-us/office/pop-imap-and-smtp-settings-8361e398-8af4-4e97-b147-6c6c4ac95353, I get the connection error. Regards, Eka
        • Zoho Recruit -> Exchange Online Relay

          HI! I have tried to connect Recruit to our MS 365 Exchange Online without any luck. I use this guide https://help.zoho.com/portal/en/kb/recruit/outreach/email-relay/articles/email-relay-zoho-recruit#Configuring_Email_Relay_Settings Do anyone have the
        • Error AS101 when adding new email alias

          Hi, I am trying to add apple@(mydomain).com The error AS101 is shown while I try to add the alias.
        • an issue in Zoho CRM where the workflow rule is not triggering

          H I’m currently facing an issue in Zoho CRM where the workflow rule is not triggering when a new lead is created through a webform. I’ve double-checked the criteria and field updates, everything seems fine but it still doesn’t fire. Has anyone faced this
        • 401 Unauthenticated Error – Zoho CRM to Google Sheets Integration

          Hi I'm building an Automation Function in Zoho CRM using Deluge that appends contact data from Zoho CRM into a Google Sheet whenever a new contact is created. WHAT I'VE DONE: I created a connection in Zoho CRM (Developer Hub → Connections) with the following
        • Power up your Kiosk Studio with Real-Time Data Capture, Client Scripts & More!

          Hello Everyone, We’re thrilled to announce a powerful set of enhancements to Kiosk Studio in Zoho CRM. These new updates give you more flexibility, faster record handling, and real-time data capture, making your Kiosk flows smarter and more efficient
        • Income not showing in direct bank feed

          Hi, I am trying to enter income without knowing or mentioning customer, as i am told, my client wants single or cash basis accounting but i seriously struggling......................
        • 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.
        • Preview future shift rotation in Shift Schedule

          Hi, What if, instead of the current behavior, the Shift Rotation feature in Zoho People allowed users to preview future shift schedules before the scheduler execution? Currently, when a shift rotation is configured (for example, monthly rotation), the
        • Automatically Update Ticket Status in Zoho Desk Based on Actions in Zoho Projects

          Hi Zoho Desk Team, Hope you’re doing well. We’re using the Zoho Desk–Zoho Projects integration to manage tasks related to customer tickets, and it works well for linking and tracking progress. However, there are a few important automation capabilities
        • Sign Out

          Hello, I have a doubt with Permalink. I have a view created with critera to show only the records belonging to the user who has sign in. The problem is that the different users use the same computer and some times the user login keep signed, and when I send the permalink (by email) of the view, the users enter with other login signed. Moreover the permalink view doesn�t allow to do a log out. May I add something in the permalink to request always sign in? Sorry for my English. Many thanks! Regards
        • Announcing new features in Trident for Windows (v.1.39.4.0)

          Hello Community! Trident for Windows just received a major update, with a range of capabilities that focuses on strengthening communication and simplifying workflows. Let’s dive into what’s new! Upload email attachments to WorkDrive. Until now, you could
        • Introducing Automatic Field Addition (Text Tags) in Zoho Sign

          Hello, Today we are excited to announce the general availability of automatic field addition (text tags) feature in Zoho Sign. Now, you can now add text tags in the content of your documents and Zoho Sign will automatically add the corresponding fields when they are uploaded for the signing process. For example: when you add text tags to your sales orders, new employee contracts, and NDAs, Zoho Sign will add the corresponding fields when these documents are uploaded for the signing process. If you
        • Introducing Built-in Telephony in Zoho Recruit

          We’re excited to introduce Built-in Telephony in Zoho Recruit, designed to make recruiter–candidate communication faster, simpler, and fully traceable. These capabilities help you reduce app switching, handle inbound calls efficiently, and keep every
        • Write-Off multiple invoices and tax calculation

          Good evening, I have many invoices which are long overdue and I do not expect them to be paid. I believe I should write them off. I did some tests and I have some questions:  - I cannot find a way to write off several invoices together. How can I do that,
        • Splitting Transactions in Zoho Books

          I have read in past forum posts that the ability to split bank transactions would likely be implemented - it's definitely a typical accounting program feature.  I'm new to Zoho and thought I'd found nirvana until I realized this feature doesn't seem to
        • Statement Aging On Cutomer Statement

          Hello, Is it possible to put aging on customer statements? Current 1-30days 31-60days 61-90days 91-120days Over 120 days. See attached image from another accounting package. Many customers pay off a statement and clear older invoices.
        • Unveiling the next iteration of Ask Zia in Zoho CRM: An all-new chat interface, conversation history, actions, and much more

          Your CRM assistant just leveled up. Zoho CRM's Ask Zia functionality now offers a more conversational and context-aware experience to help you not just understand your data, but act on it—all from one chat window. With its redesigned interface and expanded
        • Response rate and time on social media

          Hello, I just want to know if it's possible to manage the response rate and response time from my social media on zoho social ? I don't see any statistical reports on the online scoreboard ? Thank you in advance for your response and sorry if the question has already been posted
        • Whatsapp BOT with CRM

          Hello, how do you use Whatsapp integrations in zoho CRM?
        • Ability to translate Zoho CRM Kiosks

          Hi team, Is support for translating kiosk text and screen names in the Zoho CRM translation tool planned on the roadmap? Thanks,
        • Whatsapp Limitation Questions

          Good day, I would like to find out about the functionality or possibility of all the below points within the Zoho/WhatsApp integration. Will WhatsApp buttons ever be possible in the future? Will WhatsApp Re-directs to different users be possible based
        • Editing the list of Categories in the Categorize Manually section of Banking in Zoho Books

          Hi, I need to create two new Categories called Withdrawals and Deposits to categorize payments in a bank account. How do I edit the Categories list?
        • Can I write a check in Zoho Books with no associated bill?

          This currently does not seem possible, and I have a client that desperately needs this function if I am able to convert them with Quickbooks. Thank you in advance for your reply. 
        • Internal Fillable Contract with Zoho Writer (Before Sending to Client)

          Hi everyone, I’m trying to automate the following process in Zoho CRM and would appreciate some guidance. Process: When a Deal moves to a specific stage, CRM triggers an automation. CRM sends a contract template to an internal team member so they can
        • [Free Webinar] Intelligent document processing with Zoho RPA

          Hello everyone! Greetings from the Zoho RPA team! We're excited to invite you to our upcoming webinar on intelligent document processing with Zoho RPA, where we'll introduce powerful new capabilities designed to make your automation journey smarter, faster,
        • Enhancements for Currencies in Zoho CRM: Automatic exchange rate updates, options to update record exchange rates, and more

          The multi-currency feature helps you track currencies region-wise. This can apply to Sales, CTC, or any other currency-related data. You can record amounts in a customer’s local currency, while the CRM automatically converts them to your home currency
        • When I schedule calendar appointments in zoho and invite external emails, they do not receive invites

          Hello, We have recently transitioned to zoho and are having a problem with the calendar feature. When we schedule new calendar appointments in zoho the invite emails aren't being sent to the external users that we list in participants. However, this works
        • Send emails directly via Cases module

          Greetings all, The ability to send emails from the Cases module, which users have been eagerly anticipating, is now available, just like in the other modules. In Zoho CRM, Cases is a module specifically designed for managing support tickets. If your organization
        • Webinar Alert: Supercharge landing pages with data insights | Zoho LandingPage

          Every visitor to your landing page leaves behind valuable data, but are you leveraging it to improve conversions? Join our expert-led Landing Page Analytics webinar to learn how to track, analyze, and optimize landing page performance with Zoho LandingPage’s
        • Bulk Deletion of Zoho Projects Using Node.js and Zoho Projects API

          Zoho Projects currently does not provide a built-in option to delete multiple projects in bulk from the UI. When working with testing environments or large numbers of temporary projects, deleting them one by one becomes time-consuming. To address this,
        • Show unsubscribed contacts ?

          Hello, I would like to display the unsubscribed contacts. Unfortunately, I do not have this subscription type as described in the documentation (https://help.zoho.com/portal/en/kb/marketing-automation-2-0/user-guide/contacts/contact-management/articles/subscription-type-24-1-2024#Subscription_Type_field.)
        • Track Marketing Automation Campaigns in Zoho CRM

          Hello, I've been searching but haven't found the exact answer to this question. I am looking to track Marketing Automation email campaigns and activities inside of Zoho CRM. Use Case: Action: Prospect Submits A Lead Form Outcomes: Prospect created in
        • Validation rule for Date field

          The condition settings for a Date field are are absolutlly usless. Conditions can only be set for a specific date, which is logically ineffective in most cases. When setting a condition for a Date field, users usually need to compare the value relative
        • Easily map shift data fields during user imports

          Greetings all, You can now include all your shift-related data for your users without any hassle during user imports. With this enhancement, the Map Import Fields to Zoho CRM option includes all shift-related fields: Current Shift, Next Shift, and Shift
        • Unable to send

          Hello, I am unble to send any single email during the whole time due to the Zoho IP 136.143.188.16 being bloked by SpamCop.net Please help can somebody help me?
        • Adding new data to the sheet with most recent data being added to top row.

          I am using a form that I built from within sheets.  When the form is submitted, is it possible to have the data entered in (for example) row 2 (since row 1 is the heading) instead of being added into the next available row which should be hundreds of
        • Next Page