Tip #2.2 Auto-updating shipment charges from multiple shipment records to invoices in Zoho Inventory

Tip #2.2 Auto-updating shipment charges from multiple shipment records to invoices in Zoho Inventory

Hello again,

Earlier today, we saw how you can automate the process of calculating shipment charges from every shipment order associated with a sales order and adding it to the total amount. And here in this post which happens to be the part 2 of the same, we will see how we can do the same for your invoices.

Now before we begin, you need a few things for this custom function to work:

1) You have to make the invoice from a sales order by opening a sales order in Shipped status, clicking on the Create button that you can find somewhere inside every sales order and selecting Invoice from the drop-down. (In other words, convert a Shipped Sales Order into an invoice and not from an order that still has unshipped items).
2) All shipments made for a particular sales order, must be recorded as manual shipments.
3) Also, you'll need to generate an auth token for your account. To do so, log in to your Zoho Account and then  click on this link before you begin setting up this custom function . Copy the auth token and keep it safe.

Now let's see how we can setup this custom function.

Method 2. Auto-updating total shipment charge to an invoice: (Method 1 is for sales orders which we saw in the part 1 of this post)
  • Open your Zoho Inventory organization.

  • Click on the gear icon from the top-right corner to select Automation from the drop-down.

  • Inside of Automation, select the drop-down near the +New Workflow button and select Custom Functions.

  • Give your workflow a name without any spaces between words.

  • The module will be Invoices. 

  • The condition for this custom function shall be "When an Invoice is created".

  • The trigger point for this function will be "Immediate".

  • Copy and paste the code segment below inside the Deluge pane:

shipamt = List(); 

authtoken = "Copy and paste your authtoken here";

invoiceID = invoice.get("invoice_id");

invoicedate = invoice.get("date").toDate();

organizationID = organization.get("organization_id");

res = invokeurl

[

url :"https://inventory.zoho.com/api/v1/invoices/" + invoiceID + "?organization_id=" + organizationID + "&authtoken=" + authtoken

type :GET

];

inv = res.get("invoice");

soid = inv.get("salesorder_id");

//replace authtoken and orgid

response = invokeurl

[

url :"https://inventory.zoho.com/api/v1/salesorders/" + soid + "?authtoken=" + authtoken + "&organization_id=" + organizationID

type :GET

];

so = response.get("salesorder");

pkg = so.get("packages").toList();

sid = List();

for each pk in pkg

{

sid.add(pk.get("shipment_id"));

}

i=0;

sumamt = 0;

for each index i in sid

{

resp = invokeurl

[

url :"https://inventory.zoho.com/api/v1/shipmentorders/" + sid.get(i) + "?authtoken=" + authtoken + "&organization_id=" + organizationID

type :GET

];

shipdet=resp.get("shipmentorder");

charges = shipdet.get("shipping_charge").toDecimal();

sumamt = sumamt + charges;

}

info sumamt;

bson = Map();

bson.put("invoice_number",invoice.get("invoice_number"));

bson.put("customer_id",invoice.get("customer_id"));

bson.put("shipping_charge",sumamt);

fin = zoho.inventory.updateRecord("Invoices",organizationID,invoiceID,bson);

info fin.toMap().get("message");

  • Make sure you copy and paste the auth token number that you had generated earlier to line 2 of this code fragment that says: authtoken = "Copy and paste your auth token here";

  • Hit Save to finish.

Now every time you make an invoice for a shipped sales order, the total shipment charge will be updated automatically.


​Hope this helps you in your order fulfilment endeavors. Have you ever tried writing custom functions by yourself? Email your discoveries, questions and suggestions to  support@zoho-inventory.com .

Until next time.

Your everyday end user,
Ajay Aadhithya Chandrasekaran
Zoho Inventory




    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





                                                          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

                                                                                                            • Zoho CRM's custom views are now deployable from sandboxes

                                                                                                              This feature is now available for users in the AU, JP, and CN DCs. This feature is now available for users in CA and SA DCs. New update: This feature is now available for users in all DCs. Hello everyone, We're excited to announce that you can now deploy
                                                                                                            • Zoho One - Syncing Merchants and Vendors Between Zoho Expense and Zoho Books

                                                                                                              Hi, I'm exploring the features of Zoho One under the trial subscription and have encountered an issue with syncing Merchant information between Zoho Expense and Zoho Books. While utilizing Zoho Expense to capture receipts, I noticed that when I submit
                                                                                                            • Limit in number of records for subforms and multi-select lookup fields

                                                                                                              It is my understanding that a maximum of 100 items can be selected in a multi-select lookup field, and that a total of 200 items can be selected in total between both subforms in a given module.  Are there any ways to work around this limitation if we
                                                                                                            • Kaizen #136 - Zoho CRM Widgets using ReactJS

                                                                                                              Hey there! Welcome back to yet another insightful post in our Kaizen series! In this post, let's explore how to use ReactJS for Zoho CRM widgets. We will utilize the sample widget from one of our previous posts - Geocoding Leads' Addresses in ZOHO CRM
                                                                                                            • Getting Permission denied to access this portal.

                                                                                                              We have one user that can't login to projects even though access has been granted. This user can login to accounts.zoho.com but when login to https://projects.zoho.com/portals.do we get this error: Unauthorized login to this portal Permission denied to access this portal. Check your portal URL again. Sometimes we also get "server too busy". We have tried killing sessions (in accounts.zoho.com) and we have deleted cookies; and tried different computers and still the same problem. All others use can
                                                                                                            • Does Zoho Docs have a Line Number function ?

                                                                                                              Hi, when collaborating with coding tasks, I need an online real time share document that shows line numbers. Does Zoho's docs offer this feature ? If yes, how can I show them ? Regards, Frank
                                                                                                            • Setting Default Views for Custom, List and Detail Views

                                                                                                              Hey, Is it possible to set a default custom view, list view and detail view for a module for every user? We are onboarding a lot of non technical people that struggle with these things. Setting the views as default would really help. Btw: also setting
                                                                                                            • Filter Based API request in Zoho Books using POSTMAN

                                                                                                              How do I GET only specified CONTACTS based on created time or modified time in Zoho Books using POSTMAN. In the api documentation, it is written we can apply filters but I need a sample request.
                                                                                                            • URL validation

                                                                                                              We use an internal intranet site which has a short DNS name which Zoho CRM will not accept.   When attempting to update the field it says "Please enter a valid URL". The URL I am trying to set is http://intranet/pm/ Our intranet is not currently setup with a full DNS name and given the amount of links using the shortname probably isn't a feasible change for us.
                                                                                                            • Has anyone been experiencing slow issues?

                                                                                                              Dear all, I just want to ask if anyone has been experiencing slow issues with Zoho Creator in the past two weeks? I worked with the ISP to improve network quality by changing routes and upgrading bandwidth, but nothing changed. I am in Vietnam.
                                                                                                            • Zoho Projects Roadshows 2025 - USA

                                                                                                              Dear Users, After an amazing response to our roadshows in 2024, we are excited to be back for the second year in a row! Join our team of experts as they walk you through the most-used features in Zoho Projects, explore powerful automation capabilities,
                                                                                                            • Billing Management: #6 Usage Billing in SaaS

                                                                                                              Imagine a customer shuffling across multiple subscriptions, a streaming service, a music app, cloud storage, and a design tool. Each one charges a flat monthly fee, regardless of how much or how little they use. Some months, the customer barely opens
                                                                                                            • Is there anyone who has been experiencing issues regarding the Zoho Creator Certification Website in the past 2 weeks?

                                                                                                              Dear all , I just wanted to ask is there anyone who was planning on taking the Zoho Creator Developer Certification Test in the past 2 weeks and have been facing errors stating that the website is under maintennance and also not allowed to access the
                                                                                                            • Directly Edit, Filter, and Sort Subforms on the Details Page

                                                                                                              Hello everyone, As you know, subforms allow you to associate multiple line items with a single record, greatly enhancing your data organization. For example, a sales order subform neatly lists all products, their quantities, amounts, and other relevant
                                                                                                            • Allow syncing Activities from other applications

                                                                                                              Marketing Automation could be a much more powerful platform if you were able to sync activities into the platform (e.g. purchase, donation, etc) outside of a user doing something on your website. I'd love it if you could sync Custom CRM Modules as activities,
                                                                                                            • Global Sets for Multi-Select pick lists

                                                                                                              When is this feature coming to Zoho CRM? It would be very useful now we have got used to having it for the normal pick lists.
                                                                                                            • Integración Books para cumplir la ley Crea y Crece y Ley Antifraude (VeriFactu)

                                                                                                              Hola: En principio, en julio de 2025, entra en vigor la ley Crea y Crece y Ley Antifraude (VeriFactu). ¿Sabéis si Zoho va a cumplir con la ley para cumplir con la facturación electrónica conectada a Hacienda? Gracias
                                                                                                            • Ask the Experts #1

                                                                                                              Hello everyone! It’s time to transform how you manage projects. Define the processes. Automate the tasks. Streamline the workflows. Let us dive into automation in Zoho Projects — from configuring workflows and custom functions to building triggers, using
                                                                                                            • How to overcome Zoho Deluge's time limit?

                                                                                                              I have built a function according to the following scheme: pages = {1,2,3,4,5,6,7,8,9,10}; for each page in pages { entriesPerPage = zoho.crm.getRecords("Accounts",page,200); for each entry in entriesPerPage { … } } Unfortunately, we have too many entries
                                                                                                            • Checking if Creator has Change History

                                                                                                              Like zForms - whenever an entry was updated there's an option to attached change history to email notif. Trigger -> Successful form submission
                                                                                                            • how to use validation rules in subform

                                                                                                              Is it possible to use validation rules for subforms? I tried the following code: entityMap = crmAPIRequest.toMap().get("record"); sum = 0; direct_billing = entityMap.get("direct_billing_details"); response = Map(); for each i in direct_billing { if(i.get("type")
                                                                                                            • Adding contact role to a specific deal js sdk malfunctioning

                                                                                                              i was trying to add the contact role to a specific deal contact but repeatedly i am getting this error: { "code": "SUCCESS", "details": { "statusMessage": { "code": "INVALID_DATA", "details": { "expected_data_type": "jsonobject" }, "message": "body",
                                                                                                            • Q3 Updates from Bigin!

                                                                                                              Hey Biginners, Hope you’re doing great! As we approach the end of 2025, we truly hope Bigin has been a part of helping you build your dream business this year! We've been busy working behind the scenes to bring you features that make running your business
                                                                                                            • Client Script | Update - Introducing Subform Events and Actions

                                                                                                              Are you making the most of your subforms in Zoho CRM? Do you wish you could automate subform interactions and enhance user experience effortlessly? What if you had Client APIs and events specifically designed for subforms? We are thrilled to introduce
                                                                                                            • {"errors":[{"id":"500","title":"Servlet execution threw an exception"}]}

                                                                                                              Here's the call to move a file to trash. The resource_id is accurate and the file is present. header = Map(); header.put("Accept","application/vnd.api+json"); data = Map(); data_param1 = Map(); att_param1 = Map(); att_param1.put("status",51); data_param1.put("attributes",att_param1);
                                                                                                            • Converting Sales Order to Invoice via API; Problem with decimal places tax

                                                                                                              We are having problems converting a Sales Order to an Invoice via API Call. The cause of the issue is, that the Tax value in a Sales Order is sometimes calculated with up to 16 decimal places (e.g. 0.8730000000000001). The max decimal places allowed in
                                                                                                            • Zoho Canvas - Custom templates for related lists

                                                                                                              Hi, I see that the example pages load always one of our related lists in a custom template, but I dont know how to work with that:  1) How can i make my own custom templates for related lists?  2) Where and how can i check out existing custom templates?
                                                                                                            • Kaizen #147 - Frequently Asked Questions on Zoho CRM Widgets

                                                                                                              Heya! It's Kaizen time again, folks! This week, we aim to address common queries about Zoho CRM Widgets through frequently asked questions from our developer forum. Take a quick glance at these FAQs and learn from your peers' inquiries. 1. Where can I
                                                                                                            • open word file in zoho writer desktop version

                                                                                                              "How can I open a Microsoft Word (.doc or .docx) file in Zoho Writer if I only have the file saved on my computer and Zoho Writer doesn't appear as an option when I try 'Open with'? Is there a way to directly open the .doc file in Zoho Writer?"
                                                                                                            • Zoho PDF editor has a lot of issues.

                                                                                                              Zoho PDF editor needs a lot of work. It hangs and glitches a lot. Deletes annotations and clearings randomly.
                                                                                                            • Syncing contacts on Android

                                                                                                              I'm using the Zoho mail app on Android and although I can see my contacts from within the app, they're not synced to my native contact list and so I can't access them from within the native dialer. Is there any way that I can sync my contacts into my native address book? Regards, Martin
                                                                                                            • Zohom mail

                                                                                                              Plz resolve the problem . I hope u understand .
                                                                                                            • Zoho sheet desktop version

                                                                                                              Hi Zoho team Where can I access desktop version of zoho sheets? It is important as web version is slow and requires one to be online all the time to do even basic work. If it is available, please guide me to the same.
                                                                                                            • ZOHO SHEETS

                                                                                                              Where can I access desktop version of zoho sheets? It is important to do basic work If it is available, please guide me to the same
                                                                                                            • Using Zoho Flow to create sales orders from won deal in Zoho CRM

                                                                                                              Hi there, We are using Zoho Flow to create sales orders automatically when a deal is won in Zoho CRM. However, the sales order requires "Product Details" to be passed in "jsonobject", and is resulting in this error: Zoho CRM says "Invalid input for invalid
                                                                                                            • Is Zoho Sheet available for Linux ?

                                                                                                              Is Zoho Sheet available for Linux ?
                                                                                                            • Bharat

                                                                                                              a
                                                                                                            • how to disable staff selection Zoho Booking integrated to SalesIQ?

                                                                                                              currently there is only one Consultant in my Zoho Bookings like this I integrate Zoho Bookings into Zoho SalesIQ to create a chatbot. Unfortunately, even though I only have one consultant for a consultation, the user have to pick the consultant. It will
                                                                                                            • Zoho Bookings No Sync with Outlook

                                                                                                              Zoho Bookings appointments are showing on my Outlook Calendar but Outlook events are not showing on Zoho Bookings. How do I fix this?
                                                                                                            • End Date in Zoho Bookings

                                                                                                              When I give my appointments a 30 minutes time I would expect the software not to even show the End Time.  But it actually makes the user pick an End Time.  Did I just miss a setting?  
                                                                                                            • Next Page