Hello everyone,
We've been sharing a tip every week to address specific business scenarios which can be implemented for your subscription business. Last week, we shared a tip about
integrating online form builders with Zoho Subscriptions. This week, we will be looking at
how you can implement metered billing in Zoho Subscriptions with Google Sheet.
Business Scenario:
Metered Billing
is the concept of charging your customers based on their usage of a product of service. With Zoho Subscriptions, you can charge your customers for a base plan initially and then charge an additional fee based on their usage using metered billing.
Generally, when a business wants to automate the metered billing process, they should have a back-end server that handles the metered billing readings. Once the reading is recorded, the back-end server has to process the difference between the last recorded reading and the current closing reading. If the customer has exceeded the base limit, the back-end server makes an API request to Zoho Subscriptions to update the invoice and charge an additional fee.
Let's consider the following scenario to understand this better.
Zylker Electro provides electricity services to residential areas. They have a meter installed in all the houses of the residential area to record the power consumption. Every month, a Zylker personnel visits the houses in the residential area to note down the meter reading. Then, the difference between last month's meter reading and the current month is calculated. If the customer has consumed more than 500 units of power, they will charge the customer an additional 12 cents per unit.
To automate the above process, Zylker has to build a back-end server that will:
- store the meter readings;
- calculate the power consumed for every month; and
- charge the customers accordingly.
Instead of building a back-end server, you can automate the process using the
Custom Functions in Zoho Subscriptions and
Google Sheets. With the help of Google Sheets, you can note down all the metered readings every month. Later, you can use
Google App Scripts to fetch the readings and update the pending invoice using the Custom Functions.
How can you do it?
You can use Google Sheets to note down the readings every month (similar to the image shown below).
|
Field
|
Description
|
|
Last Recorded Reading
|
The meter reading at the end of the previous month.
|
|
Closing Reading
|
The meter reading at the end of the current month.
|
|
Status
|
The field is used to specify whether the invoice for a customer has been updated in Zoho Subscriptions or not.
|
|
ID
|
Unique Ids that are used to map the customers between Google Sheets and Zoho Subscriptions.
|
Google allows us to access and edit the data in spreadsheet with the help of Google Scripts. Coming back to the scenario, every month a Zylker personnel will record the readings in the Google Sheet. With Zoho Subscriptions, you can configure a custom function to run for the invoices in the
Pending status. You must configure the Custom Function in such a way that:
- it fetches the meter readings from Google Sheets using Google script;
- processes the data and adds an additional charge to the invoice, if needed (based on the consumption);
- updates the Status in Google Sheets as Updated; and
- updates the Last Recorded Reading with current month's closing reading.
Once the custom function executes successfully, the invoice will be updated with the additional charge. The value in the Status field of the Google sheet will also be updated.
Getting started with Google Apps Scripts:
Google Apps Scripts provides you with feature-rich APIs that allow you to build you own web applications. For our scenario, we will be using the Spreadsheet APIs to fetch and edit the spreadsheet document. We will create two scripts:
- The first script will be used to fetch the last recorded reading and the closing reading of a customer.
- The second script for changing the Status field of the customer once the invoice is updated.
To create a script in Google App Scripts:
- Go to and click the New Script option on the top-left corner.
- Copy the scripts provided above and modify it to suit your needs.
- Once you are done, click the Publish option on the top and select the Deploy as web app option.
- Provide the project name.
- Choose Anyone, even anonymous in the Who has access to the app dropdown.
- Click the Deploy button.
- Save the Web app URL which will be displayed on the screen for future reference.
Once the Google app scripts are successfully deployed:
- Create a new Custom Function in Zoho Subscriptions.
- Choose the Module as Invoice and Predefined event as Invoice created.
- Copy the Custom function from this GitHub link and modify it as per your requirements.
- Save the Custom Function and you are good to go.
Found this useful? Try it out for your subscription business and let us know. If you have any queries, feel free to comment below. We are here to answer them.
Cheers,
Sasidaran K,
The Zoho Subscriptions Team.
Sticky Posts
Tip #4 : Refer and Earn Workflow system for your Subscription Business
Hello everyone, We've been coming up with a tip every week to address specific business scenarios which can be implemented for your business. In continuation to the previous post, this week we will be seeing about how you can implement the Refer and Earn Workflow system to acquire more customers. Why are Referrals important? Customer Acquisition is crucial for any business to sustain itself in a constantly evolving market. It involves persuading new consumers to purchase your products. Customers
Tip #2 - Cancellation of Offline Subscriptions based on the Expected Payment Date
Hello everyone, As you all know, we are coming up with a custom function workflow every week to address specific business scenarios. In continuation of this previous blog, this week we will be seeing about Cancellation of Offline Subscriptions based on the Expected Payment Date. Business Scenario: In general, for any business, the customers make payments via online as well as offline. In case of subscription where the automatic collection of charge is enabled (aka online subscription), the customer's
Tip #3 : Send SMS Reminders for your Subscription Business
Hello everyone, As you all know, we are coming up with a tip every week to address specific business scenarios. In continuation to the previous blog, this week we will be seeing how you can use SMS reminders for your Subscription Business. Using SMS messages for your Subscription Business: While managing your subscription business, more often than not, you need to keep your customers informed about upcoming renewals, payment reminders and cancellations. By keeping them informed in advance, you can
Tips And Tricks - Announcement
Hello everyone, Every business is unique and each of them follows a specific workflow. While managing your customers' subscriptions with Zoho, you might have some needs unique to your business. Custom Functions helps you address such needs. This is a start to a series of posts, where we will be coming up with a custom function workflow every week that addresses specific business scenarios. Watch this space for further updates! Also, if you have any specific business scenario which needs to be addressed,
Tip #6 : Accessing external URLs from Zoho Subscriptions
Hello everyone, We have been sharing a tip every week to address specific business scenarios which you can implement for your subscription business. Last week, we shared a tip about implementing the Approval Workflow system. This week, let's look at how you can access external URLs with the help of Custom Link. Business Scenario: Every business functions differently and has its unique requirements. At times, businesses might want to access other websites or applications by appending specific information
Recent Topics
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
Questions Regarding Helpdesk & SalesIQ Customization and Email Setup
Hello, I hope you’re doing well. I have a few questions regarding Helpdesk and SalesIQ: Can the emails sent to customers via helpdesk tickets be fully customized — including signature, subject line, and other elements? Also, is it possible to send these
Zoho Writer Frequently not loading
I've reported this as a problem already but I can't log into my email right now or get onto the main site so you're going to hear about it again here: at least once a week, Zoho Writer will just refuse to load entirely. The main page will load and load
Read Thread Details
Does anyone know how to "read" the complete thread details in a ticket? I figured out how to pull a summary of the threads using a webhook, but it doesn't have all the details I want. I tried to create a loop in flow, which should have worked, but instead
How to Structure Data in Zoho Creator Applications
Data structure is undoubtedly one of the most critical pillars in application development within Zoho Creator. Well-structured projects scale easily, enable more robust automations, and drastically reduce rework. Poorly modeled applications, on the other
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
Re: Application Architecture in Zoho Creator — A Platform-Specific Deep Dive
A recent community post on application architecture made some excellent points about planning architecture early in Zoho Creator projects. The core message is right — Creator applications have a habit of growing organically into maintenance nightmares,
Client Script: Any plans to add support for multi-select field with onChange
Client Script is fantastic and the documentation lists multiselect form fields as unsupported. Just wondering if there are any plans to make this a supported field. https://www.zoho.com/crm/developer/docs/client-script/client-script-events.html 2. Field
Set another Layout as Standard
We created a few layouts and we want to set another one to standard:
Update application by uploading an updated DS file
Is it possible? I have been working with AI on my desktop improving my application, and I have to keep copy pasting stuff... Would it be possible to import the DS file on top of an existing application to update the app accordingly?
Captcha can't be enabled conditionally
Hi Problem: captcha on a form can't be enabled conditionally. Why is this a problem: Because I use the same form on our website (public) in the portal and mobile app. In the portal it works but in the mobile app it doesn't. So there should be a way to
Lookup fields can't be used for anything important
Hi It seems the lookup fields are mostly.... informative, you can at most link stuff between modules... You can't use lookup fields in blueprints, you can't use them in layout rules or anything... It that correct?
Improved RingCentral Integration
We’d like to request an enhancement to the current RingCentral integration with Zoho. RingCentral now automatically generates call transcripts and AI-based call summaries (AI Notes) for each call, which are extremely helpful for support and sales teams.
Setting GC session variable programatically in a website
Hi! Is there a way now to programatically set session variables from a website for a Guided Conversations? The current available methods are dependent on react-native.
WorkDrive issues with Windows Explorer Not Responding
We are using WorkDrive to collaborate on editing video content. We have a lot of files and quite a few are a few gigs. Recently anytime I try and work with the files Explorer freezes for a couple minutes whether it's dragging the files into Premiere or
New UI for Writer - Disappointed
I've been enjoying Zoho Writer as a new user for about 6 months, and I really like it. One of my favorite things about it is the menu bar, which you can hide or leave out while still seeing most of your page because it is off to the left. I think this
Is it possible to retrieve function (Deluge) code from Zoho CRM externally?
Hi Everyone, Is it possible to fetch or retrieve the Deluge function code from Zoho CRM using an external method (API or any other approach)? I would like to know if there is any way to access or extract the function script outside of Zoho CRM, or if
Zoho CRM Integration Form + Custom Fields
Hi! I've created an Integration Form from Zoho CRM's Vendors Module, but I can choose a few standard fields and no custom fields I've created in Zoho CRM. There is a plan to add this feature soon? Thanks in advance.
Como estruturar dados em aplicações Zoho Creator
A estrutura de dados é um dos pilares mais críticos no desenvolvimento de aplicações no Zoho Creator. Projetos bem estruturados escalam com facilidade, permitem automações mais robustas e reduzem drasticamente retrabalho. Já aplicações mal modeladas rapidamente
Creditos API
Queria saber se alguém poderia me ajudar a resolver um problema na compra e utilização de créditos de mensagens API do WhatsApp. ja tentei todos o tutoriais porem não consegui realizar a compre, pois ao clicar no botão de comprar créditos aparece a mensagem
Using Zoho Forms vs Zoho Survey
Hello - I'm looking for advice on whether to use Zoho Survey or Zoho Forms for our small non-profit. We have a Zoho One subscription, so have access to both. The main use case at the moment is application forms for our professional development programs.
Custom CSS for Zoho CRM Team Bookings embeded widget
Hello, we are adding Zoho CRM Team Bookings (crm.zoho.com) in our public website. We know that we can change Theme Color, Font Color and Background Color: Zoho CRM Booking Styling But is it possible to change other CSS attributes e.g. Font Family, like
Dashboard target enhancements
Often individuals in IT are creating dashboards for their sales team. The ability to create a single dashboard that can be used by multiple people is key. A components for a dashboard have the ability to filter by logged in user which is great. However
How to add "All Open AND Overdue" back to the Home Page Task Component?
Hi everyone, I’m looking for a way to restore the Tasks component dropdown list on the Zoho CRM Home Page. Since the recent update to the Task area in my Home Page Classic View, the dropdown options (e.g., My Next 7 Days + Overdue) are too restrictive
Enable integration of CRM CPQ functionality for ZohoOne customers using Zoho Finance application
Hi there. I can't believe I'm needing to launch this idea as I would have thought this was a little obvious. Following a number of conversations with the technical team it's become evident that the CPQ functionality within CRM cannot integrate with Zoho
Client Script event on any field of a Detail page
Hi everyone! I'd like to trigger a Client Script when a user modifies a field - any field - from the Account Details page, how can I do this? I don't want to trigger it on a specific field, but on all of them. Thanks in advance!
Is there a way to update all the start and end dates of tasks of a project after a calendar change?
Hi! Here's my situation. I've built a complete project planning. All its tasks have start dates and due dates. After completing the planning, I've realized that the project calendar was not the right one. So I changed the project calendar. I now have
Set Field Mandatory by Client Script ZOHO CRM
#Tips of the day We can set the field as mandatory by the client script var field_obj = ZDK.Page.getField('Custom_Field1'); field_obj.setMandatory(true); Custom_Field1 = Field API Name Apart from is if you have required any kind of Zoho work please do
Built-in Date Functions in Zoho Analytics Query Tables
I have a doubt about whether Zoho Analytics Query Tables provide built-in functions for start date, end date, and the current month
Zoho Certified Workshops in Berlin | 20. - 21. April
Liebe Mitglieder der deutschen Zoho-Community! Wir freuen uns, Ihnen mitteilen zu können, dass unsere Zoho Certified Workshops am 20. und 21. April nach Deutschland zurückkehren! 📍Wo finden die Workshops statt? Die zertifizierten Workshops finden im
Zoho Payroll Expansion Plans
Dear Zoho Team, I truly appreciate the continuous innovation and improvements you bring to your suite of products. However, I—and I’m sure many others—would love some clarity on your Zoho Payroll expansion roadmap. Currently, it’s only available in the
CRM x WorkDrive: File storage for new CRM signups is now powered by WorkDrive
Availability Editions: All DCs: All Release plan: Released for new signups in all DCs. It will be enabled for existing users in a phased manner in the upcoming months. Help documentation: Documents in Zoho CRM Manage folders in Documents tab Manage files
Bulk upload images and specifications to products
Hi, Many users have asked this over the years and I am also asking the same. Is there any way in which we can bulk upload product (variant) images and product specifications. The current way to upload/select image for every variant is too cumbersome.
sync two zoho crm
Hello everyone. Is it possible to sync 2 zoho crm? what would be the easiest way? I am thinking of Flow. I have a Custom Module that I would like to share with my client. We both use zoho crm. Regards.
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
Export Invoices to XML file
Namaste! ZOHO suite of Apps is awesome and we as Partner, would like to use and implement the app´s from the Financial suite like ZOHO Invoice, but, in Portugal, we can only use certified Invoice Software and for this reason, we need to develop/customize on top of ZOHO Invoice to create an XML file with specific information and after this, go to the government and certified the software. As soon as we have for example, ZOHO CRM integrated with ZOHO Invoice up and running, our business opportunities
Usar o Inventory ou módulo customizado no CRM para Gestão de Estoque ?
Minha maior dor hoje em usar o zoho é a gestão do meu estoque. Sou uma empresa de varejo e essa gestão é fundamental pra mim. Obviamente preciso que esse estoque seja visível no CRM, Inicialmente fiz através de módulos personalizados no próprio Zoho CRM,
How do I setup the performance review module?
I am pretty adept when it comes to learning software and I've set up quite a few Zoho Apps over the past 3 years. But for the life of me, I can not figure out Zoho People performance reviews. I've figured out the "Organization" & LMS Modules, but the
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
Recurring Addons
Hi, I know you can set the pricing interval for addons to weekly, monthly and yearly & set it for one off or recurring, which these are fine as a base addon item. It really would be helpful if when creating a subscription when you add on the addon item
Next Page