Skip to main content

Mail Merge List of Docs in Make

Mail Merge With Data String List of Docs is a Make module by PDF4me that merges a Word or PDF template with a JSON array of records, generating one personalized document per array object. Use it for bulk contracts, invoices, or certificates. Output arrives as a zip of individual files or a single combined PDF.

Deprecated module

This module will be deprecated soon. Migrate to Generate Documents Multiple for batch document generation with better performance, improved memory handling for large datasets, and expanded features.

Related Blog Posts
No blog post yet for this feature — coming soon.
In the meantime, browse the PDF4me blog for tutorials and workflows across every platform.
Visit the blog →

Authenticating Your API Request

Every PDF4me module in Make requires a valid connection. Create or select one that holds your PDF4me API key so the scenario can authenticate batch document generation requests securely.

Important Facts You Should Not Miss

This module is deprecated
For new scenarios use Generate Documents Multiple. It offers better performance, improved memory handling for large datasets, and extended format options.
One JSON object equals one document
Merge Data must be a valid JSON array. Each object in the array generates one document, and its key names must exactly match the mail merge placeholder names in your Word or PDF template.
Two output modes: combined PDF or zip
Set Merge Output File to Yes for a single PDF containing every document in sequence. Set to No, the default, for a zip archive with one file per record, then extract it with the Archive module.
PDF4me document generation step in Make with the Template File Type dropdown set to Mail Merge

Set the Template File Type to Mail Merge so PDF4me merges each JSON record into the placeholder fields of your template.

What is Mail Merge List of Docs in Make?

Mail Merge List of Docs is Make's PDF4me module for generating many documents at once from a single template. It accepts a template file and a JSON array of records, then returns one merged document per record. Unlike merging records by hand in Word, this module scales to hundreds of documents inside an automated scenario with no manual steps.

Parameters

ParameterRequiredWhat it doesExample
ConnectionRequiredPDF4me connection holding your API key. Click Add and paste your key from dev.pdf4me.com/dashboard if connecting for the first time.My PDF4me connection
FileRequiredBinary content of the Word or PDF template. Map it from a preceding download module such as Dropbox Download a File.1. Data
Merge DataRequiredJSON array of data records. Each object generates one document, and its key names must exactly match the placeholder names in the template.[{"Name":"John","Co":"Acme"}]
Merge Output FileOptionalControls the output format. Yes gives a single combined PDF of all documents. No, the default, gives a zip archive with one file per record.No

Output

FieldTypeWhat it contains
Doc DataBufferThe generated output as a binary buffer. A zip archive of individual files when Merge Output File is No, or a single combined PDF when it is Yes.
File NameStringName of the output file, either a zip or a pdf. Map it into the File Name field of a downstream upload or email module.

How does batch document generation work in Make?

The module reads your template once, then walks the Merge Data array and substitutes each record into the template placeholders to produce a document. When Merge Output File is No it packs the documents into a zip; when Yes it concatenates them into one PDF. Mail merge itself is a long-standing Microsoft Word feature, documented in the Microsoft Office help center. For scenario building patterns, see the Make help center.

Typical Setups

Certificates for an event roster
  1. Read a roster from Google Sheets with the Search Rows module.
  2. Aggregate the rows into a JSON array with the Array Aggregator.
  3. Pass the template to File and the array to Merge Data.
  4. Set Merge Output File to Yes for one combined PDF, then email it.
Batch invoices as individual files
  1. Collect invoice records from an Airtable or Sheets source.
  2. Build the JSON array so each object matches the template placeholders.
  3. Leave Merge Output File as No to get a zip of one PDF per record.
  4. Add the Archive module to unzip, then upload each file to Drive.
Personalized letters from a webhook
  1. Trigger on a Custom Webhook that delivers a records array.
  2. Download the letter template from cloud storage.
  3. Run Mail Merge to produce the merged documents.
  4. Deliver the zip or combined PDF to the destination.

Practical Tips

This module is deprecated
For new scenarios use Generate Documents Multiple, which adds better memory handling and format support. Existing scenarios keep working.
Keys must match placeholders exactly
JSON key names must match the template placeholder names, and casing matters. A key named company will not fill a Company placeholder.
Yes vs No changes the output type
Merge Output File set to Yes returns a single combined PDF. No, the default, returns a zip of individual files.
Unzip to loop individual files
With No, add the Archive module then an Iterator to upload or email each generated file separately.
Valid JSON array required
Merge Data must be a JSON array of objects. Validate it before the run so the module does not return empty output.

Cheat Sheet

FieldValue
ModulePDF4me > Mail Merge With Data String List of Docs
StatusDeprecated (prefer Generate Documents Multiple)
ConnectionYour PDF4me connection
File1. Data (template binary)
Merge Data[{"Name":"John","Co":"Acme"}]
Merge Output FileNo (zip) or Yes (combined PDF)
OutputDoc Data + File Name
Credits1 per document generated

Common Questions

How do I mail merge a list of documents in Make?+
Add the PDF4me Mail Merge With Data String List of Docs module, map a Word or PDF template to File, pass a JSON array to Merge Data, then run the scenario. The module produces one document per array object, delivered as a zip archive or a single combined PDF depending on the Merge Output File setting.
What format should the Merge Data JSON array use?+
Merge Data must be a JSON array of objects. Each object holds the field values for one record, and its key names must exactly match the mail merge placeholder names in your template. Casing matters, so a placeholder named Company will not receive a value from a key named company.
How do I get individual files instead of one combined PDF?+
Leave Merge Output File set to No so the module returns a zip archive with one file per record. Add Make built-in Archive module to extract the zip, then use an Iterator to loop through the files and upload, email, or convert each one individually.
Is this the recommended module for batch document generation?+
No. This module is deprecated. For new scenarios use Generate Documents Multiple, which provides enhanced batch processing, better memory management for large JSON arrays, expanded format support, and improved error handling. Existing scenarios keep working, but new builds should target the replacement.

Same Task on Other Platforms

Get Help