Passa al contenuto principale

Compilare e firmare un PDF quando viene creato un nuovo elemento in SharePoint — Power Automate

22 min read
SEO and Content Writer

Fill a PDF Form è l'azione di Power Automate che accetta un modello PDF compilabile e un payload JSON, poi restituisce lo stesso PDF con ogni campo già compilato. Abbinala a PDF - Sign e a un trigger SharePoint When an item is created, e la generazione delle fatture procede da sola: qualcuno aggiunge una riga, Power Automate assembla il PDF firmato, e Dropbox lo archivia con un nome con marca temporale.

Il collo di bottiglia nei flussi di lavoro tipo fattura non è mai stato il PDF in sé, ma il passaggio manuale incastrato nel mezzo. Qualcuno apre il modello, ridigita otto valori da una riga di foglio di calcolo, lo stampa, lo firma, lo riscansiona e carica il risultato. Ognuno di quei campi è un'altra occasione per scrivere male il nome di un cliente o perdere una cifra del totale. Questa guida sostituisce tutta quella routine con sette azioni di Power Automate: SharePoint solleva il trigger, Dropbox consegna il modello più l'immagine della firma, PDF4me compila il modulo e applica la firma, e Dropbox salva il file finito. Ogni schermata è reale, l'espressione Compose è scritta per esteso, lo schema SharePoint è elencato, e la fattura firmata di esempio è tua da scaricare.

Il flusso in breve
1. When an item is created
Sorveglia l'elenco New Customer Invoices in SharePoint e avvia il flusso nel momento in cui compare una nuova riga.
2. Get file content
Preleva sample_fill_form.pdf da /blog data/fill a pdf/ in Dropbox. Lascia Infer Content Type su Yes così il binario sopravvive.
3. Get file content 1
Afferra signature.png dalla stessa cartella di Dropbox, di nuovo con Infer Content Type impostato su Yes.
4. Compose
Assembla un unico payload JSON a partire dalla riga di SharePoint: customerName, email, phone, invoiceNumber, invoiceDate, address, amount.
5. Fill a PDF Form
Passaggio PDF4me. Invia il binario PDF a Template File Data, il risultato di Compose a JSON Data, e imposta Keep PDF template Editable su No.
6. PDF - Sign
Passaggio PDF4me. Posa signature.png in basso a destra a pagina 1, 50 di larghezza per 20 di altezza, margine 15, opacità piena 100.
7. Create file
Scrive su Dropbox /blog data/fill a pdf/output con un File Name costruito da concat(Signed_, invoiceNumber, _, ticks(utcNow()), .pdf).
Versione breve

Un trigger di elenco SharePoint scatta a ogni nuova riga di fattura. Dropbox fornisce il modello PDF compilabile e una firma PNG. Compose trasforma la riga in un payload JSON. PDF4me Fill a PDF Form scrive quei dati nel modello, PDF4me PDF - Sign aggiunge la firma, e Dropbox archivia il risultato con un nome di file che porta sia una marca temporale sia il numero della fattura.

Perché ogni passaggio è qui, di proposito​

Perché SharePoint come trigger?
Quasi ogni team di vendite, operazioni e finanza registra già righe di clienti o fatture in un elenco SharePoint. Appoggiarsi a When an item is created lascia che tutti proseguano esattamente come oggi, basta aggiungere una riga.
Perché Compose nel mezzo?
PDF4me vuole un unico payload JSON. Compose ti permette di incollare uno scheletro JSON e di inserirvi i campi del trigger come contenuto dinamico, così non devi mai far passare la gestione del JSON attraverso ogni azione a valle.
Perché Fill a PDF Form e non Convert?
Il modello porta già campi modulo denominati. Fill a PDF Form scrive in quei campi per nome e lascia il tuo layout e il design intatti, mentre Convert appiattirebbe il file e lo ricostruirebbe da zero.
Perché PDF - Sign nello stesso flusso?
L'alternativa, un passaggio DocuSign o Adobe Sign separato, richiede comunque che una persona clicchi. Per fatture interne a basso rischio, una firma apposta fa il lavoro e mantiene l'intero flusso libero da mani umane.

Cosa otterrai alla fine​

Un unico flusso Power Automate che tiene d'occhio un elenco SharePoint e, per ogni riga che arriva, sforna una fattura PDF compilata e firmata di nome Signed_INV-YYYY-NNN_<ticks>.pdf nella tua cartella di output Dropbox. La firma si posiziona nell'angolo in basso a destra di pagina 1, e tutto il resto nel modello resta esattamente come l'ha impostato il tuo designer.


Cosa ti servirà per prima cosa​

  • Un sito SharePoint che ospiti un elenco chiamato New Customer Invoices (rinominalo come preferisci) con queste colonne:
    • Title, CustomerName, Email, Phone (tutte Single line of text)
    • InvoiceNumber (Single line of text, ad es. INV-2026-207)
    • InvoiceDate (Date), Address (Single line of text), Amount (Number)
  • Un modello PDF i cui campi modulo denominati corrispondano alle chiavi JSON (customerName, email, phone, invoiceNumber, invoiceDate, address, amount).
  • Una firma PNG su sfondo trasparente.
  • Una connessione PDF4me dentro Power Automate. Primo flusso? Procurati una chiave API per configurarla.
  • Una connessione Dropbox in Power Automate — SharePoint, OneDrive o qualsiasi altro archivio si inserisce con la stessa pulizia.
PDF firmato di esempio in output
Scarica la fattura realmente firmata che questo flusso ha generato per la riga INV-2026-207 (Mark Jagar).
↓ signed-invoice-sample.pdf

Le sette azioni, dall'inizio alla fine​

Sette azioni di Power Automate in linea retta — nessun ramo parallelo, nessun Apply to each, nessuna variabile. Ciò che un passaggio produce alimenta direttamente il successivo.

Panoramica del flusso Power Automate che mostra sette azioni sequenziali: SharePoint When an item is created, Dropbox Get file content, Dropbox Get file content 1, Compose, PDF4me Fill a PDF Form, PDF4me PDF - Sign e Dropbox Create file, ciascuna con un segno di spunta verde e la durata di esecuzione
La vista completa del designer: dal trigger a Create file, sette azioni in tutto.

L'elenco SharePoint è il contratto qui. Ogni riga che arriva diventa esattamente un PDF firmato.

Elenco SharePoint chiamato New Customer Invoices con otto righe. La riga di Mark Jagar è selezionata e mostra CustomerName Mark Jagar, Email markjagar at email.com, Phone plus1 567 736 8923, InvoiceNumber INV-2026-207, InvoiceDate 28.08.2026, Address Park street, Amount 20458
L'elenco New Customer Invoices. La riga INV-2026-207 (Mark Jagar) è quella dietro l'esempio qui sopra.

Come avviare il flusso quando compare una nuova riga di SharePoint?​

Flusso finora: solo il trigger.

  1. Crea un nuovo Automated cloud flow, cerca SharePoint e scegli When an item is created.
  2. Punta Site Address al tuo sito SharePoint (la schermata usa PDF4me Support su https://ynoox1.sharepoint.com/sites/PDF4meSupport).
  3. Imposta List Name su New Customer Invoices.
  4. Lascia Advanced parameters come sono. Il trigger scatta nell'istante in cui una riga atterra, senza intervallo di polling da regolare.
Trigger Power Automate When an item is created con Site Address puntato al sito SharePoint PDF4me Support e List Name impostato su New Customer Invoices
Sito più elenco è tutta la configurazione del trigger — SharePoint si occupa del rilevamento delle modifiche.

Suggerimento. Dove puoi, rinomina le colonne di SharePoint per farle corrispondere ai nomi dei campi del PDF (customerName, email, ...). Ti risparmia di rietichettare le chiavi nel passaggio Compose più avanti.


Come inserire il modello PDF e la firma nel flusso?​

Flusso finora: trigger → Get file content → Get file content 1.

Due letture di Dropbox: una per il modello PDF, una per la firma PNG. Tenerle nella stessa cartella significa che nessuno dovrà andarle a cercare in seguito.

  1. Aggiungi Dropbox - Get file content using path e imposta File su /blog data/fill a pdf/sample_fill_form.pdf.
  2. Apri Advanced parameters e porta Infer Content Type su Yes, altrimenti il binario del PDF può danneggiarsi in transito.
Azione Dropbox Get file content using path con File impostato su /blog data/fill a pdf/sample_fill_form.pdf e Infer Content Type impostato su Yes
Passaggio 2 — il modello vuoto che Fill a PDF Form sta per compilare.
  1. Trascina un secondo Dropbox - Get file content using path; Power Automate lo rinomina automaticamente Get file content 1.
  2. Imposta File su /blog data/fill a pdf/signature.png.
  3. Porta lo stesso interruttore Infer Content Type su Yes.
Seconda azione Dropbox Get file content 1 con File impostato su /blog data/fill a pdf/signature.png e Infer Content Type impostato su Yes
Passaggio 3 — la firma che PDF - Sign poserà su pagina 1.

Come trasformare la riga di SharePoint in un payload JSON?​

Flusso finora: trigger → ottieni modello → ottieni firma → Compose.

Compose è il passaggio del "costruisci il JSON". Recupera i campi del trigger come contenuto dinamico e li dispone in un unico oggetto JSON che PDF4me Fill a PDF Form può leggere.

  1. Aggiungi un'azione Compose.
  2. Clicca su Inputs, incolla lo scheletro JSON qui sotto e sostituisci ogni valore di destra con la colonna SharePoint corrispondente dal selettore di contenuto dinamico, tenendo ogni pillola tra le virgolette:
{
"customerName": "CustomerName",
"email": "Email",
"phone": "Phone",
"invoiceNumber": "InvoiceNumber",
"invoiceDate": "InvoiceDate",
"address": "Address",
"amount": "Amount"
}
Azione Compose con il campo Inputs che mostra un oggetto JSON i cui sette valori sono pillole di contenuto dinamico dei campi del trigger SharePoint collocate tra le virgolette di ogni chiave
Compose restituisce un unico oggetto JSON. Tieni ogni pillola dentro le sue virgolette così numeri e date arrivano come stringhe, e assicurati che le chiavi corrispondano ai nomi dei campi del PDF alla lettera.

Riferimento del payload:

Chiave JSONOrigine (colonna SharePoint)TipoNote
customerNameCustomerNameTestoPassato così com'è.
emailEmailTestoQualsiasi stringa; qui nulla convalida il formato.
phonePhoneTestoLascialo come testo — non convertirlo in Number, perché interni e trattini contano.
invoiceNumberInvoiceNumberTestoRiutilizzato più avanti anche nel nome del file di output.
invoiceDateInvoiceDateDataCon la pillola tra virgolette, Compose la invia come testo anziché come oggetto Date ISO.
addressAddressTestoUna singola riga.
amountAmountNumeroTra virgolette, quindi il JSON lo trasporta come valore tra virgolette.

Suggerimento. Colloca sempre la pillola di contenuto dinamico tra le due virgolette di ogni valore. Posta al di fuori, una pillola emette un numero o una data nuda, e un numero senza virgolette seguito da una , a metà stringa spezza il payload senza alcun avviso.


Come compilare il modulo PDF a partire dal JSON?​

Flusso finora: trigger → ottieni modello → ottieni firma → Compose → Fill a PDF Form.

Ecco la prima azione PDF4me. Prende il PDF modello più il payload JSON e scrive ogni valore nel campo modulo che ne condivide il nome.

  1. Aggiungi il connettore PDF4me PDF e scegli l'azione Fill a PDF Form.
  2. Template File Data: contenuto dinamico, Get file content → File Content (il binario del PDF modello).
  3. Template File Name: sample_fill_form.pdf (o come si chiama il tuo).
  4. JSON Data: contenuto dinamico, gli Outputs del passaggio Compose.
  5. Keep PDF template Editable: No — questo appiattisce il modulo una volta compilato, così il destinatario non può cancellare i campi.
Azione PDF4me Fill a PDF Form con Template File Data mappato dal Dropbox Body, Template File Name sample_fill_form.pdf, JSON Data mappato dai Compose Outputs, e Keep PDF Template Editable impostato su No
La configurazione di Fill a PDF Form. Con Keep PDF template Editable su No, i campi si appiattiscono in testo statico.

Suggerimento. Vuoi che il destinatario possa ancora modificare certi campi in seguito (aggiungere una nota, ad esempio)? Imposta Keep PDF template Editable su Yes. I tuoi valori compilati restano; cambia solo il blocco del campo.


Come apporre la firma con PDF - Sign?​

Flusso finora: trigger → ottieni modello → ottieni firma → Compose → Fill a PDF Form → PDF - Sign.

PDF - Sign posa la tua firma PNG sul PDF compilato in un punto fisso e con l'opacità che imposti.

  1. Aggiungi il connettore PDF4me PDF, azione PDF - Sign.
  2. PDF File content: contenuto dinamico, Fill a PDF Form → Body (il binario del PDF compilato).
  3. PDF File Name: l'espressione concat(triggerBody()?['InvoiceNumber'], '.pdf'), che produce INV-2026-207.pdf così il numero della fattura compare nei log successivi.
  4. Sign File Content: contenuto dinamico, Get file content 1 → Body (la firma PNG).
  5. Sign Image File Name: signature.png.
  6. Align Horizontal: right. Align Vertical: bottom.
  7. Pages: 1 (solo pagina 1 — usa 1,3 per le pagine 1 e 3, oppure lascia vuoto per firmare ogni pagina).
  8. Height: 20. Width: 50. Margin Horizontal: 15. Margin Vertical: 15. Opacity: 100.
Azione PDF4me PDF - Sign con PDF File content da Fill a PDF Form Body, PDF File Name un'espressione concat, Sign File Content da Get file content 1 Body, Align Horizontal right, Align Vertical bottom, Pages 1, Height 20, Width 50, Margin 15, Opacity 100
La firma si assesta in basso a destra di pagina 1: 50 di larghezza, 20 di altezza, 15 unità di margine, del tutto opaca.

Riferimento di posizionamento:

CampoCosa controllaEsempio
Align HorizontalQuale bordo, da sinistra a destraleft, center, right
Align VerticalFascia alta, mediana o bassatop, center, bottom
PagesQuali pagine vengono timbrate1 (solo la prima), 1,3 (prima e terza), vuoto (ogni pagina)
Height / WidthDimensione del riquadro della firma in unità PDFAdatta il rapporto alla tua signature.png o si stirerà
Margin Horizontal / VerticalDistanza dal bordo allineato15 = 15 unità dal bordo destro quando Align è right
Opacity0 a 100100 è del tutto opaca; scendi a 70 per un effetto filigrana

Come riscrivere il PDF firmato su Dropbox?​

Flusso finora: trigger → ottieni modello → ottieni firma → Compose → Fill a PDF Form → PDF - Sign → Create file.

Il passaggio finale. Il PDF finito atterra in una cartella di output dedicata con un nome di file progettato perché due esecuzioni non possano mai collidere.

  1. Aggiungi Dropbox - Create file.
  2. Folder Path: /blog data/fill a pdf/output.
  3. File Name: l'espressione concat('Signed_', string(triggerBody()?['InvoiceNumber']), '_', string(ticks(utcNow())), '.pdf'), che produce nomi come Signed_INV-2026-207_639235162128009339.pdf.
  4. File Content: contenuto dinamico, PDF - Sign → Body (il binario del PDF firmato).
Azione Dropbox Create file con Folder Path /blog data/fill a pdf/output, File Name costruito da un'espressione concat che combina Signed_, il campo trigger InvoiceNumber, i ticks di utcNow e .pdf, e File Content mappato da PDF - Sign Body
La marca temporale ticks(utcNow()) mantiene i nomi dei file unici anche se due righe scattano nello stesso secondo.

Suggerimento. Scambia Dropbox con SharePoint - Create file o OneDrive - Create file e nient'altro nel flusso si muove. Il binario del PDF è identico; cambia solo l'adattatore di archiviazione.

Eseguilo e controlla il risultato​

Allora, cosa hai appena costruito?
Inserisci una riga in New Customer Invoices (Title Mark - Form, CustomerName Mark Jagar, e così via). Qualche secondo dopo, Signed_INV-2026-207_639235162128009339.pdf compare in Dropbox /blog data/fill a pdf/output. Aprilo e vedrai gli otto campi compilati e la firma in basso a destra di pagina 1 — proprio il file collegato in cima a questo articolo.

Varianti da innestare senza ricostruire​

Inviare anche il PDF firmato via email
Inserisci un Outlook Send an email (V2) dopo Create file e allega PDF - Sign Body così com'è. Il cliente riceve la fattura nello stesso secondo di Dropbox.
Saltare Dropbox, usare SharePoint
Scambia le tre azioni di Dropbox con SharePoint Get file content e SharePoint Create file. Nessuna delle due azioni PDF4me cambia minimamente.
Firmare ogni pagina, non solo la 1
Svuota il campo Pages in PDF - Sign, oppure elencale separate da virgole (1,2,3). La stessa firma si applica a ogni pagina che nomini.
PDF4me vs Nutrient / Encodian / Plumsail
Quei connettori dividono Fill e Sign su flussi separati o fanno pagare per posto utente. PDF4me fa entrambe le cose da un unico connettore premium con una sola chiave API.

Domande frequenti​

Come compilare moduli PDF con Power Automate?​

Metti l'azione PDF4me Fill a PDF Form dopo un passaggio che legge il tuo modello PDF (un Get file content di Dropbox, SharePoint o OneDrive) e un passaggio Compose che costruisce un payload JSON dai campi del tuo trigger. Mappa Template File Data al binario PDF e JSON Data all'output di Compose. Le chiavi JSON devono corrispondere esattamente ai nomi dei campi modulo del modello.

Power Automate può compilare un modulo PDF?​

Sì — con una singola azione di connettore, una volta installato un connettore PDF. Power Automate non può scrivere da solo in un PDF compilabile, ma l'azione PDF4me Fill a PDF Form gestisce l'intera compilazione e appiattimento in un unico passaggio, guidata da un payload JSON che assembli con Compose o direttamente da una riga di SharePoint o Excel.

Come compilare automaticamente i campi di un modulo PDF?​

Attiva sulla tua fonte dati (un elenco SharePoint, una riga di Excel, l'invio di un modulo), costruisci un oggetto JSON le cui chiavi corrispondano ai nomi dei campi del PDF, poi consegna quel JSON e il PDF modello a PDF4me Fill a PDF Form. Restituisce lo stesso PDF con ogni campo denominato compilato. Imposta Keep PDF template Editable su No per bloccare i valori così i destinatari non possono cancellarli.

Come creare un PDF con Power Automate da un elemento di elenco SharePoint?​

Usa When an item is created come trigger, aggiungi un passaggio Get file content per caricare il modello PDF, un passaggio Compose per dare al riga forma di JSON, e PDF4me Fill a PDF Form per unirli. Ottieni un PDF compilato che puoi inviare via email, spingere su SharePoint, OneDrive o Dropbox, oppure indirizzare a un flusso di approvazione. Questo articolo costruisce esattamente questo, con un timbro di firma sopra.

Come firmare automaticamente un PDF in Power Automate?​

Aggiungi PDF4me PDF - Sign dopo qualsiasi passaggio che produce un binario PDF. Mappa PDF File content al PDF compilato, Sign File Content a una firma PNG, poi imposta l'allineamento (right / bottom), la dimensione (Height / Width), i margini e l'opacità. PDF - Sign timbra l'immagine sulle pagine che elenchi; lascia Pages vuoto per firmarle tutte.


Risoluzione dei problemi​

Fill a PDF Form restituisce il modello invariato
Le chiavi JSON non corrispondono ai nomi dei campi del PDF. Apri il modello in Adobe Acrobat, scegli Prepare Form e copia i nomi dei campi esattamente — fanno distinzione tra maiuscole e minuscole.
La firma esce stirata o minuscola
Height e Width sono unità PDF, non pixel. Adatta il rapporto alla tua signature.png così non si distorce; 50 di larghezza per 20 di altezza va bene per la maggior parte delle firme orizzontali.
Compose emette JSON non valido
Una pillola di contenuto dinamico è atterrata fuori dalle sue virgolette, oppure un valore di SharePoint contiene una virgoletta doppia vagante o un a capo. Tieni ogni pillola tra le sue virgolette e ripulisci il testo inserito dall'utente a monte in SharePoint.
Dropbox Create file sovrascrive le esecuzioni precedenti
File Name si è risolto due volte nella stessa stringa. Il suffisso ticks(utcNow()) nel concat è ciò che garantisce l'unicità — toglilo e le esecuzioni collideranno.

Prossimi passi​

Questa è la via più corta e a mani libere da una riga di SharePoint a un PDF firmato e archiviato — e le due azioni PDF4me nel mezzo sono le uniche parti che non puoi ottenere da Microsoft da sola.

Riferimenti​