邮件合并
本指南涵盖的内容
本指南将引导您完成合并操作。 经典 Word 邮件合并模板 在 n8n 使用 simple_mail_merge_template.docx 和 sample_mail_merge_data.json该模板使用 Word 文档。 合并域 占位符(非) <<[字段]>> 或胡子 {{场地}}数据是 JSON 大批 每个收件人一个对象。对于“生成文档(单个)”,请使用 一行 在数组中。输出可以是 PDF 或者 Word。
开始之前
simple_mail_merge_template.docx 它是使用 Word 邮件合并(插入合并域)功能构建的。字段名称是: 名, 姓, 性别, 和 成员它们必须匹配 JSON 按键完全正确。sample_mail_merge_data.json (受到推崇的), 测试.xml, 或者 测试.csv邮件合并数据是 对象数组对于单个文档,粘贴一个包含单个对象的数组。:::注意:邮件合并与 PDF4me Word 模板
邮件合并 适用于使用经典邮件合并域 (MERGEFIELD) 创建的 Word 文档。 PDF4me Word模板 用途 <<[fieldName]>> 常规的 LINQ 语法 .docx选择与您的模板构建方式相匹配的类型。例如,对于多个收件人,请填写一份模板。 API 打电话,使用 生成文档(多个) 反而。
:::
示例文件包
请下载以下全部四个文件。一个 Word 邮件合并模板和三个等效的数据格式文件。
示例文件包含哪些内容
合并字段 simple_mail_merge_template.docx
这个例子很简单 会员信 包含四个经典的 Word 合并字段:
| Merge field name | Typical label in template | Sample value (sample_mail_merge_data.json) |
|---|---|---|
firstname | Given name | John |
lastname | Family name | Adams |
gender | Gender | Female |
member | Membership tier | Basic |
提示:如何检查合并域名称
在 Microsoft Word 中,按 Alt+F9 切换字段代码。邮件合并字段显示为 { MERGEFIELD firstname } 样式代码。名称后 合并域 必须与您的 JSON 钥匙。
:::
所有数据文件中的字段映射
| Merge field | JSON key (sample_mail_merge_data.json) | XML element (test.xml) | CSV column (test.csv) | Sample value |
|---|---|---|---|---|
firstname | firstname | firstname | firstname | John |
lastname | lastname | lastname | lastname | Adams |
gender | gender | gender | gender | Female |
member | member | member | member | Basic |
与 PDF4me Word 模板不同,它没有 <<[字段]>> 标签。与此不同 HTML没有胡子语法。引擎绑定 JSON Word MERGEFIELD 名称的键 一对一。
工作流程概览
Manual Trigger → Read Binary File (simple_mail_merge_template.docx) → PDF4me Generate Document (Single) → (optional) Write Binary File
| 步 | n8n 节点 | 目的 |
|---|---|---|
| 1 | 手动扳机 | 按需启动工作流程 |
| 2 | 读取二进制文件 | 负载 simple_mail_merge_template.docx 进入二元属性 data |
| 3 | PDF4me → 生成文档(单个) | 合并模板 + JSON 数组,输出 PDF 或者 Word |
| 4 | 写入二进制文件 或者 发送电子邮件 (选修的) | 保存或发送 generated_document_output.pdf |
/generate-document-single-template-file-type.png)
放 模板文件类型 到 邮件合并。 选择 PDF 或者 Word 为了 输出类型。
步骤 1:下载并放置示例文件
- 下载
simple_mail_merge_template.docx和sample_mail_merge_data.json从 示例文件包 多于。 - 将模板保存到某个位置 n8n 可以读取它(自托管的本地路径,或生产触发器的云存储)。
- (可选)下载
test.xml或者test.csv测试其他数据类型。
步骤 2:创建 n8n 工作流程
- 在 n8n创建一个新的工作流程。
- 添加一个 手动扳机 节点。
- 添加一个 读取二进制文件 触发器之后的节点。
- 添加 PDF4me → 生成文档(单个) 读取二进制文件之后。
- 连接您的 PDF4me 凭证。
注意:此处的 HTML 代码无效 模板文件输入类型: HTML 代码 仅在以下情况下有效 模板文件类型 是 HTML对于邮件合并,请使用 二进制数据, Base64 细绳, 或者 URL.
:::
步骤 3:加载 Word 模板(Read Binary File)
配置 读取二进制文件 节点:
| 场地 | 价值 |
|---|---|
| 文件路径 | 下载文件的完整路径 simple_mail_merge_template.docx |
| 物业名称 | data (默认值;用作 模板二进制属性 在 PDF4me) |
执行此节点一次,并确认输出项显示为二进制。 data 文件名 simple_mail_merge_template.docx。
步骤 4:配置 PDF4me 生成文档(单个)
核心设置
| 场地 | 价值 | 笔记 |
|---|---|---|
| 用于连接的凭证 | 你的 PDF4me 凭证 | 得到 API 钥匙 |
| 资源 | Generate | |
| 生成操作 | 生成文档(单个) | |
| 模板文件类型 | 邮件合并 | 经典 Word 合并域模板 |
| 输出类型 | PDF 或者 Word | PDF 供分享; Word 如果收件人需要编辑合并后的文档 |
模板输入(来自读取二进制文件)
| 场地 | 价值 |
|---|---|
| 模板文件输入类型 | 二进制数据 |
| 模板二进制属性 | data |
| 模板文件名 | simple_mail_merge_template.docx |
文档数据(粘贴来自以下位置的 JSON 数组) sample_mail_merge_data.json)
| 场地 | 价值 |
|---|---|
| 文档数据输入类型 | 文本 |
| 文档数据类型 | JSON |
| 文档数据文本 | 粘贴全部内容 sample_mail_merge_data.json (见下方方框) |
[
{
"firstname": "John",
"lastname": "Adams",
"gender": "Female",
"member": "Basic"
}
]
重要提示:JSON 必须为数组
邮件合并数据是一个数组 JSON 大批即使只有一个收件人,数组中的一个对象也会使用“生成文档(单个)”功能生成一个合并文档。
:::
输出选项
| 场地 | 价值 |
|---|---|
| 保持 PDF 可编辑 | 当输出类型为“关闭”(默认)时 PDF |
| 二进制数据输出名称 | data (默认) |
步骤 5:执行并验证输出
- 点击 执行工作流程。
- 打开 PDF4me 节点输出。 二进制开放属性
data(generated_document_output.pdf或者.docx)。 - 确认所有四个合并字段均已填写:
- 名 → 约翰
- 姓 → 亚当斯
- 性别 → 女性
- 成员 → 基本
如果某个字段为空,请比较您的 JSON 在 Word 模板中使用 MERGEFIELD 名称键(在 Word 中按 Alt+F9)。
步骤 6:保存或发送输出(可选)
写入二进制文件:
| 场地 | 价值 |
|---|---|
| 文件名 | mail-merge-output.pdf |
| 数据属性名称 | data |
| 输出路径 | 在您的目标文件夹中 n8n 主持人 |
发送电子邮件: 附加二进制文件 data 从 PDF4me 作为 PDF 或者 Word 依恋。
替代数据格式
选项A: JSON 文件为二进制文件(sample_mail_merge_data.json)
- 添加 读取二进制文件 为了
sample_mail_merge_data.json(使用 合并 如果模板和数据共享工作流项,则为节点)。 - 放 文档数据输入类型 到 二进制数据, 文档数据类型 到 JSON, 文档二进制属性 添加到您的数据字段中, 文档数据文件名 到
sample_mail_merge_data.json。
:::注意:二进制属性名称冲突
如果模板和数据都使用属性 data一个会覆盖另一个。请使用不同的名称(例如: template 和 mergeData或者合并来自两个“读取二进制文件”节点的条目。
:::
选项B: XML (test.xml)
放 文档数据类型 到 XML 并粘贴:
<?xml version="1.0" encoding="UTF-8"?>
<Person>
<firstname>John</firstname>
<lastname>Adams</lastname>
<gender>Female</gender>
<member>Basic</member>
</Person>
元素名称与合并字段名称和 JSON 键相匹配。
选项C: CSV (test.csv)
放 文档数据类型 到 CSV 并粘贴(标题行 + 一行数据):
firstname,lastname,gender,member
"John","Adams","Female","Basic"
列标题与合并字段名称直接匹配。
备选模板输入: URL
主持人 simple_mail_merge_template.docx 在公共场合 HTTPS URL然后设置:
| 场地 | 价值 |
|---|---|
| 模板文件输入类型 | URL |
| 模板文件 URL | 公开链接 simple_mail_merge_template.docx |
| 模板文件名 | simple_mail_merge_template.docx |
不需要“读取二进制文件”节点。数据仍然可以粘贴为 文档数据文本 或从 URL。
生产工作流程模式
生产环境中运行邮件合并的常用方法Once the sample test works, replace the Manual Trigger with these patterns.
- 工作表在新行出现时触发。
- 代码 或者 放 节点将行包裹在一个 JSON 大批:
[{“名”: ”...”, ...}]。 - PDF4me 邮件合并(固定)
simple_mail_merge_template.docx。 - 通过电子邮件发送合并后的邮件 PDF 致收件人。
- Webhook 接收表单有效负载。
- 将主体字段映射到合并键(
名,姓, ETC。)。 - 打造一款单品 JSON 用于存储文档数据文本的数组。
- 存储或通过电子邮件发送输出结果 PDF。
- 出口联系人 JSON 数组(每人一个对象)。
- 切换到 生成文档(多个) 一 PDF 每行。
- 如果每次运行只需要一个合并文件,请保留“生成文档(单个)”选项。
常见问题解答
相关指南
- 生成文档(单份)概述所有参数、输出字段和模板类型
- PDF4me Word模板:
<<[fieldName]>>使用语法而不是 MERGEFIELD - 生成文档(多个)每行一个输出文件 JSON 大批
- 邮件合并工作流程博客:端到端模式 Make