使用Zapier和PDF4me生成动态发票
动态文件生成是数字世界中最受欢迎的技术之一,也是发展最快的技术。我们都知道,大多数企业正在变得无纸化,处理交易方式的新变化要求以数字方式生成文件。PDF文件是数字文件的最优先模式。企业,凡是涉及到钱的地方,总是需要生成发票。这些发票中的很多数据都是动态生成的。
创建具有动态数据的发票需要应用邮件合并或使用合并字段等技术。自定义发票是基于使用Word或其他具有合并字段功能的表格创建者创建的文档模板。为了生成具有动态数据的pdf发票,需要创建具有合并字段的模板,然后用原始数据替换。
Zapier中的PDF4me生成文档行动让您创建动态发票并将其自动化,以便您可以专注于您最重要的任务。如果你准备好了模板和动态数据,生成过程就可以自动化。模板可以是一个Word文件或HTML,或任何其他支持的格式。数据可以是电子表格、CSV、JSON、XML或数据列表。
如何生成动态发票?
让我们在这里看一个例子,你可以在Zapier中创建一个动态发票,模板是Word格式,数据是JSON格式。JSON让你以结构化的格式创建复杂的数据。
让我们来看看下面的样本模板
添加一个触发器来启动Zap
Zapier有几个可用的触发器来启动一个Zap。你可以根据你存储源文件的地方选择首选触发器。在这个例子中,我们使用的是Dropbox触发器。为Dropbox添加一个New file in Dropbox触发器来触发Zap。
为模板和数据添加从Dropbox下载的动作
为了将模板和数据传递给生成文档动作,我们需要从源头下载模板和相关数据。因为我们在这里使用Dropbox,所以我们使用从Dropbox下载动作。
从PDF4me添加生成文档动作
一旦文件被下载,我们需要把它传递给生成文档的动作。在这个动作中,配置模板文件名和数据文件名。同时,选择数据类型。PDF4me在Mustache渲染类型中允许2种类型的数据 - XML和JSON。我们在当前的例子中使用JSON。
对于上述样本模板,样本数据将如下所示。
{
"Documents": [
{
"header": {
"docType": "Original Copy"
},
"body": {
"Column1": "Quantity",
"Column2": "Description",
"Column3": "Unit Price",
"Column4": "Total",
"Invoice": {
"number": 14957,
"date": "25-02-2022",
"instructions": "Instruction Invoice 1",
"subTotal": 200150,
"tax": "18%",
"dueDate": "25-03-2022",
"shipping": "200"
},
"Biller": {
"phone": "989797",
"fax": "998463",
"email": "[email protected]",
"web": "www.doc1.com",
"address": {
"company": "Organization 1",
"street": "Street 1",
"city": "City 1",
"zip": "123456"
}
},
"Recepient": {
"name": "recepeint 1",
"address": {
"street": "testveien 3 ",
"city": "City 1",
"zipcode": "0555",
"country": "Country 1"
}
},
"Product": [
{
"quantity": 1,
"description": "item 1",
"unitPrice": 45,
"totalPrice": 867
},
{
"quantity": 2,
"description": "item 2",
"unitPrice": 123,
"totalPrice": 3464
},
{
"quantity": 3,
"description": "item 3",
"unitPrice": 323,
"totalPrice": 6564
}
]
},
"footer": {
"phone": "phone123",
"fax": "fax123",
"email": "[email protected]",
"web": "www.123.com"
}
}
]
}
在PDF4me Generate Document动作中相应地配置参数。
请注意,你将不得不在头、正文和页脚中分别用循环指定合并字段。始终将文件正文内的内容指定为 “body”。
添加上传至Dropbox的动作与Loop控件
当文件被动态地生成时,会有多个输出文件。对于每个文件,Zap应该把文件保存到所需的位置。我们使用For Each控件动作来处理预计有多个输出文件的情况。
在循环中添加以下Dropbox动作。
你可以相应地在循环动作中配置以下字段,并确保上传至Dropbox的动作在循环器内。
生成的动态发票将如下所示。
你也可以使用 "添加条码 "动作添加一个二维码或条码,使你的发票可以被机器读取。
通过PDF4me 开发者订阅,您可以创建工作流程,以最少的人力和较低的成本自动生成带有动态数据的大量文档。该订阅确保你的自动化永远不会因为任何API调用数量的短缺而停止。