Generare fatture dinamiche con Make e PDF4me

By Nishanth Asokan | Automazione

Generare fatture dinamiche con Make e PDF4me

La generazione dinamica di documenti è il processo di creazione automatica di una serie di documenti personalizzati con dati dinamici provenienti da un’origine. Ad esempio, una fattura potrebbe essere personalizzata per indirizzare ciascun destinatario per nome. La creazione di documenti con dati dinamici richiede un’origine dati, come un elenco, un foglio di calcolo, un database, JSON o array. I campi unione sono segnaposto in modelli predefiniti che vengono successivamente sostituiti con dati provenienti da una delle fonti di dati sopra citate o da qualsiasi altra fonte di dati supportata.

La creazione di una fattura con dati dinamici richiede l’applicazione di tecniche come il mail merge o l’utilizzo di campi merge. Uno dei metodi più diffusi per la generazione di documenti dinamici prevede l’uso del mustache rendering, che è molto più semplice nella progettazione dei modelli. Le fatture personalizzate si basano su modelli di documenti creati con Word o altri creatori di moduli che dispongono di funzionalità di campi unione. Qui discutiamo l’uso di modelli creati usando la sintassi mustache - {{campo segnaposto}} - che viene successivamente sostituita con i dati dinamici.

PDF4me Azione di generazione di documenti in Make consente di creare scenari per generare documenti dinamici e automatizzarli. Il processo di generazione può essere automatizzato se si dispone del modello e dei dati dinamici. Il modello può essere un file Word o HTML, o qualsiasi altro formato supportato. I dati possono essere fogli di calcolo, CSV, JSON, XML o elenchi di dati.

Generazione di una fattura dinamica

La generazione di una fattura con dati dinamici con Make richiede che il modello e i dati siano memorizzati in una piattaforma di archiviazione cloud. Almeno, il modello dovrebbe trovarsi in un cloud storage come Dropbox, ma i dati possono essere passati direttamente a un campo di input.

Vediamo di creare una fattura di esempio come quella qui sotto, utilizzando uno scenario Make.

Modello Baffi per la fatturazione dinamica

Nel nostro caso d’uso, il seguente campione dovrebbe essere disponibile in una sede Dropbox.

Aggiungere un’attivazione dell’orologio per i file per avviare lo scenario

Creare un modulo Dropbox per controllare l’arrivo dei modelli. Non appena il nuovo file di modello arriva nella cartella, lo scenario viene attivato.

Azione Guarda i file per il modulo Dropbox

Aggiungere un’azione Download file Dropbox

Una volta rilevato il file del modello nella cartella di origine, il modulo Dropbox con l’azione Download file passerà il file dalla memoria all’azione PDF4me. È necessario aggiungere 2 azioni Download files.

Uno per scaricare il modello.

Azione di download per il modulo Dropbox

Un altro per scaricare i dati JSON

Scaricare i dati JSON da Dropbox

Aggiungere il modulo PDF4me per l’azione Genera documento

Successivamente, dobbiamo aggiungere il modulo PDF4me con l’azione Generate Document. Qui è necessario configurare il tipo di modello, il tipo di output e i dati di input. I dati di input possono essere inseriti direttamente nel campo o, nel nostro caso, configurati per ottenere i dati dal file JSON.

Modulo PDF4me Generate Document per Make

I dati del campo di input dovrebbero essere come quelli riportati di seguito per il modello del caso d’uso:

{
    "Documenti": [
        {
            "header": {
                "docType": "Copia originale"
            },
            "corpo": {
                "Colonna1": "Quantità",
                "Colonna2": "Descrizione",
                "Colonna3": "Prezzo unitario",
                "Colonna4": "Totale",
                "Fattura": {
                    "numero": 14957,
                    "data": "25-02-2022",
                    "istruzioni": "Istruzione Fattura 1",
                    "Totale parziale": 200150,
                    "imposta": "18%",
                    "dueDate": "25-03-2022",
                    "spedizione": "200"
                },
                "Biller": {
                    "telefono": "989797",
                    "fax": "998463",
                    "email": "[email protected]",
                    "web": "www.doc1.com",
                    "indirizzo": {
                        "azienda": "Organizzazione 1",
                        "via": "Via 1",
                        "città": "Città 1",
                        "zip": "123456"
                    }
                },
                "Destinatario": {
                    "nome": "recepeint 1",
                    "indirizzo": {
                        "via": "testveien 3",
                        "città": "Città 1",
                        "codice postale": "0555",
                        "Paese": "Paese 1"
                    }
                },
                "Prodotto": [
                    {
                        "quantità": 1,
                        "descrizione": "elemento 1",
                        "Prezzo unitario": 45,
                        "Prezzo totale": 867
                    },
                    {
                        "quantità": 2,
                        "descrizione": "voce 2",
                        "Prezzo unitario": 123,
                        "Prezzo totale": 3464
                    },
                    {
                        "quantità": 3,
                        "descrizione": "voce 3",
                        "Prezzo unitario": 323,
                        "Prezzo totale": 6564
                    }
                ]
            },
            "piè di pagina": {
                "telefono": "telefono123",
                "fax": "fax123",
                "email": "[email protected]",
                "web": "www.123.com"
            }
        
        }
    ]
}

Aggiungere un iteratore per gestire i file di output multipli

Come è ovvio, l’azione PDF4me genererà più file in base ai dati. Per gestire questo abbiamo bisogno di un modulo Make Iterator che gestisca ogni file per l’azione successiva.

Iteratore di controllo del flusso per i file di output

Aggiungere il modulo Dropbox Upload per salvare i file di output.

Creare un modulo Dropbox con l’azione Upload files per salvare tutti i file nella cartella desiderata.

Azione di caricamento dei file per il modulo Dropbox

L’output del nostro scenario dovrebbe essere simile al documento seguente.

Modello finale unito

Con un abbonamento PDF4me Developer Subscription, potete creare scenari in Make in grado di automatizzare la generazione di massa di documenti con dati dinamici a basso costo. L’abbonamento garantisce che l’automazione non si fermi mai a causa di un numero insufficiente di chiamate API.

Related Blog Posts