Say hello to an improved way to merge documents!

Say hello to an improved way to merge documents!

Automating all your documents from start to finish is now easier than ever with Writer's new merge tools.
 
If you haven't seen it yet, you can read the main announcement here.
Here is the full list of the features we've rolled out:

1. Dynamic Table Headers and repeated blocks
After listening to our latest user feedback, we knew these two features were a must-have.

Subform creation
Subforms are field groups that mostly denote choices, transactions, and other activities registered under a single record. With Writer, you can now create such field groups within a record that, when merged, will dynamically grow based on the records in your data source.  
 
For example: Say you want to keep track of the products purchased by a certain customer. In this case, "Customer" is a record, and "the products they purchased" are recorded as a subform under their name.
 
Subforms can be mapped to a related subform in a data source, like Zoho Creator, Zoho CRM, and more.
 


Repeating blocks

You can now repeat blocks as a paragraph, a table row, a table cell, or a table column. For instance, if you're listing the names of books, their authors and descriptions, you can just use the Repeat option of your choice, select the merge fields that carry those details, and insert it into the document.

The selected blocks with all the information you need would then automatically be repeated for each book in your data source.




2. New field types
You can now choose from a variety of different field types to up your template-creation game.

Same field, different configurations 
In case you would want the settings of a field to be different in one or a few places alone, we added a new "change for this instance" option. This way, you can tweak format, output type, and other value settings for a particular instance of a field without affecting other parts of the document where the same field is used.



Repeated blocks? Auto-number it!

If you're working with repeated blocks using the repeat field or subform fields, you can assign auto-increment serial numbers by simply inserting the new "Auto-number" field before them.
  


Embed fields to make documents more interactive

Here's something to make your templates more personalized for each of your recipients: You can now add unique, interactive elements for each of them using an Embed field. This makes it easier to add map locations for each of your records or add contextual video links to guide them.
 


Placeholder images in templates
You can now apply custom placeholder images to image fields in Writer based on the type of document you're working with.
 
In addition to giving your template designers better layout control over the template, placeholder images also let the user know the type of image to be inserted or attached.




3. Tools to format those field types

What's the point of so many different field types if you can't adjust them to your liking? That's exactly what we did.

Shortened field names
There could be fields in your data source whose names are way too long, making your templates look untidy or unclear. Long field names could also denote that your content might look drastically different if the values those fields have are usually much shorter.
 
To tackle this, we're introducing a provision in which you can shorten the names of fields in your merged documents.




Formula that output!

Know that feeling when you have everything ready and merged in your output document except for the final cost of your products? That's why we've introduced formulas in merge fields: so you no longer have to calculate your figures manually. You can now use formulas to calculate your merged output using the desired functions.



Personalized date formats

Certain documents require dates to be written in a certain format. For instance, formal letters require the date to be written in full with the day, month, followed by a comma and the year. With Writer's new update, you can now change the format of the merged date to suit your purpose.




Display past or future dates
The date field provides an easy way to display the current date, but what about when you want to display a past or future date?
For instance, if you're sending renewal reminders and the renewal date is 3 months from the subscription date, you can simply add "3" in the months option or add the number of days for the interval in the days field, and Writer will automatically calculate and enter the renewal date in the field. Similarly, you can do the same to enter dates that are even prior to the subscription date.
  


Rich text

The fields in your data source may carry links, or even have different styles. Merge fields in Writer are now enabled with rich text to retain the style and  format of the fields from your data source after merge.




Number and currency field formatting

Just like how you can change the format of date fields, you can also do the same with number and currency fields. Legal documents, for instance, require values to be presented in the correct decimal and currency format. In such cases, all you have to do is simply change the format of the merged values by using the number formatting option.




4. Other handy merge upgrades

We didn't just stop there. Here are three more upgrades we think will enhance the way you work with your documents pre- and post-merge.

Customize merge docs with sign settings
Create sign-ready, customized documents for specific clients that your colleagues can check, change a few things if needed, and then send for sign immediately with the configuration you've set for them. This gives you that final layer of review and confirmation before sending out a contract to clients.
 


Detailed merge reports
Now, stay on top of your merged emails by tracking when they have been viewed or read by your recipients and how they are interacting with your links.


Lastly, the automation panel gets a new look!

That's right. Based on what some of you told us, we've improved the automation panel by making it easier for you to access "Prepare" and "Run Merge" steps distinctly from the panel at any time.


That's all for now. Let us know what you think of these updates in the comments below.


Read the main announcement here.

Happy merging!

    • Sticky Posts

    • Easily perform calculations using dates with the new DATEDIF function

      Hey Zoho Writer users! We've enhanced Zoho Writer's formula capabilities with the new DATEDIF function. This allows you to calculate the difference between dates in days, months, and years. Function syntax: =DATEDIF(start_date, end_date, unit) Inputs:
    • Date-based conditions and filters

      Configure conditions with date  Hi everyone! We are excited to announce that you can now compare and filter data with date-based conditions. This update lets you compare date fields in a document to a reference date and display a text or value if the
    • Introducing group by, aggregation, and repeating regions in mail merge templates

      Display data exactly the way you want and highlight key insights with Zoho Writer's enhanced merge templates. We've supercharged Zoho Writer's merge templates with the capability to dynamically group, aggregate, and repeat data as blocks. You can now
    • Say hello to an improved way to merge documents!

      Automating all your documents from start to finish is now easier than ever with Writer's new merge tools.   If you haven't seen it yet, you can read the main announcement here. Here is the full list of the features we've rolled out: 1. Dynamic Table Headers
    • Introducing Org Fonts in Zoho Writer

      Hey Zoho Writer users! We're excited to share that you can now add custom fonts (from web fonts with publicly accessible URLs) using Zoho Writer's Org Fonts. This option allows all users across your organization to use the custom font without the hassle
    • Recent Topics

    • CRM

      I have a portal set up where a contact can see other contacts within an account automatically. When a contact in the portal enters a deal, how do I make sure that deal is assigned to the account so other contacts in the account can see the deal was generated?
    • field is not saving on lead

      Hi, Not sure what i changed but on edit in a lead, i am inputting details and its not saving. just highlights it in yellow with no error message.
    • Export data from Zoho CRM to MySQL database

      Hi all, Has anyone been able to export the whole Zoho CRM Database to MySQL or any other database by using the Zoho API. So far all tools such as Skyvia, Devart, CData are failing to do the job for me, as they are exporting only the zoho crm modules.
    • Ask the Experts 18: Supercharge Self-Service: Simplify Support, Empower Customers!

      Welcome to the Ask the Experts Session 18 focusing on Zoho Desk’s Self-Service features! With the AI buzzing around like busy bees, ever thought of how you can incorporate AI into Self service? Explore how Zoho Desk's Help Center, Knowledge Base (KB),
    • Zoho Creator Time Calculating

      Hello everyone, I have a question for you. I created a service form for our service department and they fill when they complete their service. Also They are inserting date and start-finish hours. I need to calculate working hours between start time and
    • How to Fix the Corrupted Outlook 2019 .pst file on Windows safely?

      There are multiple reasons to get corrupted PST files (due to a power failure, system crash, or forced shutdown) and several other reasons. If You are using this ScanePST.EXE Microsoft inbuilt recovery tool, it only supports the minor corruption issue
    • users api

      Hello, I'm using the following in a custom script: response = invokeurl [ url :"https://www.zohoapis.com/crm/v2/users?type=AdminUsers" type :GET connection:"zohocrm_users_read" ]; It successfully returns some user data BUT not all the fields listed here: https://www.zoho.com/crm/help/api/v2/users-examples.html#get-admin-user For example it returns "signature" for me, but not for all my other admin users, who all have a signature in place. Can you help please? Regards, Simon
    • Show item Cost value on Item screen

      The Item screen shows Accounting Stock and Physical Stock. It would be very helpful if value information could be displayed here as well, for instance Cost Price. Currently, to find the Cost Price (as used for inventory valuations) from inside the item
    • Custom Related List anchor tag with tel protocol

      The following code worked great for about a year to create clickable tel and mailto links in a related list in the Deals module. Just this morning, it started displaying the HTML as text. For example: <a href='tel:8882490100'>8882490100</a> Zoho support
    • Customization of "List Price" naming convention

      Surely this has been brought up before, but does Zoho plan to allow the customization of the List Price field? For example, the ability to rename to: Sell Price Sale Price Market Price Ticket Price etc etc
    • Introducing Linkthread by Zoho Social — our new link in bio tool

      Hey everyone, We hope you're all doing amazing. We always love bringing features and tools to make your social media marketing journey easier, and today, we've got a brand new tool that we'd like to introduce to you. We know how important it is to make
    • Zoho People Mobile Check-in/out

      Hello, I found an 'issue' with Zoho People. We wanted our employees to not be able to check-in/out from their mobile. But only when they are on the office. We already this: But still the employees can open from their mobile a browser, go to zoho people,
    • Set Approval for particular Reporting managers in zoho creator

      i am creating a leave management system in zoho creator.I want to create a approval workflow.There are various employees each employee has different reporting manager when employee apply for a leave then the leave should be able to approved by the manager
    • Bulk Update API

      I’m reaching out to see if anyone has updates on the bulk records feature release. We’re eager to leverage this functionality for our operations, but until it becomes available, our current API call limits are proving to be a bottleneck—even after upgrading
    • A fresh interface and functionality improvements for Zoho CRM's data sharing settings

      Data sharing is essential for maintaining proper access controls in your CRM. Whether you're setting default permissions or defining custom sharing rules, these settings determine how records are shared among users, roles, and groups. Previously, navigating
    • Zoho CRM API, Python SDK v7 Quoted_Items

      Hello. How do I use this SDK to retrieve the Quoted_Items from a Quote and downstream the items in a Sales Order I can see references to a constant INVENTORY_MODULES_ITEMS = ["invoiced_items", "quoted_items", "purchase_items", "ordered_items"] But I cannot
    • Zoho Bookings: How to set a limit for maximum bookings per day?

      Let's say I have 1 hour slots OPEN for an entire day. What if I want all of the OPEN slots to turn OFF if/when I hit a certain number of total bookings for that day? I usually only want a total of 5 appointments to be booked but I'm not sure of the exact
    • Creating stunning templates for appointment notification emails

      Good day folks! Can you guess what we are going to check out today? We have designed a few samples to showcase the power of customizable email notification templates. Sample 1 Sample 2 Sample 3 Sample 4 Sample 5 Sample 6 Sample 7 Sample 8 Sample 9 We
    • Agents can manage the Tasks on the go, now with Zoho Desk mobile app

       Hello, Everyone!    We are elated to announce one of our most asked for features 'Tasks' in the Zoho Desk app.  Agents can now create and associate tasks with a ticket and the tasks will be listed within the corresponding tickets.   Steps to access the tasks from the app:    1. Go to a particular ticket in the app. 2. Click the Tasks icon in the 'Related Information' section.  3. List of all the tasks will be displayed.    Refer to the screenshots (Android & iOS) attached below for your better understanding:
    • How do we add Google Analytics code to Zoho Bookings scheduling pages or the thank you page?

      We need to track user activity on individual Bookings' pages and/or the thank you pages? How do we do this?
    • Important Update: WhatsApp Marketing Template Message Restrictions for US Numbers

      Dear Zoho Forms Users, We want to keep you informed about an upcoming change in WhatsApp's marketing messaging policy that may impact your communication strategy. Starting April 1, 2025, Meta will temporarily pause the delivery of all marketing template
    • Create, Manage and Publish on Pinterest from Zoho Social

      Hey everyone,   Pinterest is our newest addition to the list of social channels that can be integrated with Zoho Social. With over 444 million users, Pinterest is one of the popular channels that people use to get inspired, share their ideas with the
    • Disable Subform Actions using Client Script Add Row, Edit, Delete

      Currently we cannot disable subform actions such as Add Row, edit row using client script It will be really beneficial if we can disable these actions from Client Script
    • Client Script: Any plans to add support for multi-select field with onChange

      Client Script is fantastic and the documentation lists multiselect form fields as unsupported. Just wondering if there are any plans to make this a supported field. https://www.zoho.com/crm/developer/docs/client-script/client-script-events.html 2. Field
    • Mass replace picklist value

      I need to rename picklist option from "Option 1" to "Option 5". The value "Option 1" is set in about 1000 records in my CRM module. I am also using the that picklist in Reports and Workflows extensively. should I: A/ rename the option value and its reference
    • Adding Default Module Image into mail merge field

      As with most people finding their way to these forums i have a specific requirement that doesn't seem to be supported by Zoho I have created 2 custom modules to suit my purpose 1 is an inventory type module that lists aluminium extrusions, and all relevant
    • Define Tab Order

      I would like the ability to define the tab order when editing or creating a new record. The only option now is for tab to go from left to right to left to right all of the way down the page. I would like to define the exact order the cursor will move from field to field. At the minimum, for a two column layout, I would like to tab down the left column and then down the right column. This actually does happen in the Contact record when you get to the mailing address section so I know it can be coded
    • Create New Tasks Layout in CRM

      I am able to do this in Leads, Contacts, Meetings, Calls - every other module, but cannot create a new layout in tasks. I have the appropriate access but it's simply not appearing as an option. Only "Standard" option shows. Please help!
    • ZohoDesk API to get conversations count of ticket

      Hi Team, I need information about ZohoDesk API that provides conversations count of ticket. Currently in ticket metrics api (https://desk.zoho.com/DeskAPIDocument#Tickets#Tickets_Getticketmetrics), it is providing only thread count, I need all conversations
    • Syncing with Google calendar, Tasks and Events

      Is it possible to sync Zoho CRM calendar, task and events with Google Calendar's tasks and events. With the increasing adoption by many major tool suppliers to sync seamlessly with Google's offerings (for instance I use the excellent Any.do task planning
    • Problem with currency field in Zoho CRM

      Hi Guys Zoho Books has a feature in currency fields that automatically converts decimal numbers with commas ( , ) to period format ( . ) when pasting them. For example: R$ 2,50 --> R$ 2.50 Is this behavior available in Zoho CRM? I couldn't find any configuration
    • Marketer’s Space - Automating CRM Actions with Journeys – Part 2

      Hello marketers! Welcome back to another post in Marketer’s Space. In our previous post, we explored how CRM actions in Journeys help marketing and sales teams work together by nurturing CRM leads and pushing only engaged prospects back to sales. If you
    • Unparsable Date when hour side is 02

      So this is a crazy error I am getting. I got this one 1-2 years ago as well, and specifically added conditional clauses to workaround that. But now I would like to create a topic and see if anyone else is getting this error. Here is how it goes: We have
    • Outlook Add-in security times out needs to login 10 times a day

      hi we've just switched the Zoho. We use Azure SSO. All users have stopped using it. Sometimes it asks every 5 minutes. What should I lot at to solve this?
    • I can't auto-scheduling calls down - the code does not change anything

      Hi, I was trying to set a function that auto-schedules calls based on their call result; i.e "Requested more info". I had also included a reminder to send an email in the code. I logged a test call and nothing changed. Is there anything wrong with the
    • WhatsApp Sandbox Integration

      Dear Zoho Team, I am currently having two questions regarding the WhatsApp integration of Zoho Desk, or more specifically the Sandbox WhatsApp integration. 1. I am unable to send replies via the API through the "Sandbox" channel. Here is some example
    • Showing ALL missing data

      Hi, When I create a chart, I noticed that even when enabling the "show missing values" option, if, let's say, the current time period will not show as "0" on the chart if there's no data (rows) in the table. For example, I have this data: Week 1: 0 rows
    • Email Integration - Zoho CRM - OAuth and IMAP

      Hello, We are attempting to integrate our Microsoft 365 email with Zoho CRM. We are using the documentation at Email Configuration for IMAP and POP3 (zoho.com) We use Microsoft 365 and per their recommendations (and requirements) for secure email we have
    • Zoho Books | Product updates | March 2025

      Hello users, We have rolled out new updates in Zoho Books to enhance your accounting experience. These include the ability to create workflow rules for manual journals and Multi-Factor Authentication (MFA) for customer and vendor portals. Explore these
    • Set connection link name from variable in invokeurl

      Hi, guys. How to set in parameter "connection" a variable, instead of a string. connectionLinkName = manager.get('connectionLinkName').toString(); response = invokeurl [ url :"https://www.googleapis.com/calendar/v3/freeBusy" type :POST parameters:requestParams.toString()
    • Next Page