Genera inviti personalizzati e uniscili in un unico PDF con Power Automate: un flusso di lavoro Dropbox in 7 passaggi

La parte dolorosa delle spedizioni di massa non è scrivere la lettera, ma cucire insieme le copie personalizzate così finanza, risorse umane o operazioni ottengono un PDF pulito invece di cinquanta allegati. Questa procedura dettagliata crea il modello esatto in Power Automate con PDF4me Genera documenti (multipli), Unire più file PDF, Dropboxe un singolo comando Applica a ciascun ciclo. Sette azioni di flusso. Un modello DOCX. Un array JSON di destinatari. Dall'altra parte esce un PDF consolidato, una pagina per destinatario, denominato e caricato automaticamente su Dropbox.
Due passaggi di Dropbox definiscono il flusso. La funzione Genera documenti (multipli) di PDF4me produce un PDF personalizzato per ogni destinatario. Un ciclo Applica a ciascuno racchiude ogni streamFile In base64ToBinary(...) e lo inserisce in una variabile array. La funzione "Unisci più file PDF" di PDF4me unisce l'array in un unico file PDF consolidato. Dropbox Crea file lo riscrive. Il flusso viene eseguito in meno di un minuto su un batch a due destinatari e scala linearmente. Nessuna espressione personalizzata oltre a quella base64ToBinary chiamata.
Domande e risposte basate sul "perché"
Perché generare documenti (multipli) invece di (singolo)? La variante Single prende un record ed emette un PDF. Per produrre N PDF dovresti chiamarla N volte, aggiungendo ogni volta un evento di fatturazione e un round-trip di rete. (Multiple) prende l'intero array JSON in una chiamata e restituisce gli N PDF insieme su corpo/outputDocumentiUna chiamata, un evento di fatturazione, batch completo.
Perché una variabile array più Applica a ciascuno? Genera documenti (multipli) emette ogni PDF come stringa base64 su streamFile. L'unione di più file PDF richiede una raccolta di file binari. Il ciclo Applica a ciascuno collega i due: converte ogni stringa base64 in un file binario con base64ToBinary(...) e inserirlo in una variabile array denominata mergefilesDopo il ciclo, l'array è la collezione che l'azione di unione si aspetta.
Perché utilizzare il formato DOCX come modello anziché il PDF? token di fusione DOCX (<<[Nome]>>, <<[HC_WoM_Date]>>I campi modulo (.docx) sono presenti nel corpo del testo, dove il motore PDF4me li legge direttamente. I modelli PDF richiedono uno schema di campi modulo in anticipo, il che è eccessivo per una lettera. Il formato DOCX è inoltre già esportato da Word, Office 365 e Google Docs, quindi gli autori possono modificare il modello senza uscire dal proprio strumento di scrittura.
Perché unire i file in un unico PDF? La revisione della conformità, le stampe in batch, le tracce di controllo delle firme e l'archiviazione successiva preferiscono tutti un PDF consolidato rispetto a N allegati. Se mai dovessi aver bisogno dei singoli file, invia un Dividi il PDF in base al numero di pagine = 1 azione davanti al passaggio 7 e avrai entrambi i mondi senza ricostruire il resto del flusso.
Cosa riceverai
Ingresso: Un modello DOCX con <<[merge_token]>> segnaposto in /blog data/merge blog template/template.docx, più un array JSON di destinatari incollato nell'azione Genera documenti (multipli). Produzione: Un singolo PDF denominato Merged_files.pdf caricato su /blog data/merge blog template/output, con una pagina personalizzata per ciascun destinatario, nello stesso ordine dell'array JSON. Il modello rimane invariato nella sua cartella sorgente, quindi le esecuzioni successive sono idempotenti.
Di cosa hai bisogno
- Power Automate. Open Power AutomateQualsiasi piano con connettori premium (PDF4me Connect è un piano premium).
- Chiave API di PDF4me. Ottieni la tua chiave APICollegalo la prima volta che aggiungi un'azione PDF4me.
- DropboxOrigine del modello, destinazione del PDF unito. SharePoint, OneDrive e Google Drive funzionano allo stesso modo con i rispettivi connettori.
- Un modello DOCX con token di unione. Utilizzare la sintassi con doppie parentesi angolari (
<<[NomeCampo]>>). La procedura guidata utilizzatemplate.docx, puoi Scarica il modello esatto utilizzato in questa guida. e caricalo su Dropbox per replicare ogni screenshot. - Un array JSON dei destinatariUn oggetto per destinatario, con chiavi che corrispondono esattamente ai token del modello. Scarica il file JSON di esempio.
Scarica prima i file di esempio. Gocciolare Templates.docx in /dati del blog/unisci modello del blog/ Salva il file JSON su Dropbox e conservalo in un blocco note. Ogni valore dello screenshot qui sotto corrisponderà quindi a quello che vedi nel tuo flusso.
Il flusso in sintesi
- Avviare manualmente un flusso (grilletto).
- Dropbox: Ottenere il contenuto del file utilizzando il percorso. Legge
template.docxda Dropbox. - PDF4me: Genera documenti (multipli)Modello più array JSON di destinatari in ingresso, array di PDF personalizzati in uscita.
- Inizializza variabile denominato
mergefiles(Vettore). - Applicare a ciascuno SU
body/outputDocuments, con Aggiungi alla variabile array utilizzandobase64ToBinary(...)dentro. - PDF4me: Unisci più file PDF in un unico file PDF. Array di file binari in ingresso, un file PDF in uscita.
- Dropbox: crea file. Scrive
Merged_files.pdfTorna a Dropbox.
Panoramica completa del flusso

Sette azioni. Ogni scheda mostra un segno di spunta verde quando configurata. PDF4me si trova al centro due volte: una volta per generare, una volta per unire.
Passaggio 0: Il modello DOCX
Prima che venga eseguito qualsiasi flusso, il modello necessita dei token di unione corretti. Ogni <<[FieldName]>> Il segnaposto viene sostituito una sola volta per ciascun destinatario. L'ortografia e le maiuscole/minuscole devono corrispondere esattamente alle chiavi JSON.
Anteprima del modello

Il formato DOCX utilizza la sintassi con doppie parentesi angolari. Nessun carattere speciale, nessun XML, solo segnaposto letterali che il motore PDF4me legge direttamente.
Passaggio 1: Attivare manualmente un flusso
Flusso finora: Solo attivazione.
- In Power Automate clic Creare, scegliere Flusso di nuvole istantaneo.
- Scegliere Avviare manualmente un flusso come elemento scatenante.
- Assegna un nome al flusso (ad esempio
Bulk Invitation Mailout) e clicca Creare. - Per ora, lascia vuoti i campi relativi ai trigger. I trigger di produzione reali (richiesta HTTP, aggiornamento elenco SharePoint, pianificazione) andranno inseriti qui una volta che il resto del flusso funzionerà correttamente.
Passaggio 2: Dropbox: ottenere il contenuto del file utilizzando il percorso
Flusso finora: trigger plus Ottieni il contenuto del file.
Legge il modello DOCX nel flusso come byte grezzi in modo che Genera documenti possa utilizzarlo direttamente.
- Fare clic + Nuovo passo, ricerca Dropbox, scegliere Ottieni il contenuto del file utilizzando il percorso.
- Collegare Se non l'hai già fatto, usa Dropbox.
- Specificare:
- Percorso del file:
/blog data/merge blog template/template.docx - Dedurre il tipo di contenuto:
Yes
- Percorso del file:
- Salva il flusso ed esegui un test rapido. L'azione restituisce un
File Contenttoken contenente il modello binario.
Ottieni la configurazione del contenuto del file

L'opzione "Inferisci tipo di contenuto Sì" fa sì che le azioni successive di PDF4me accettino il file come un vero DOCX, e non come un flusso generico.
Passaggio 3: PDF4me: Genera documenti (multipli)
Flusso finora: Attiva più Ottieni contenuto file più Genera documenti (multipli).
È qui che un file DOCX più un array JSON si trasformano in N PDF personalizzati con una singola chiamata di azione.
- Fare clic + Nuovo passo, ricerca PDF4me, scegliere Genera documenti (multipli).
- Collegare PDF4me Connettiti con la tua chiave API (solo la prima volta).
- Specificare la parte superiore dell'azione:
- Tipo di file modello:
Docx - Tempo di creazione del file modello:
Test.docx(solo etichetta, non percorso) - Dati del file modello: scegli il Contenuto del file token dal passaggio 2
- Tipo di dati del documento:
Json
- Tipo di file modello:
Passaggio 3a: Inizio dell'azione

- Incolla l'array JSON in Testo dei dati del documento. La procedura guidata utilizza due destinatari (John Doe, X AB). Ogni oggetto ha le stesse 19 chiavi, ogni chiave corrisponde a
<<[Token]>>nel modello DOCX.
Passaggio 3b: il payload JSON

[
{
"DebtorNumber": "100001",
"Salutation": "Mr",
"Title": "Dr.",
"FirstName": "John",
"LastName": "Doe",
"CareOfAddress": "c/o Accounting Department",
"Address": "123 Main Street",
"POBox": "PO Box 123",
"PostalCode": "10001",
"City": "New York",
"Country": "United States",
"HC_Name": "ABC Business Association",
"SalutationText": "Dear Dr. Doe",
"HC_Phone": "+1-212-555-0100",
"HC_WoM_RegistrationDeadline": "2026-05-22",
"HC_Street": "500 Park Avenue",
"HC_PostalCodeCity": "10022 New York",
"HC_WoM_Date": "2026-05-29",
"HC_WoM_Time": "10:00"
},
{
"DebtorNumber": "100001",
"Salutation": "Mr",
"Title": "Dr.",
"FirstName": "X",
"LastName": "AB",
"CareOfAddress": "c/o Accounting Department",
"Address": "123 Main Street",
"POBox": "PO Box 123",
"PostalCode": "10001",
"City": "New York",
"Country": "United States",
"HC_Name": "ABC Business Association",
"SalutationText": "Dear Dr. Doe",
"HC_Phone": "+1-212-555-0100",
"HC_WoM_RegistrationDeadline": "2026-05-22",
"HC_Street": "500 Park Avenue",
"HC_PostalCodeCity": "10022 New York",
"HC_WoM_Date": "2026-05-29",
"HC_WoM_Time": "10:00"
}
]
- Specificare metà inferiore:
- Metadati del campo: lasciare vuoto (facoltativo, per formattazione di valuta, data o numero)
- Tipo di output:
PDF - Mantieni il modello PDF modificabile:
No
Passaggio 3c: Tipo di output

- Salva e testaL'azione restituisce
body/outputDocuments, un array di oggetti, uno per destinatario. Ogni oggetto porta unstreamFileproprietà contenente il PDF personalizzato come stringa base64.
Mancia. Le chiavi JSON mancanti vengono visualizzate come stringhe vuote nel PDF di output, non come errori. Questo è un approccio tollerante nei confronti dei dati parziali, ma significa anche che gli errori di battitura non vengono rilevati. Confronta l'elenco dei token con le chiavi JSON prima di pubblicare, poiché entrambe distinguono tra maiuscole e minuscole.
Passaggio 4: Inizializzare i file di unione delle variabili
Flusso finora: Attiva più Ottieni contenuto file più Genera documenti (multipli) più Inizializza variabile.
L'azione di unione richiede una raccolta di file binari. Crea un array vuoto per contenerli.
- Fare clic + Nuovo passo, scegliere Inizializza variabile.
- Specificare:
- Nome:
mergefiles - Tipo:
Array - Valore: lasciare vuoto
- Nome:
Inizializza la configurazione variabile

L'inizializzazione della variabile precede sempre la prima applicazione a ciascun elemento che ne ha bisogno. Power Automate impone questa regola in fase di progettazione.
Passaggio 5: Applica a ciascuno più Aggiungi alla variabile array
Flusso finora: Attiva più Ottieni contenuto file più Genera documenti (multipli) più Inizializza variabile più Applica a ciascuno.
Scorri i file PDF e converti ciascuno di essi in un buffer binario.
Passaggio 5a: Applicare a ciascuno (selezionare la fonte)
- Fare clic + Nuovo passo, scegliere Applicare a ciascuno.
- Specificare:
- Seleziona un output dai passaggi precedenti: scegliere
body/outputDocumentsdall'azione Genera documenti (multipli)
- Seleziona un output dai passaggi precedenti: scegliere

Passaggio 5b: Aggiungere alla variabile array (all'interno del ciclo)
- All'interno di Applica a ciascun contenitore fai clic Aggiungi un'azione, scegliere Aggiungi alla variabile array.
- Specificare:
- Nome:
mergefiles - Valore (espressione, clic)
fx):base64ToBinary(items('Apply_to_each')?['streamFile'])
- Nome:

Questa è la frase che lega tutto insieme. Genera documenti (multipli) emette stringhe base64 su streamFilePer unire più file PDF sono necessari buffer binari. base64ToBinary(...) è il ponte. Senza di esso, l'azione di unione genera un errore con "contenuto non valido".
Passaggio 6: PDF4me: Unire più file PDF in un unico file PDF
Flusso finora: Attiva più Ottieni contenuto file più Genera documenti (multipli) più Inizializza variabile più Applica a ciascuno più Unisci più PDF.
Ora l'intero array viene inserito e ne esce un unico file PDF.
- Sotto "Applica a ogni ciclo" fai clic + Nuovo passo, ricerca PDF4me, scegliere Unire più file PDF in un unico file PDF.
- Specificare:
- Corpo/docContenuto: scegli il
mergefilestoken variabile - Nome del file di output:
Test.pdf
- Corpo/docContenuto: scegli il
Configurazione dell'azione di unione

- L'azione concatena i PDF in ordine dell'array, che è l'ordine JSON. Se il tuo client a valle si aspetta un ordinamento specifico (alfabetico, per numero di debitore, per regione), ordina il JSON prima del passaggio 3 e il resto del flusso manterrà quell'ordine.
Mancia. Hai bisogno di un nome file di output diverso per ogni esecuzione? Crealo dinamicamente con concat('Inviti_', utcNow('yyyy-MM-dd'), '.pdf') nel campo Nome file di output. Il PDF unito viene generato con un timestamp e le successive esecuzioni non si sovrascrivono a vicenda.
Passaggio 7: Dropbox: crea file
Flusso finora: Attiva più Ottieni contenuto file più Genera documenti (multipli) più Inizializza variabile più Applica a ciascuno più Unisci più PDF più Crea file.
Riporta il PDF unito su Dropbox.
- Fare clic + Nuovo passo, scegliere Dropbox, Crea file.
- Specificare:
- Percorso cartella:
/blog data/merge blog template/output - Nome del file:
Merged_files.pdf - Contenuto del file: scegli il Contenuto del file token dal passaggio 6 (Unione di più PDF)
- Percorso cartella:
- Salva il flusso.
Creazione della configurazione del file

Esegui il flusso e verifica
- Fare clic Test in alto a destra, scegli Manualmente, clicca Test, Poi Esecuzione del flusso.
- Il pannello di esecuzione del flusso diventa verde azione dopo azione. La generazione di documenti (multipli) richiede in genere un secondo per record su un modello a pagina singola. L'unione di più PDF aggiunge un secondo o due per due destinatari.
- Apri Dropbox all'indirizzo
/blog data/merge blog template/output/Il fileMerged_files.pdfè lì.
L'output, affiancato


Che cosa hai costruito esattamente? Un sistema di invio massivo automatico che trasforma una singola lettera in formato DOCX e un elenco di destinatari in formato JSON in un unico PDF consolidato, pronto per la stampa, la firma, l'archiviazione o l'allegato. Lo stesso schema funziona con due o duemila destinatari senza modificare alcun valore di campo. Lo stesso schema funziona con Make (Iterator più il modulo PDF4me Merge) e Zapier (Looping di Zapier più l'azione PDF4me Merge).
Varianti comuni che puoi aggiungere senza dover ricostruire
File_uniti.pdf e la spedizione va direttamente al reparto finanziario, operativo o di stampa senza passare per Dropbox.PDF/A-2bLa copia su Dropbox è quindi pronta per l'archiviazione e conforme allo standard ISO 19005.Risoluzione dei problemi
IL Valore l'espressione in Aggiungi all'array non è racchiusa in base64ToBinary(...)Senza la conversione, l'azione di unione riceve stringhe base64 invece di buffer binari. Riapri Aggiungi all'array, passa all'editor di espressioni e incolla. base64ToBinary(items('Apply_to_each')?['streamFile']) parola per parola.
Una chiave JSON non corrisponde a un token del modello. Genera documenti (multipli) sostituisce le chiavi mancanti con stringhe vuote, il che è tollerante ma lascia che gli errori di battitura falliscano silenziosamente. Confronta l'elenco dei token DOCX con le chiavi JSON, entrambe distinguono tra maiuscole e minuscole.
L'opzione Applica a ogni ciclo sta iterando sulla sorgente sbagliata. Apri il ciclo, conferma Seleziona un output dai passaggi precedenti punti a corpo/outputDocumenti (l'array), non una singola proprietà di un record.
L'ordine delle pagine corrisponde all'ordine JSON. Ordina l'array JSON prima di generare documenti (multipli) utilizzando un Selezionare O Comporre agire in modo che i destinatari arrivino nell'ordine desiderato.
Prossimi passi
Lo stesso schema in sette fasi (attivazione, recupero del modello, generazione del batch, ciclo su array, unione e salvataggio) funziona per qualsiasi invio massivo di email personalizzate in Power Automate. Inviane una e le successive non costano quasi nulla.