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

                                                                                                              • Free Webinar on 21 January: Looking back at Zoho Mail in 2025

                                                                                                                Hello Zoho Community! Curious about how Zoho Mail evolved in 2025? Wondering how these updates can make your everyday email work simpler? We’ve got a session you won’t want to miss. In our Zoho Mail 2025 recap webinar, we’ll walk you through the key features
                                                                                                              • Cliq Networks users can see all other network users contact information

                                                                                                                Is there a way to hide user contact information from each user in networks? I would only like the users to see the admin's contact information, not other users. Network users information shared by default
                                                                                                              • Zoho Sheet - Printing - Page Breaks and Printing Customization

                                                                                                                I think the title is descriptive enough in that I cannot find help documentation on a simple task of adding in page brakes for separating pages on print. Thanks
                                                                                                              • Missing the "Find & Merge Duplicates" choice

                                                                                                                Hi, I am missing the "Find & Merge Duplicates" choice. I looked under the "More Actions" menu in Contacts, Accounts, Vendors, and Leads and it is not there. I have full permissions. Please assist me on finding this feature. Thanks!
                                                                                                              • OAuth integration issues

                                                                                                                I'm experiencing persistent OAuth errors when trying to connect Make with Zoho API. I've tried multiple approaches but keep encountering the following issues: First error: 'Invalid Redirect Uri - Redirect URI passed does not match with the one configured'
                                                                                                              • Marketing Tip #16: Ideal sizes and formats for adding images to your online store

                                                                                                                Images can make (or break) your storefront experience. When your banners and product photos follow the right sizes and aspect ratios, your store looks cleaner, loads faster, and feels more trustworthy—especially on mobile. Here are recommended image sizes
                                                                                                              • Improve WhatsApp Module in Zoho CRM

                                                                                                                The current WhatsApp module UI in Zoho CRM feels cluttered and complex, especially when handling high volumes of conversations. It would be great to enhance the WhatsApp module UI/UX by adopting a clean and simplified interface similar to Bigin CRM’s
                                                                                                              • Blueprint transitions on locked records

                                                                                                                We use the ability to automatically lock records (quotes, sales orders, etc.) based on criteria, such as stage. For instance, if a quote has been sent to a client, the quote is then locked for further edits. Our ideal quote stage process is: Draft>Sent>Won.
                                                                                                              • Enhance productivity with the revamped Zoho Sheet View

                                                                                                                Hello folks, For some time now, you've been able to use the Zoho Sheet View to quickly edit multiple records or to insert a batch of new records. Its tabular interface allows users to engage in these tasks productively. Despite this, the existing Sheet
                                                                                                              • No OR Filter for Views with a Related Modules Criteria

                                                                                                                We would like to create a Deal View where the User can see all their deals. For that, we would need an OR to connect the criteria. One of the Fields is a "multiselect User", these (Related Modules Criteria) can only be Filter with an AND. Even between
                                                                                                              • Good news! Calendar in Zoho CRM gets a face lift

                                                                                                                Dear Customers, We are delighted to unveil the revamped calendar UI in Zoho CRM. With a complete visual overhaul aligned with CRM for Everyone, the calendar now offers a more intuitive and flexible scheduling experience. What’s new? Distinguish activities
                                                                                                              • Chat to Lead

                                                                                                                Can I convert a Chat to a Lead?
                                                                                                              • Limit maximum entries for subform - depending on fields entry

                                                                                                                Hi Zoho! I have a form with a subform in it. I'd like to have limitation for the row number depending on an entry in a drop-down field in the main form (If the field in the main form is marked "Answer1" - Limit the entries to 1 row, if the field is "Answer2" to have 2 rows limitation, "Answer3" = no limitation at all) Can this be done? Thanks Ravid
                                                                                                              • Save HTML Snippet Page as PDF with Dynamic Data in Zoho Creator (Working Solution)

                                                                                                                Hi Zoho Creator Community 👋, I faced a common challenge while working with HTML Snippet Pages — I needed to generate a PDF with dynamic data and save it back into the record automatically. Here’s the working solution that might help others. Use Case
                                                                                                              • Make Camera Overlay & Recording Controls Visible in All Screen-Sharing Options

                                                                                                                Hi Zoho WorkDrive Team, Hope you are doing well. We would like to request an improvement to the screen-recording experience in Zoho WorkDrive. Current Limitation: At the moment the recording controls are visible only inside the Zoho WorkDrive tab. When
                                                                                                              • 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,
                                                                                                              • Rebranding Options for Zoho One

                                                                                                                We need the addition of rebranding and white-labeling settings directly within the Zoho One Admin Panel. This feature should allow organizations to customize the unified portal with their own logo, brand colors, and custom domain mapping (e.g., portal.company.com).
                                                                                                              • Tip #57- Accessibility Controls in Zoho Assist: Mobility- 'Insider Insights'

                                                                                                                Remote support should be easy to navigate for everyone. For users with mobility-related accessibility needs, long sessions and complex navigation can be challenging. Zoho Assist’s Mobility Accessibility Controls simplify interaction through keyboard-based
                                                                                                              • Total Cost in reports showing zero

                                                                                                                The image below shows my issue. The column Total Cost should show the cost to our company based on hours logged and the employee's rate. For instance, if the person working on Subtask 1 is paid 20/hr, then Total Cost should display $160 ($20x8 logged
                                                                                                              • To print Multiple delivery notes in batches

                                                                                                                In Zoho Books, we can print a Delivery Note from an Invoice using the Print Delivery Note option, but it is non-editable and always prints all line items from the invoice. Our requirement is to deliver invoiced items in batches and print delivery notes
                                                                                                              • Invoices not arriving and mail server settings

                                                                                                                I am having an issue where some clients are not receiving invoices. I have configured Zoho Books to send on my behalf and configured the appropriate SPF, DKIM and DMARC settings on my mail server and tested these as working. I get the CC'd copies so I
                                                                                                              • UPLOAD A CREATED PDF AUTOMATICALLY

                                                                                                                Using the html header pdf+print button, I have managed to find a way to have a user create a pdf using entered form data. Using the schedule button, I can have a "file uploaded" pdf mailed to someone as an attachment. The missing piece is to be able to add the pdf, created in that html page to a file upload field automatically? Right now one has to save it to computer and then upload it in a FILE UPLOAD FIELD. Any help would appreciated !  
                                                                                                              • Consolidated Department-wise Payroll Cost Summary Report

                                                                                                                Hello Zoho Payroll Team and Community, I am writing to discuss a reporting requirement regarding department-level expense tracking within Zoho Payroll. As we scale and manage salary distribution for employees across multiple departments, such as Accounts,
                                                                                                              • How to remove chat icon from knowledge base?

                                                                                                                I have set up a knowledge base to hold FAQs and documentation. It is currently standalone, and not integrated into our website. On every page there is a chat button in the bottom left corner that says "We're offline, please leave a message." How can I
                                                                                                              • Missed chats on WhatsApp closing after one minute

                                                                                                                Hi, we have added WhatsApp as a channel. However, if a chat is not picked up within 2mins, the chat is marked as missed and is closed within a minute. Why are they not staying in our "missed" queue for 24 hours as per our WhatsApp preference settings?
                                                                                                              • [ZohoDesk] Improve Status View with a new editeble kanban view

                                                                                                                A kanban view with more information about the ticket and the contact who created the ticket would be valueble. I would like to edit the fields with the ones i like to see at one glance. Like in CRM where you can edit the canvas view, i would like to edit
                                                                                                              • Automated Dismissal of Specific Notifications and Centralized Control of Toast Notification Settings

                                                                                                                Dear Zoho Team, I hope this message finds you well. We would like to request two enhancements related to notification handling within Zoho Desk: Automatic Dismissal of Specific Notifications: Currently, when certain actions are taken in the ticket list
                                                                                                              • Show field in spreadsheet view depending on other field value

                                                                                                                Hello. Not sure if this is possible but let's say i have spreadsheet view in Creator with four different fields Field A, B, C and D Then i have a field named Response which for one record could contain only one of the pre-definde choices below A, B, C
                                                                                                              • Intergrating multi location Square account with Zoho Books

                                                                                                                Hi, I have one Square account but has multiple locations. I would like to integrate that account and show aggregated sales in zoho books. How can I do that? thanks.
                                                                                                              • Zoho Learn Zapier Integration

                                                                                                                Hello all, Is there any plan to integrate Zoho Learn with Zapier? It seems almost all Zoho products are in Zapier, with the exception of Learn and Marketing Automation.
                                                                                                              • Notice: SalesIQ integration paused on Zoho Sites

                                                                                                                I have this notice on my Zoho Sites in the SalesIQ integration setup. Can someone assist? "This integration has been temporarily paused for users. Reconnecting SalesIQ after disconnection will not be possible until we provide further updates." thank
                                                                                                              • Differences between Zoho Books and Zoho Billing

                                                                                                                Without a long drawn out process to compare these. If you were looking at these Books and Billing, what made you opt for one and not the other. Thanks
                                                                                                              • New Feature : Copying tickets with all the contents such as conversations/history/attachments etc

                                                                                                                Sometimes our customers and distributors do create tickets (or send emails) which contain more than one incident in them and then also some of the further conversations which are either created by incorrect new tickets or replies to old tickets are being created as combined tickets. In such cases we require to "COPY" the contents of the tickets into separate tickets and merge them into their corresponding original tickets. The "CLONE" feature doesn't copy the contents (especially the conversations
                                                                                                              • Como se agregan los empleados

                                                                                                                Necesito saber si para agregar empleados los mismos necesitan tener licencias
                                                                                                              • Deluge Error Code 1002 - "Resource does not exist."

                                                                                                                I am using the following script in a Custom Button on a Sales Return. Basically, the function takes the information in the sales return (plus the arguments that are entered by the user when the button is pushed) and creates a return shipping label via
                                                                                                              • Adding multiple Attendee email addresses when adding a Zoho Calendar event in Zoho Flow

                                                                                                                I am trying to integrate Notion and Zoho Calendar via Zoho Flow. However, the Attendee email address supported by Zoho Calendar - Create event only supports one email address, so I am having difficulty implementing automation to automatically register
                                                                                                              • Graceful Handling of Exceeded Option Limits

                                                                                                                Hi Zoho SalesIQ team. I would like to submit a feature request to deal with a bug in salesIQ Current Behavior (Bug): When a dynamic list passed to the Single Select Option Card contains more than 20 options, the Zobot stops responding (freezes/hangs)
                                                                                                              • System default SLA descriptions can't be modified

                                                                                                                The system default SLAs have identical descriptions for all SLA levels, but their settings differ. However, I am facing an issue where I cannot modify these descriptions and save the changes. The content of the description box can be edited but the changes
                                                                                                              • Adding non-Indian billing address for my Zoho subscription

                                                                                                                Hey Need help with adding a non-Indian billing address for my Zoho subscription, trying to edit the address to my Singapore registered company. Won't let me change the country. Would appreciate the help. Regards, Rishabh
                                                                                                              • Vendor legal and DBA names for USA users

                                                                                                                I would like to hear how Zoho Books users are handling DBA names in the vendor profile. If the Company name in the vendor profile has to be the legal name (line 1 of the W-9), whare are you entering the DBA name (the name that checks are made out to)
                                                                                                              • Next Page