Function #44: Invoices from Custom Modules

Function #44: Invoices from Custom Modules



Welcome back everyone!

Last week's function was about transferring data captured from one module to another, along with the subform data This week, it's going to be about creating Invoices from Custom Modules.

Business scenario :

Usually, invoices are created from the Deals module. After all, only if you win a deal can you proceed to create an invoice. However, there are millions of businesses that do not follow the specific "Deal" pattern. For instance, in a Hospital, whenever a patient receives treatment and pays for it, although there needs to be an invoice produced, can you call that a 'deal'?

Speaking of which, the native modules of Zoho CRM may not be applicable for some businesses. Hence the option to create modules of your own. In other words, the Custom Modules. Let's take the example from above. You can have custom modules like "Patients", "Doctors", "Payments", "Medical Supplies", etc. The Invoice module, which is native, can be used from the Payments as well as the Medical Supplies module.

Now comes the question. Do you have to manually create Invoices based on the Payments? Wouldn't it be better to automate the process? That's where this week's function plays a role. Using this function, you can create a workflow or a custom button to generate an invoice once the payment is made. Essentially,

Getting started with the function:

  1. Go to Setup > Automation > Actions > Functions > Configure Function > Write your own.
  2. Provide a name for the function. For example: "Create Invoice". Add a description (optional).
  3. Copy the code given below.
  4. Click “Edit arguments”.
  5. Enter the name as “dealId” and select the value as “Deal Id”.
  6. Click Save&Execute Script to check the code.
  7. Save the function.

The Code:

-----------------------------------------------------------------------------------------------------------------------

relcust =zoho.crm.getRelatedRecords("CustomModule3relatedlistname","Deals",dealId.toLong());
//info relcust;
prodlist = List();
for each rec in relcust
{
quant = ifnull(rec.get("Quantity_Required_units"),"0").toLong();
name = rec.get("CustomModule3 Product Requirement Name");
mp = Map();
mp.put("Product_Name",name);
mp.put("Unit_Price",0.0);
mp.put("Quantity",quant);
mp.put("Discount",0.0);
mp.put("tax",0.0);
mp.put("total",0.0);
mp.put("net_total",0.0);
create = zoho.crm.create("Products",mp);
info create;
prodid = create.get("id");
prodmp = Map();
prodmp.put("product",{"name":name,"id":prodid.toLong()});
prodmp.put("list_price",0.0);
prodmp.put("quantity",quant);
prodlist.add(prodmp);
}
invmp = Map();
invmp.put("Subject",potname);
invmp.put("Deal_Name",dealId.toLong());
invmp.put("Product_Details",prodlist);
create1 = zoho.crm.create("Invoices",invmp);
info invmp;
info create1;

-----------------------------------------------------------------------------------------------------------------------

Note:

  • The code given above works only for V2 version of Zoho APIs. Please note that the code WILL NOT work for Version 1.0 APIs.

Found this useful? Try it out and let me know how it works! If you have questions, do not hesitate to ask! Do check out other functions shared in this series here.

See you all next week with another interesting function. Ciao!


    Access your files securely from anywhere







                            Zoho Developer Community




                                                  • Desk Community Learning Series


                                                  • Digest


                                                  • Functions


                                                  • Meetups


                                                  • Kbase


                                                  • Resources


                                                  • Glossary


                                                  • Desk Marketplace


                                                  • MVP Corner


                                                  • Word of the Day


                                                  • Ask the Experts



                                                            • Sticky Posts

                                                            • How to reach the official Zoho Support channels and avoid fake ones.

                                                              Dear Customers, Thanks a lot for choosing Zoho! Our applications are built to help achieve your day-to-day business goals. We are committed to engaging with you, to understand and develop solutions that enhance your productivity.  We are happy and ready to help you use our services effectively. Understanding and avoiding fake support Just like using popular bank names and financial applications for phishing purposes, using Zoho and claiming to be providing Zoho Support or services with false numbers
                                                            • Function #35: Close all tasks associated with a lead and create a new task.

                                                              Welcome back everyone! Last week, we learnt how to close all tasks of a deal depending upon the deal stage. This week, let's look at a custom function that lets you close all of the tasks associated with a lead while simultaneously creating a new task, like when you need to halt all progress towards a lead while the lead is not available at the moment but create a reminder task. Business scenario: The success of a company, in one way or another, is determined by the leads it gets. Each lead is just
                                                            • Zoho CRM Webinar - Redesigning Daily User Experiences with Canvas

                                                              <br> Your users across roles use the CRM for day-to-day tasks that are necessary. Whether they perform their tasks on time, the right way, or at all depends on a lot of factors, including User Experience. Many businesses struggle with rigid layouts,
                                                            • Join us at the Canada ZUG Meetup: What’s New in Zoho CRM

                                                              Hello Zoho Community! Start your year with fresh insights into Zoho CRM’s latest updates and tools. Whether you're a CRM beginner or a experienced user, this meetup is crafted to help you optimise your processes and leverage new features. Explore practical
                                                            • CRM Hack #2: Automate sending of birthday greetings to your customers.

                                                                Hello everyone! What sets you apart as a sales person is your ability to add that personal touch to your business relationship with your customers. Sending a gift on a special day, or leaving a note wishing them on their birthdays, are small, yet significant actions that show your customers that you care. And these are actions done without any expectations :) You must be engaging with a lot of customers and it is highly unlikely that they all are your friends on Facebook or some social channel,


                                                            Manage your brands on social media



                                                                  Zoho TeamInbox Resources



                                                                      Zoho CRM Plus Resources

                                                                        Zoho Books Resources


                                                                          Zoho Subscriptions Resources

                                                                            Zoho Projects Resources


                                                                              Zoho Sprints Resources


                                                                                Qntrl Resources


                                                                                  Zoho Creator Resources



                                                                                      Zoho CRM Resources

                                                                                      • CRM Community Learning Series

                                                                                        CRM Community Learning Series


                                                                                      • Kaizen

                                                                                        Kaizen

                                                                                      • Functions

                                                                                        Functions

                                                                                      • Meetups

                                                                                        Meetups

                                                                                      • Kbase

                                                                                        Kbase

                                                                                      • Resources

                                                                                        Resources

                                                                                      • Digest

                                                                                        Digest

                                                                                      • CRM Marketplace

                                                                                        CRM Marketplace

                                                                                      • MVP Corner

                                                                                        MVP Corner









                                                                                          Design. Discuss. Deliver.

                                                                                          Create visually engaging stories with Zoho Show.

                                                                                          Get Started Now


                                                                                            Zoho Show Resources

                                                                                              Zoho Writer

                                                                                              Get Started. Write Away!

                                                                                              Writer is a powerful online word processor, designed for collaborative work.

                                                                                                Zoho CRM コンテンツ



                                                                                                  Nederlandse Hulpbronnen


                                                                                                      ご検討中の方




                                                                                                              • Recent Topics

                                                                                                              • Auto-fill Contacts in Zoho Mail not working for me

                                                                                                                We just switched to Zoho Mail for our company, and I am noticing that the "auto fill" feature when composing an email -- where the "to" field is autofilled (like in the attachment) from Contatcts works for everyone except me. Any way I might have made
                                                                                                              • How to unlink a SAML user from the existing Zoho Desk user (domain change case)

                                                                                                                Hi everyone, I’m trying to understand how to handle a situation where a customer changes their company domain. In our setup, users authenticate via SAML, so when the domain changes, the SAML system treats them as a new user. However, in Zoho Desk, I’d
                                                                                                              • Price Managment

                                                                                                                I have been in discussions with Zoho for some time and not getting what I need. Maybe someone can help explain the logic behind this for me as I fail to understand. When creating an item, you input a sales rate and purchase rate. These rates are just
                                                                                                              • Related to zoho survey

                                                                                                                Hi team. I want to know something regarding zoho survey question builder. I have two questions each of dropdown (One answer) - question type. In the first question, there are 16 answer choices and in the second question, there are 3 answer choices. For
                                                                                                              • Text Message

                                                                                                                When trying to sent a text message, it says its an error i should contact a zoho agent
                                                                                                              • Zoho POS is now available for Canadian retailers

                                                                                                                Hey everyone, We're excited to introduce the all-new Canadian edition of Zoho POS, which helps retail businesses simplify and manage their end-to-end business operations. Start by signing up and exploring the 15-day free trial. Sign up now How does Zoho
                                                                                                              • Payroll In Canada

                                                                                                                Hi, When can we expect to have payroll in Canada with books 
                                                                                                              • Mass update to change or shift all project dates and keep project structure + shift all sub-tasks dates with main tasks

                                                                                                                Most users would expect that if they change the start date of their project then that will be reflected inside the actual project and any project structure would be retained.  Additionally if a task list with associated sub-tasks is moved, most users would expect that those sub-tasks would also be moved along with their parent task.  This is not the case. For a total Project shift of dates: * the start and end date from > "Edit Project" page can have a radio button added to "shift all project tasks
                                                                                                              • Closing Accounting Periods - Invoice/Posting dates

                                                                                                                Hi, I have seen in another thread but I'm unsure on how the 'transaction locking' works with regards to new and old transactions. When producing monthly accounts if I close December 24 accounts on 8th Jan 25 will transaction locking prevent me from posting
                                                                                                              • In-person ZUG Meetups for Real Estate Professionals - US Q1 2026

                                                                                                                The Real Estate Zoho User Group is going on a multi-city, in-person meetup tour across the US, and we’d love to see you there! These meetups are a great opportunity to: Connect with fellow real estate professionals using Zoho Share challenges and discover
                                                                                                              • Zoho CRM custom fields not showing in zoho creator

                                                                                                                Hi Team, I have created a Products form with Zoho CRM integration and connected it to Products module of CRM. But when I see the reports of Products in Zoho creator then I am not able to see custom fields of Products module. Only standard fields of Products
                                                                                                              • Sending email notifications based on language

                                                                                                                Hello. I would like to know how we can bypass the default notifications (which are just in English) for when a ticket is created/replied to/closed, to be in other languages, based on the language field in the ticket? I can create other email templates,
                                                                                                              • Zoho Error: This Operation has been restricted. Please contact support-as@zohocorp.com for further details

                                                                                                                Hello There, l tried to verify my domain (florindagoreti.com.br) and its shows this error: This Operation has been restricted. Please contact support-as@zohocorp.com for further details. Screenshot Given Below -  please check what went wrong. Thanks
                                                                                                              • Download a file from within a zoho creator widget

                                                                                                                I have a widget running in Zoho Creator , it displays uploaded documents in a table file, and I have added a download link in the view. ( The widget is created with html, css and javascript). I do not succeed in getting the download working. Do I have
                                                                                                              • Zoho / Outlook Calendar sync

                                                                                                                The current Marketplace -> Microsoft -> Meetings integration needs 2 changes. 1. The current language for the Two-Way sync option should be changed. It currently states, "Sync both your Zoho CRM Calendar and Office 365 Calendar meetings with each other."
                                                                                                              • Email content just contain 'OK' ,not what we expect

                                                                                                                create campaign API URL: https://campaigns.zoho.com/api/v1.1/createCampaign req params: {'campaignname': 'General_Outreach_d0cfc415-43aa-4b96-bb09-558e76a3dda3_50_20251117_214806_660', 'from_email': 'admin@allinmedia.ai', 'subject': 'ALL IN MEDIA', 'list_details':
                                                                                                              • Possible to connect Zoho CRM's Sandbox with Zoho Creator's Sandbox?

                                                                                                                We are making some big changes on our CRM so we are testing it out in CRM's Sandbox. We also have a Zoho Creator app that we need to test. Is it possible to connect Zoho CRM's Sandbox to Zoho Creator's Sandbox so that I can perform those tests?
                                                                                                              • Reopen ticket

                                                                                                                Hello! Can I reopen a ticket just using the API ticket/sendReply ? What's the rules to do it? I'm trying but it doesn't reopen the ticket, it just send the reply
                                                                                                              • Allow Admins to Transfer Ownership of Their Own Files & Folders

                                                                                                                Hi Zoho WorkDrive Team, Hope you are doing well. We would like to request an important enhancement to the ownership-transfer functionality in Zoho WorkDrive, specifically regarding administrator capabilities. As administrators, we have the ability to
                                                                                                              • Tip#46: Capture accurate log hours

                                                                                                                Hello everyone, Use the newly introduced timer settings that will streamline the usage of timers and help admins or workspace owners to manage the time entries of the workspace users better. Check out the below mentioned timer settings added to the Timesheet
                                                                                                              • Moving to app-specific authentication for Google integrations

                                                                                                                Hello everyone, We’re making an important change to how Google integrations work in our platform. Until now, we used a common Google project across Zoho to enable integrations like Google Drive, Calendar, and more. Going forward, we’ll be moving to an
                                                                                                              • Lost the ability to sort by ticket owner

                                                                                                                Hi all, in the last week or so, we have lost the ability to sort tickets by Ticket Owner. Unlike the other columns which we can hover over and click on to sort, Ticket Owner is no longer clickable. Is it just us, or are other customers seeing this too?
                                                                                                              • How Can i put a form in Zobot

                                                                                                                Hi,how can i integrate a form which has a multiple options to choose from.the form should be opened or displayed by zobot after it meets a requirement in the conversation. Thanks in advance !
                                                                                                              • Playback and Management Enhancements for Zoho Quartz Recordings

                                                                                                                Hello Zoho Team, We hope you're all doing well. We would like to submit a feature request related to Zoho Quartz, the tool used to record and share browser sessions with Zoho Support. 🎯 Current Functionality As of now, Zoho Quartz allows users to record
                                                                                                              • Zoho Analytics - Feature Request For Time Based Data Source Fetch

                                                                                                                Hi Analytics Team, I have a client using Zoho CRM and they want a weekly report at 4:30pm every Friday, emailed to the sales team showing a pie chart of Closed Won Deals for that week. This is easy to achieve in Analytics but not so easy to ensure the
                                                                                                              • Which user's capacity is used for Shared Mailbox storage?

                                                                                                                We use shared mailboxes at our company, and their size is increasing daily. Which user(s)'s total mailbox limit is being used up by this space?
                                                                                                              • Inserting the current date / time

                                                                                                                I'd like to use Zoho Notebook as a log - so it would be great to be able to insert the current date and time at the beginning (or end) of each my log/journal entries - or wherever I want. Something simple, like pressing a button/icon to insert it wherever my text cursor is. It could be formatted like "Mon Dec 11, 2017 - 11:43p". 
                                                                                                              • Campaign editor overrides href value

                                                                                                                I've been trying to insert a deep link in an email campaign so recipients can directly open a native app on their device. My deep link looks something like "myapp://". The options to insert links in the campaign editor are limited to strict urls, emails,
                                                                                                              • Bug Report and Suggestions for Improvement in Zoho Applications

                                                                                                                Hi Zoho Team, I’d like to report a few bugs and improvement suggestions I’ve noticed while using Zoho products: Zoho Cliq Video Call: The camera sometimes turns off automatically during video calls. This seems to be a bug — please check and fix it. Zoho
                                                                                                              • Canvas Flex Box containers should not require a width/height.

                                                                                                                Flexbox containers are often used as organizational concepts, to ease re-flow on mobile etc. - I cannot use % for flexbox W or H - I cannot omit W or H This means that the content cannot dictate, and a Flexbox container cannot be used merely as an organizational
                                                                                                              • Zoho Desk Android app update: Filter enhancement, Save Filters

                                                                                                                Hello everyone! We have now enhanced the filter section on the ticket listing screen of Zoho Desk Android app as it is on the web(desk.zoho.com). Also, we have introduced an option to save filters for tickets on the mobile app. You can easily apply, rename,
                                                                                                              • Very long loading times | bad performance [ZOHO DC: EU]

                                                                                                                Hello there, we have recently noticed that the loading times have become extremely long when retrieving tickets and ticket details. For example, I open any ticket and get the following view. The subject and standard information (ticket owner, status etc.)
                                                                                                              • Zia Profile Summary now supports six languages and responds faster

                                                                                                                After numerous customer requests, we’ve expanded Zia Profile Summary to do more than just summarize resumes quickly. It can now summarize them in six different languages and deliver results even faster. What’s New 1. Extended language support Zia can
                                                                                                              • Introducing Zoho Show Android 3.0

                                                                                                                Good ideas need the right space to grow. They deserve tools that move as fast as your thoughts and make creating feel effortless. And that is why we are bringing you Zoho Show Android 3.0! From a brand-new look and smoother navigation to improved collaboration
                                                                                                              • Properly Capture Dropdowns & Hover Elements When Recording a Window/Tab

                                                                                                                Hi Zoho WorkDrive Team, Hope you are doing great. We encountered a limitation when recording a selected window or browser tab: Certain UI elements, such as dropdown lists, hover menus, and overlays, are not captured unless we record the entire screen.
                                                                                                              • Peppol integration zoho invoicefu

                                                                                                                Hi, Belgium will require Peppol invoicing as of 2026. I found that this is being prepared for Zoho books, to be released in Sep 2025. Will Zoho Invoice get this functionality too? I like the Invoice app for my part-time side business as bike mechanic
                                                                                                              • Allow Recording Only a Selected Portion of the Screen

                                                                                                                Hi Zoho WorkDrive Team, Hope you are doing well. We would like to request a more flexible recording option in Zoho WorkDrive. At the moment, we can record either the entire screen or a specific window/tab — but not a custom selected portion of the screen
                                                                                                              • Restricting Calendar View to Working Hours

                                                                                                                Hi: I'm trying to implement a calendar which displays all of my customer appointments.  Currently, the calendar shows all 24 hours of the day.  Is there a way to restrict the hours to simply the times my business is open? Thanks!
                                                                                                              • Add Camera Background Blur During Recording

                                                                                                                Hi Zoho WorkDrive Team, Hope everything is well. We would like to request an enhancement to the video recording feature in Zoho WorkDrive. Currently, the camera preview displayed during a recording does not support background blur. This is an essential
                                                                                                              • Amazon FBA integration - Handle invoice reconciliation under different GSTINs,

                                                                                                                Dear Zoho Community, Thank you for the clarification regarding the Amazon FBA integration, default warehouse, and GSTIN mapping in Zoho Inventory. I understand that Zoho currently supports only one warehouse for Amazon FBA, and that all FBA orders are
                                                                                                              • Next Page