We live in a world where connectivity has become a lifestyle rather than a luxury. From smart thermostats that adjust your home's temperature to GPS trackers monitoring end-to-end fleets and sensors that optimize energy grids, the Internet of Things has woven digital intelligence into everyday life.
Billions of devices are constantly talking to us, to each other and to the cloud, providing an avalanche of data every second. This data fuels smart decisions, greater efficiency and an entirely new business model.
But for IoT providers, it also introduces a complex financial question: "How do you turn constant, variable device activities into clear, fair, and scalable revenue?"
Many providers start with flat-rate or subscription-based billing. It's simple to launch, but it quickly becomes misaligned with reality. A simple example is a household sensor that transmits a few readings per day shouldn't be billed the same as an industrial gateway streaming live data 24/7. Static pricing models cause imbalance and make heavy users overconsume, and light users overpay.
As the IoT ecosystem expands, the real challenge becomes monetizing data usage accurately without manual intervention or considering different data sources.
With Zoho Billing, businesses capture real-time device activity and transform it into transparent automated invoices. Let's explore how it works across three popular IoT services.
Scenario 1:
A utility provider offering smart water and gas meters to homes and offices. Each meter transmits consumption data hourly to the cloud. Residential customers expect fair pricing that reflects their consumption patterns. It's simple, user who uses less pays less and heavy users pay more. Instead of a flat per litre rate, the provider uses volume-based pricing:
Up to 25,00 litres: $0.002 per litre
25,001 to 75,000 litres: $0.0015 per litre
Above 75,000 litres: $0.001 per litre
This model rewards conservation and scales naturally across different customer types.
If a household uses 30,000 litres, it pays: 30,000 x $0.0015= $45
A small business uses 90,000 litres, pays: 90,000 x $0.001= $90
The IoT platform transmits usage data via Zoho Billing API, and Zoho Billing automatically applies the right price to each customer based on total consumption. The combination of automated data capture, volume-based billing, and clear invoices builds trust with consumers while scaling effortlessly for utility.
Scenario 2:
A fleet management company offering GST tracking, route analytics, and driver monitoring for logistics firms. Clients pay a fixed fee per vehicle for access to the tracking system and addon charges if their data usage exceeds the plan limit. The base plan is $20 per vehicle per month, including 1GB of data. For usage over 1 GB, the additional cost per MB is $0.05.
A logistics company with 50 trucks uses 65 GB in total. The average usage is 1.3 GB per truck. So it pays,
Item | Value |
Base Fee for 50 trucks (50x20) | $1000 |
Overage per truck (0.3x 1024 MB x $0.05) | $15.36 |
Total Overage ($15.36x50 trucks) | $768 |
Total Invoice Value ($1000+$768) | $1768 |
The service provider exports usage logs as a monthly CSV file and imports them into Zoho Billing. The billing system applies the base plan inclusions, calculates the overage automatically, and generates a detailed invoice showing per-vehicle consumption.
The model delivers predictable revenue for the business while giving customers full visibility into what they are paying for. This is almost a win-win situation for both clients and the service provider.
Scenario 3:
A small home security provider offering connected cameras, sensors and cloud video storage to a residential complex. House owners are billed based on multiple metrics, namely, the number of active devices, the number of motion events captured, and the minutes of video stored in the cloud.
The base price for a camera is $5 per month and $0.01 per motion event recorded. For video stored in the cloud, the charges are $0.002 per minute.
If a user has four cameras, 800 motion events, and 15,000 minutes of video pay,
Item | Value |
Cameras 4x $5 | $20 |
Motion event 800 x $0.01 | $8 |
Video Storage 15,000 x $0.002 | $30 |
Total Invoice Value | $58 |
The system integrates directly with Zoho Billing's API, transmitting daily usage updates for each customer. Each metric is defined separately, and Zoho Billing aggregates and applies the relevant pricing for each before generating a consolidated invoice.
This ensures billing accuracy and flexibility, even as the business scales to millions of active devices.
Every Connection Counts; Every Count Pays
In the connected economy, devices never sleep and do not produce data. For IoT providers, success is translating the constant data flow into dependable, transparent revenue.
Zoho Billing makes it effortless. It supports different pricing models and usage-based billing, allowing IoT businesses to bill accurately without the burden of complexity. Whether managing smart meters, connected fleets, or home automation systems, Zoho Billing ensures that every byte, event, and interaction is captured, calculated, and billed accurately.
Usage billing is complex, but not when you use Zoho Billing anymore.

The next post will summarise what we have covered so far, as we cover usage billing and other billing that Zoho Billing offers. Most importantly, we will see the common mistakes businesses make while billing. Stay tuned!
Recent Topics
Do not use isnull()
Does not always return booleans. Can also return null. Never use this function. Just use var==null instead.
Trying to access records in a custom module in Zoho Desk and not having luck
I've built a custom module in Zoho Desk and am using a custom function to query the records in the module and I'm not having any luck. The only way I have found to retreive a record is by getting it by its recordID (the long zoho assigned one). The function
Organization wide Account and Contacts Visibility/Sharing Capabilities?
Has anyone figured out a way to make visibility or sharing of Accounts and Contacts to be available across the entire organization without having to have every individual user edit their Sharing permissions? For our sales folks they need to be able to
Is there a way to configure dark mode for Campaigns emails that go out to customers?
I've found a lot of information on how to configure dark mode for my (The user) personal Zoho workspace and email, but is there any way to edit dark mode settings on emails that we send out to customers via campaigns? We sent out a test email the other
When Does WorkDrive integrate with Books?
When Does WorkDrive integrate with Books?
How do I import Connected Records for a Deal?
Can you point me to an example of the CSV file that would add related records to an existing CRM Deal? I imported a Deal, then tried importing a connected record using a unique ID that references the Deal ID, but it doesn't attach it to the Deal rec
FSM integration with Books
Hi, I have spent a few months working with FSM and have come across a critical gap in the functionality, which I find almost shocking....either that, or I am an idiot. The lack of bi-directional sync between Books and FSM on Sales Orders/ Work Orders
How to close an estimate ?
Hello, I have created estimates, and converted them to invoices to get 50% payment. Now I have 2 cases where the estimate stills shows status partially invoiced, however: 1. for one of them, project stopped half way, so the remaining part will never be
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
Sharing Tickets to a team within a department
Hi there, We have a need for one department to be able to share tickets to a specific team within a department, I'm wondering if this is possible? All the shared tickets are going into the 'Shared Tickets' view for the whole department but is there a
How do you print out the invoices comments
I have some invoices where i need to print out the comments that show when reminders and etc were sent how do we print those out in Zoho Books.
Unable to load a specific image
Hi I am trying to upload an svg file, which reports that there is "a problem with the file", but does not say what sort of problem. I can't find anything which says which files are supported, so it may be it does not support svg. (which would be a real shame) The file itself will open in either Firefox or Chrome without problem. For the moment I am using a png file, which does not zoom well of course. David
Why does the Address field show the wrong map location even with a correct Pincode?
I am noticing an issue with the Address field map in Zoho Creator. When I enter a city name that exists in multiple locations within the same state, the map sometimes points to the wrong area even if I have entered the correct Pincode. Currently, it seems
Uploaded files are not included when using "Include user submitted data" in Email Notification
In Send Email notification workflow in Zoho Creator, there is an option called "Include user submitted data" which allows the email to contain all the form submission details. However, when this option is enabled, files or images uploaded through File
Books <-> CRM synchronisation with custom Fields
Hello, We are synchronising Books Customers with CRM Accounts. In CRM Accounts I set up last year a "segments" multiselect field shown below In Books, I set up a custom multi-select field with the same value as in the CRM And set up the synchronisation inside Books. Want to synchronise the Books Segments with the CRM Segments, but the later doesn't exist, and another non-existing is there ?! First, I don't understand where the field Segmentation is coming from. Second, I set CRM Segmentation to sync
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
Archive Option in Conversation View
Hello, I have a suggestion\request to add an "Archive Thread" button in conversation view of Zoho Mail. The best suggestion I have is to put an "Archive Thread" button next to the "Label Entire Thread" button in conversation view. Most users don't just
Outlook/Hotmail Blocking Zoho SMTP IPs (S3150)
We are currently facing a serious deliverability issue with Zoho SMTP while sending transactional OTP emails for our production application. Emails sent to Outlook / Hotmail addresses are being rejected with the following error: 550 - 5.7.1 Unfortunately,
Outlook is blocking incoming mail
Outlook is blocking all emails sent from the Zoho server. ERROR CODE :550 - 5.7.1 Unfortunately, messages from [136.143.169.51] weren't sent. Please contact your Internet service provider since part of their network is on our block list (S3150). It looks
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
Zoho Social API for generating draft posts from a third-party app ?
Hello everyone, I hope you are all well. I have a question regarding Zoho Social. I am developing an application that generates social media posts, and I would like to be able to incorporate a feature that allows saving these posts as drafts in Zoho Social.
Temporarily rate limited due to IP reputation.
We have suddenly started receiving the following Mail Delivery Status Notification: Diagnostic-Code: 4.7.650 The mail server [136.143.184.12] has been temporarily rate limited due to IP reputation. For e-mail delivery information, see https://aka.ms/postmaster
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
IMPORTANT: It doesn´t search for letters with portuguese characters.
Some of my articles have for example the word "vídeo". But if I search for "vídeo" it doesn´t find them. If I search for "video" it does find them. Idealy, it should find the articles either way. But if I have to choose, it would be better to find the
IMPORTANT: It doens´t show full article name on search - Should add line break
When we search for articles, it doesn´t show the full name. There should be a line break so the user can see the full article name, otherwise the user can´t know if that´s the article he/she is looking for. This is very important, otherwise the user has
Zoho Books - Payment Gateway - Revolut
Hi Books Team, My feature request if to include the popular platform Revolut as a payment collection option on invoices in Zoho Books. Please upvote if you are also looking for this option.
Zoho Books | Product updates | January 2026
Hello users, We’ve rolled out new features and enhancements in Zoho Books. From e-filing Form 1099 directly with the IRS to corporation tax support, explore the updates designed to enhance your bookkeeping experience. E-File Form 1099 Directly With the
Kaizen #233 - Generating AI-powered Follow-up Emails Using CRM Functions and Widgets
Hey everyone! Welcome back to another interesting post in the Kaizen series! Sales teams regularly capture interaction notes in CRM after speaking with prospects. However, drafting a follow-up email that reflects the conversation context can be repetitive
Connect Bank in Zoho Books
Can I connect UOB or Ariwallex in Zoho Books?
Using MPN across multiple SKUs and inventory tracking
I have several different SKU's that share a common MPN and would like to track inventory by MPN. SKU1 has MPN1 assigned SKU2 has MPN1 assigned Here is an example If I start with 5 of MPN 1 in stock I want each SKU1 and SKU2 to show as 5 in stock, If I
Extend Zoho Canvas Customization to Zoho Creator Forms and Reports
Currently, Zoho Canvas allows users to design and customize the UI of Zoho CRM modules with a much better visual experience. This helps organizations create cleaner layouts, improve usability, and design interfaces that match their workflows. However,
Marketing Tip #1: Optimize item titles for SEO
Your item title is the first thing both Google and shoppers notice. Instead of a generic “Leather Bag,” go for something detailed like “Handcrafted Leather Laptop Bag – Durable & Stylish.” This helps your items rank better in search results and instantly
Feature Enhancement Request – Text Formatting Options in Item Description (Zoho Books/Quotes Module)
Dear Zoho Development Team, Greetings from Radiant360 Integrated Technical Services LLC. We would like to bring to your attention a functional limitation we've encountered within the Item Table / Quote Description section of Zoho Books (and Zoho CRM Quotes).
ZOHO Books Query
Good day, Can someone please advise. I recently migrated from ZOHO Invoice to ZOHO Books. No that I want to use the inventory on Books I cant as all my items have transaction history. The person I spoke to at ZOHO said I need to create a new Company profile
Best way to schedule bill payments to vendors
I've integrated Forte so that I can convert POs to bills and make payments to my vendors all through Books. Is there a way to schedule the bill payments as some of my vendors are net 30, net 60 and even net 90 days. If I can't get this to work, I'll have
ZOHO.CRM.UI.Record.open not working properly
I have a Zoho CRM Widget and in it I have a block where it will open the blocks Meeting like below block.addEventListener("click", () => { ZOHO.CRM.UI.Record.open({ Entity: "Events", RecordID: meeting.id }).catch(err => { console.error("Open record failed:",
Removing To or CC Addresses from Desk Ticket
I was hoping i could find a way to remove unnecessary email addresses from tickets submitted via email. For example, a customer may email the support address AND others who are in the helpdesk notification group, in either the TO or CC address. This results
inventory removal at packing list or shipment.
currently our system is set to remove inventory at invoice. This is creating an inventory nightmare? Is it possible to change the settings to remove the item from inventory at either the packing slip stage or shipping the item.
How to add employee and not invite them to log in?
I want to add 50 employees, but invite them only when everything will be configured and ready. Is it possible? Should we create employee profiles and then convert them later? Thank you,
How is Your eCommerce Experience w/Zoho Inventory?
First off, I'm SUPER grateful for the advent of Zoho Inventory and now the Zoho Commerce Suite. Overall, Inventory is a great product, especially for customers without an eCommerce presence. For eCommerce companies (especially those shipping more than ~10 packages/day), however, there are certain drawbacks that keep my clients from moving over to Zoho Inventory: Cons: 1. Invoice + Package Creation from Shopify/Other eCommerce Integrations: Zoho Inventory makes the somewhat perplexing decision to
Next Page