Generar facturas dinámicas con Make y PDF4me
La generación de documentos dinámicos es el proceso de creación automática de un lote de documentos personalizados con datos dinámicos de una fuente. Por ejemplo, una factura podría personalizarse para dirigirse a cada destinatario por su nombre. La creación de documentos con datos dinámicos requeriría una fuente de datos, como una lista, una hoja de cálculo, una base de datos, JSON o matrices. Los campos de fusión son marcadores de posición en plantillas predefinidas que se sustituyen posteriormente utilizando datos de una de las fuentes de datos mencionadas anteriormente o de cualquier otra fuente de datos admitida.
La creación de una factura con datos dinámicos requiere la aplicación de técnicas como la combinación de correspondencia o el uso de campos de fusión. Uno de los métodos más populares de generación de documentos dinámicos consiste en el uso de la fusión de correo, que es mucho más fácil en el diseño de plantillas. Las facturas personalizadas se basan en plantillas de documentos creadas con Word u otros creadores de formularios que tienen la capacidad de fusionar campos. Aquí discutimos el uso de plantillas creadas usando la sintaxis mustache - {{campo marcador de posición}} - que posteriormente se sustituye por los datos dinámicos.
PDF4me Acción de generar documentos en Make le permite crear escenarios para generar documentos dinámicos y automatizarlos. El proceso de generación se puede automatizar si tiene la plantilla y los datos dinámicos preparados. La plantilla puede ser un archivo Word o HTML, o cualquier otro formato soportado. Los datos pueden ser una hoja de cálculo, CSV, JSON, XML o una lista de datos.
Generar una factura dinámica
Generar una factura con datos dinámicos utilizando Make requiere que la plantilla y los datos se almacenen en una plataforma de almacenamiento en la nube. Al menos, la plantilla debe estar en un almacenamiento en la nube como Dropbox, pero los datos pueden pasarse a un campo de datos de entrada directamente.
Veamos cómo crear una factura de ejemplo como la que se muestra a continuación utilizando un escenario de Make.
En nuestro caso de uso, se espera que la siguiente muestra esté disponible en una ubicación de Dropbox.
Añadir un disparador de vigilancia de archivos para iniciar el escenario
Cree un módulo de Dropbox para vigilar la llegada de las plantillas. En cuanto llegue el nuevo archivo de plantilla a la carpeta, se activará el escenario.
Añadir una acción de Dropbox de descarga de archivos
Una vez que el archivo de la plantilla se detecta en la carpeta de origen, el módulo de Dropbox con la acción Descargar archivos pasará el archivo desde el almacenamiento a la acción PDF4me. Necesitamos añadir 2 acciones de descarga de archivos.
Uno para descargar la Plantilla.
Otro para descargar los datos JSON
Añadir el módulo PDF4me para la acción de generar documentos
A continuación en el escenario, tenemos que añadir el módulo PDF4me con la Acción Generar Documento. Aquí, usted necesita para configurar el tipo de plantilla, el tipo de salida, y los datos de entrada. Los datos de entrada pueden ser introducidos directamente en el campo o en nuestro caso, configurar para obtener los datos del archivo JSON.
Los datos del campo de entrada deben tener el siguiente aspecto para la plantilla del caso de uso:
{
"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"
}
}
]
}
Añadir un Iterador para manejar los múltiples archivos de salida
Como es obvio, la acción PDF4me generará múltiples archivos basados en los datos. Para manejar esto necesitamos un módulo Make Iterator para manejar cada archivo para la siguiente acción.
Añadir el módulo Dropbox Upload para guardar los archivos de salida
Cree un módulo de Dropbox con la acción Cargar archivos para guardar todos los archivos en la carpeta deseada.
El resultado de nuestro escenario debería ser similar al del documento siguiente.
Con una Suscripción para desarrolladores de PDF4me , puede crear escenarios en Make que pueden automatizar la generación masiva de documentos con datos dinámicos a bajo coste. La suscripción asegura que su automatización nunca se detenga debido a cualquier escasez en el número de llamadas a la API.