How to transfer files from Creator file upload fields to CRM file upload fields

How to transfer files from Creator file upload fields to CRM file upload fields

This article describes how to transfer files from Zoho Creator file upload fields to Zoho CRM file upload fields. I'm posting it here because the current documentation does not fully and accurately describe how to do this with certain file types (PDF, in my case), and I was only able to get it working after a lot of troubleshooting and back-and-forth with Creator support.

If you try to transfer a PDF from a Creator record to a CRM file upload field, you may encounter one the following:

  • The file arrives in CRM blank or corrupted
  • The file size is larger than the original (a 14KB file becoming 23KB is a telltale sign)
  • Every step of your pipeline returns a SUCCESS response, making the bug nearly impossible to locate
  • The documentation describes functions that either don't exist in Creator or explicitly warn that they don't work for binary files
  • A script that works for a CSV file fails for a PDF file

Here's how to make it work.


The Objective

Transfer a file uploaded via a Zoho Creator form field into a file upload field on a Zoho CRM record, preserving the file intact.


The obvious approach is to download the file from Creator using invokeUrl, convert it to a file object using toFile(), upload it to the CRM file store, and then update the CRM record with the resulting file ID. This approach is described in Zoho's documentation and appears to work, as every step returns a success response, but produces a blank or corrupted file in CRM for any binary file type, including PDFs.


The root cause is that toFile() does not faithfully round-trip binary data through Deluge's runtime. For plain text files like CSVs, this isn't a problem. For binary files like PDFs, toFile() corrupts the content during conversion. The size inflation (original file smaller than the CRM version) is the diagnostic signature of this corruption.


The documentation offers several apparent alternatives:

getFileContent() returns TEXT and explicitly warns in a footnote that "file types that usually contain images (for example .pdf, etc.) will return junk values." 

setFileType() is documented as applicable to all Zoho services except Zoho Creator, making it useless in this context.


The Missing Documentation

The solution differs depending on whether you are transferring a text-based file (CSV, TXT) or a binary file (PDF).

For Text-Based Files (CSV, TXT): Use the v5 Endpoint with toFile()

For plain text files, the standard pipeline works correctly. Use toFile() to convert the invokeUrl response, POST to the v5 CRM files endpoint, and update the record using zoho.crm.updateRecord.

  1. fileContent = invokeurl
  2. [
  3.     url :"https://www.zohoapis.com/creator/v2.1/data/<owner>/<app>/report/<ReportName>/<recordId>/<FieldName>/download"
  4.     type :GET
  5.     connection:"creator"
  6. ];
  7. fileName = "contacts.csv";
  8. fileObject = fileContent.toFile(fileName);
  9. fileObject.setParamName("file");
  10. uploadResponse = invokeurl
  11. [
  12.     url :"https://www.zohoapis.com/crm/v5/files"
  13.     type :POST
  14.     files:fileObject
  15.     connection:"z_oauth2"
  16. ];
  17. fileId = uploadResponse.getJSON("data").get(0).getJSON("details").getJSON("id");
  18. fileList = List();
  19. fileList.add(fileId);
  20. updateMap = Map();
  21. updateMap.put("Your_File_Field_API_Name", fileList);
  22. zoho.crm.updateRecord("Your_Module", crmRecordId.toLong(), updateMap, Map(), "zcrm");


For Binary Files (PDF): Use the v8 Endpoint with setParamName()

For binary files, skip toFile() entirely. Call setParamName() directly on the invokeUrl response object, POST to the v8 CRM files endpoint, and update the record using a raw invokeUrl PUT with the File_Id__s map structure. The zoho.crm.updateRecord method does not work for v8 file field updates.

  1. fileContent = invokeurl
  2. [
  3.     url :"https://www.zohoapis.com/creator/v2.1/data/<owner>/<app>/report/<ReportName>/<recordId>/<FieldName>/download"
  4.     type :GET
  5.     connection:"creator"
  6. ];
  7. fileContent.setParamName("file");
  8. uploadResponse = invokeurl
  9. [
  10.     url :"https://www.zohoapis.com/crm/v8/files"
  11.     type :POST
  12.     files:fileContent
  13.     connection:"z_oauth2"
  14. ];
  15. fileId = uploadResponse.getJSON("data").get(0).getJSON("details").getJSON("id");
  16. fileMap = Map();
  17. fileMap.put("File_Id__s", fileId);
  18. fileList = List();
  19. fileList.add(fileMap);
  20. fileUpdateMap = Map();
  21. fileUpdateMap.put("Your_File_Field_API_Name", fileList);
  22. dataList = List();
  23. dataList.add(fileUpdateMap);
  24. payload = Map();
  25. payload.put("data", dataList);
  26. updateResponse = invokeurl
  27. [
  28.     url :"https://www.zohoapis.com/crm/v8/Your_Module_API_Name/" + crmRecordId
  29.     type :PUT
  30.     parameters:payload.toString()
  31.     connection:"zcrm"
  32. ];

Validating File Types Before Submission

Since the two file types require different pipelines, it is worth validating the file extension before the on-submit script runs. In Zoho Creator, alert and cancel submit are only valid in validate scripts, not on-submit scripts. Add a validate script to your form with the following pattern:

  1. if(input.Your_CSV_Field != "")
  2. {
  3.     filePath = input.Your_CSV_Field.toString();
  4.     fileExt = filePath.subString(filePath.lastIndexOf(".") + 1).toLowerCase();
  5.     if(fileExt != "csv")
  6.     {
  7.         alert "This field requires a CSV file. Please remove the current file, attach a CSV file, and resubmit.";
  8.         cancel submit;
  9.     }
  10. }
  11. if(input.Your_PDF_Field != "")
  12. {
  13.     filePath = input.Your_PDF_Field.toString();
  14.     fileExt = filePath.subString(filePath.lastIndexOf(".") + 1).toLowerCase();
  15.     if(fileExt != "pdf")
  16.     {
  17.         alert "This field requires a PDF file. Please remove the current file, attach a PDF file, and resubmit.";
  18.         cancel submit;
  19.     }
  20. }

The .toLowerCase() call on the extension is important -- without it, a file named Report.PDF would pass validation on some systems and fail on others.


Connection Setup

This pipeline requires three connections:

  • creator -- used for the invokeUrl GET to download the file from Creator. This is the built-in Zoho Creator connector in Microservices > Connections
  • z_oauth2 -- used for the invokeUrl POST to upload the file to the CRM file store; requires scopes ZohoCRM.bulk.ALL and ZohoCRM.bulk.READ. This is the OAuth2 connection type.
  • zcrm -- used for the invokeUrl PUT to update the CRM record (v8 PDF pipeline) or zoho.crm.updateRecord (v5 CSV pipeline). This uses the built-in Zoho CRM connection type.

Summary

File Type
Download Method
Upload Endpoint
Update Method
CSV / TXT
invokeUrl + toFile()
v5 /crm/v5/files
zoho.crm.updateRecord
PDF
invokeUrl + setParamName()
v8 /crm/v8/files
invokeUrl PUT with File_Id__s

I was not able to find documentation that explains the distinction between v5 and v8 and the requirement to skip toFile() for binary files in Zoho's official documentation at the time of writing. This pipeline was identified through direct testing and a support escalation with Zoho Creator support.


Hope this saves someone a few hours. If Zoho has updated their documentation to cover this since this was posted, please add a comment.

    Access your files securely from anywhere

        All-in-one knowledge management and training platform for your employees and customers.






                              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

                                                              • Share your success story

                                                                We would like to hear from our passionate users how much Zoho Creator has changed the way you work and benefited you. If you would like to share your story to us and be featured as a proud user of Zoho Creator, then this is for you. Fill up the form below and if you want to be included in a case study, we will get in touch with you to get further details. So what are you waiting for? Tell us your story. Charles
                                                              • Merge and Store v1 API depreciation

                                                                Hi Zoho Writer users, The Merge and Store v1 API allows you to store the merged document in Zoho WorkDrive. The response of this API will be returned with the document's ID only after the merge is complete. In Deluge, the maximum timeout for operation
                                                              • Zoho Creator Developer's Conference 2017 !!!

                                                                We welcome all our Creator Developers! You're invited to join us for our annual Zoholics Developers conference August 29th–31st! This is your chance to get training and guidance on Zoho Creator from our most knowledgeable custom app builders.       Zoholics Developers is a three-day event where you'll participate in interactive workshops to hone your app-building skills, get questions answered by Creator experts with personal one-on-one sessions, and connect with other Creator developers from around


                                                              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

                                                                                                                • Integrate QuickBooks with Bigin and streamline your sales and accounting!

                                                                                                                  If your business relies on Bigin for customer management and QuickBooks for accounting and invoicing, this new integration is here to make your operations more efficient. By connecting these two platforms, you can now manage your CRM and financial processes
                                                                                                                • Very limited support for MCP

                                                                                                                  Has anyone else noticed how limited the MCP support for Zoho People currently is? Right now only a small set of read-only actions (exactly 15) seem to be available. At the same time Zoho CRM supports over 700+ functions. It makes it almost impossible
                                                                                                                • How has Zoho still not resolved Daylight Savings Time?

                                                                                                                  According to these forums Zoho has been working on DST for 12 years. Totally unacceptable. Am I missing something? Why are other customers who observe DST not screaming for this to be fixed? Are there reasonable workarounds? This is a must-have for us. 
                                                                                                                • ZOHO Desk attachments support

                                                                                                                  Hi I just setup MCP with claude, it works well, but it can't read attachments... which makes it kind of useless... Will you be adding attachment capabilities anytime soon?
                                                                                                                • How to Generate Separate Labels for Each Invoice SKU Line Item in Zoho Books?

                                                                                                                  Hi everyone, I’m trying to implement a requirement in Zoho Books where separate labels need to be generated for each SKU/item from an invoice. Scenario: One invoice can contain multiple products/SKU items Each item/box should have its own separate label
                                                                                                                • HTML PDF Templates / Build From Scratch option not visible for Custom Modules

                                                                                                                  Hi everyone, I am working with Zoho Books Custom Modules and trying to create a custom 4x4 package label PDF template using HTML/CSS. According to the official Zoho Books documentation for HTML PDF Templates, there should be an option like: Settings →
                                                                                                                • Updating Sales orders on hold

                                                                                                                  Surely updating irrelevant fields such as shipping date should be allowed when sales orders are awaiting back orders? Maybe the PO is going to be late arriving so we have to change the shipment date of the Sales order ! Not even allowed through the api - {"code":36014,"message":"Sales orders that have been shipped or on hold cannot be updated."}
                                                                                                                • Direct Integration Between Zoho Cliq Meetings and Google Calendar

                                                                                                                  Dear Zoho Team, We’d like to submit the following feature request based on our current use case and the challenges we’re facing: 🎯 Feature Request: Enable meetings scheduled in Zoho Cliq to be automatically added to the host's Google Calendar, not just
                                                                                                                • billable_expense_id in Invoice API does not set invoiced=true on bill line items — causes duplicates in Projects > Create Invoice

                                                                                                                  Hi Zoho Community, We are running an automated batch invoicing system using the Zoho Books API and have hit two critical bugs that are causing duplicate invoice risk in production. Raising this here for visibility alongside a support ticket already filed.
                                                                                                                • New fields : radio button

                                                                                                                  Hi, when customizing a module (eg: Candidates), we are able to select different types of fields (check box, currency, list, ...). However there is no "radio-button" component. This type of fields is often used in Web pages and will be certainly a plus-value
                                                                                                                • Huge confusion in zoho crm and zoho analytics

                                                                                                                  Context => We have reporting based hierarchy in zoho crm and basically there will be one sales head and couple sales managers and 10 pre sales excutives divided between 2 sales managers we have maintained that in zoho crm and there is complex reporting
                                                                                                                • Huge confusion in zoho crm and zoho analytics

                                                                                                                  Context => We have reporting based hierarchy in zoho crm and basically there will be one sales head and couple sales managers and 10 pre sales excutives divided between 2 sales managers we have maintained that in zoho crm and there is complex reporting
                                                                                                                • Import KB template OR Export template for zoho desk?

                                                                                                                  Greetings. Can you tell me if there is a way to get an EXPORT of my KB articles? OR is there a template you supply for importing KB articles into my zoho desk? I am looking for a method of understanding what fields can be imported, and what their possible
                                                                                                                • Choice Availability Reset

                                                                                                                  If an entry is deleted which included a response to a field with choice availability enabled does that increase the number of remaining times the choice can be selected?
                                                                                                                • Rich Text Type Format for Notes Field

                                                                                                                  Has it been discussed or is there a way to insert a table in the notes field? We sometimes receive information in a table format, and it would be beneficial to have it in the same format as a note on a record.
                                                                                                                • [Bug] WebAuthn passkey registration blocked on rpIds with TLDs longer than 6 characters (.accountant, .technology, etc.) — isValidDomain regex too strict

                                                                                                                  Hi, Filing on behalf of an enterprise customer where Zoho Vault is deployed across the company. The Chrome extension blocks WebAuthn passkey registration on legitimate sites whose Relying Party ID (rpId) has a TLD longer than 6 letters. This affects every
                                                                                                                • [Heads Up] Upcoming update to field values in Zoho Books - Zoho Analytics integration

                                                                                                                  Hello Users, We'd like to inform you of an upcoming update to the Account Type field values in the Zoho Books integration for Zoho Analytics from June 1, 2026. What's Changing? The following values under the Account Type field are being renamed to align
                                                                                                                • Important update: Migrate to the new SalesIQ live chat widget before May 15, 2026

                                                                                                                  The old SalesIQ live chat widget will be deprecated on May 15, 2026. This is a final reminder to migrate to the new SalesIQ live chat widget before this date. After May 15, 2026, the old widget will no longer be maintained, which can lead to slower performance
                                                                                                                • Zia Agent built in ChatKit UI does not render markdown

                                                                                                                  Hi, You have a major shortcoming in the Zia Agent UI. The test UI that is embedded in agents.zoho.com allows you to test the agent has full support for rendering markdown, but your ChatKit UI does not have support for rendering markdown. If I embed it
                                                                                                                • Team folder not created when creating project using zoho flow

                                                                                                                  When I try to automate project creation using zoho flow, and I have enabled workdrive integration to automatically create team folders to attach to the project, this only works when I create a new project through the UI. But I am trying to automate project
                                                                                                                • Zoho Projects - Email notification relabelling of modules not present on default templates

                                                                                                                  Hi Projects Team, I noticed that in the default email template notification, the word "bug" was not renamed to the lable I am using in my system. As many users may used the Bugs modules for various purposes including Changes, Revisions, Issues, etc...
                                                                                                                • GLM 5 not available

                                                                                                                  Hello, I am trying to setup a Zia Agent using agents.zoho.com. The settings says that GLM5 is among the list of free zoho hosted models available. However, when I try to setup an agent and pick a model from the list only GLM 4.7 Flash is available. How
                                                                                                                • Set Custom Icon for Custom Modules in new Zoho CRM UI

                                                                                                                • Can not send or reply to mails

                                                                                                                  Hello, I can not send mails or reply. If I try to send a mail i get "Unable to send message;Reason:553 Replaying disallowed. Invalid Domain - invata-programare.ro" Can you help me, please? Thank you!
                                                                                                                • Kaizen #241: Automating Deal risk escalation using Workflow APIs, Connected Workflows, and Functions

                                                                                                                  Hello everyone! Welcome to another Kaizen week. In many organizations, sales teams work in Zoho CRM, finance teams manage invoices in Zoho Books, and support teams handle customer issues in Zoho Desk. Now consider this scenario: A sales representative
                                                                                                                • Upload own Background Image and set Camera to 16:9

                                                                                                                  Hi, in all known online meeting tools, I can set up a background image reflecting our corporate design. This doesn't work in Cliq. Additionally, Cliq detects our cameras as 4:3, showing black bars on the right and left sides during the meeting. Where
                                                                                                                • Allow Super Admins to Edit Task “Created By” and Issue “Reporter” Fields

                                                                                                                  Hello Zoho Projects Team, We hope you are doing well. We would like to submit a feature request regarding the ability to manage and correct system ownership fields in Zoho Projects, specifically: Task → Created By Issue → Reporter / Reported By Current
                                                                                                                • The Social Wall: April 2026

                                                                                                                  Hello everyone, This month, we’re excited to bring you a set of new updates for Threads in Zoho Social, designed to make publishing, monitoring, and managing your content much easier Threads updates You’ll now see a few useful improvements in the compose
                                                                                                                • Sort or filter CRM report by count value

                                                                                                                  Hi there, I'm trying to create a report that will show me high frequency bookings (leads) coming through within a time period for any particular account - this is so we can proactively reach out to these accounts. I have a report that shows the information
                                                                                                                • Error when changing user permission from read only to user.

                                                                                                                  Hi there, Ive tried to change one of my users to be able to edit, however i kept getting the error user license exceed.
                                                                                                                • Marketing Tip #30: Promote your brand differently on each social platform

                                                                                                                  Not all social platforms work the same way. Posting the same content in the same way across every channel can limit your reach. Each platform has its own discovery system, and understanding what it prioritizes can dramatically improve how your brand is
                                                                                                                • Whatsapp Limitation Questions

                                                                                                                  Good day, I would like to find out about the functionality or possibility of all the below points within the Zoho/WhatsApp integration. Will WhatsApp buttons ever be possible in the future? Will WhatsApp Re-directs to different users be possible based
                                                                                                                • **Building Role-Appropriate Accountability Layers in Zoho Projects - Looking for Real-World Experience**

                                                                                                                  We're a small ISP/telecom operator on Zoho One and I'm trying to solve what I think is a common organizational problem. Would love to hear from others who've tackled it. **The Core Problem** Staff will only consistently use a project management system
                                                                                                                • Duplicate entries for contacts birthdays

                                                                                                                  Good morning I have recently started to use my Zoho calendar and noticed that there are multiple birthday events showing for some of my contacts. I have checked my contacts and there were duplicates for some contacts which I have now rectified but the
                                                                                                                • Using IMAP configuration for shared email inboxes

                                                                                                                  Our customer service team utilizes shared email boxes to allow multiple people to view and handle incoming customer requests. For example, the customer sends an email to info@xxxx.com and multiple people can view it and handle the request. How can I configure
                                                                                                                • What's New in Zoho Billing | March 2026

                                                                                                                  March is here with a fresh wave of updates to Zoho Billing. From making compliance easier, reporting more flexible, to making day-to-day workflows smoother across the board. Here's everything that's new this month. Introducing Usage-Based Billing Reports
                                                                                                                • Subforms in Creator-Lookup Price

                                                                                                                  I've got a modular called Price List with items and prices. Ive got another module called Estimates with a subform that looks up that Price List. I am trying to get the "Price" to auto-enter based on the Lookup field of the item name. Anyone know how
                                                                                                                • Feature request - pin or flag note

                                                                                                                  Hi, It would be great if you could either pin or flag one or more notes so that they remain visible when there are a bunch of notes and some get hidden in the list. Sometimes you are looking for a particular name that gets lost in a bunch of less important
                                                                                                                • Tip #20 - Three things you probably didn't know you can do with picklists

                                                                                                                  Hello Zoho Sheet users! We’re back with another quick tip to help you make your spreadsheets smarter. Picklists are a great tool to maintain consistency in your spreadsheet. Manually entering data is time-consuming and often leaves typos and irregular
                                                                                                                • Map Dependency Upgrades in Zoho CRM

                                                                                                                  Map Dependency Fields enhancements are available in CA, SA, JP, CN, UAE, AU and EU DCs. Latest update: Also available in IN and US DCs. Hello everyone, We’ve introduced a set of enhancements to Map Dependency Fields to make setup simpler, faster, and
                                                                                                                • Next Page