The problem
Contracts are emailed as attachments, printed, signed, scanned and saved somewhere different every time. Nobody can tell which version was signed or where it is.
The outcome
One SharePoint library is the single source of truth: status, signed copy and audit report live together, and the signing request goes out within a minute of upload.
Before you start
- A SharePoint document library
Contractswith columnsSigner Email(text),Signer Name(text),Sign Status(choice: Draft, Out for signature, Signed, Declined) andAgreement ID(text). - An Acrobat Sign account with a connection created by a user who is allowed to send agreements.
- A folder
To Signwhere staff upload the final PDF or Word file.
Build it step by step
- Trigger on upload — Use When a file is created (properties only) on the
Contractslibrary and add a trigger condition so it only fires for files in theTo Signfolder.Expression / setting @contains(triggerOutputs()?['body/{Path}'], 'To Sign/') - Get the file — Add Get file content using the file identifier from the trigger. Word files are converted by Acrobat Sign automatically, so no conversion step is needed.
- Upload to Acrobat Sign — Add Upload a document and get a document ID. File name = the trigger's
{FilenameWithExtension}; file content = the output of Get file content. - Create and send the agreement — Add Create an agreement from an uploaded document and send for signature. Agreement name = file name without extension; participant email = the
Signer Emailcolumn; signature type = e-signature. Set a reminder frequency (e.g. every 3 days). - Write status back — Add Update file properties:
Sign Status= Out for signature,Agreement ID= the agreement ID returned by the previous step. - Second flow: when signed — Create a separate flow triggered by Acrobat Sign When an agreement workflow is completed successfully. Look up the SharePoint file with Get files (properties only) filtered on
Agreement ID.Expression / setting AgreementID eq '@{triggerOutputs()?['body/agreement/id']}' - Save signed PDF and audit report — Use the Acrobat Sign actions to get the signed agreement PDF and the audit trail PDF, then Create file for each in a
Signedfolder. UpdateSign Status= Signed and post a Teams message to the contract owner.
Connector action names are shown as they appear in Power Automate at the time of writing; Microsoft and Adobe occasionally rename actions or add new versions.
Error handling
- Add a parallel branch on the send step with Configure run after → has failed that sets
Sign Status= Error and emails the uploader. - If the
Signer Emailcolumn is empty, stop early with a Condition and a Terminate (status Cancelled) so no blank agreement is created. - Store the agreement ID before anything else — it is the only reliable key to match the completion event back to the file.
Licensing
- Acrobat Sign Solutions for business or enterprise (the sender needs a Sign licence; signers do not).
- Power Automate included with Microsoft 365 is enough if the Acrobat Sign connector is classed as standard in your environment — check the connector's tier on its Microsoft Learn page before you build.
Variations
- Use a library template in Acrobat Sign instead of a file upload when the contract layout never changes.
- Add a Power Automate approval before sending, so legal reviews any contract above a value threshold.
- Route to multiple signers in order (customer first, then your director) by adding more participant sets.
Common in: Legal · Banking · GLCs · Manufacturing
FAQ
Can the same flow send Word documents?
Yes. Acrobat Sign converts DOCX to PDF when the agreement is created, so you can upload Word files directly.
Why two flows instead of one?
Signing can take days. A separate flow triggered by the completion event avoids long-running flows that wait and time out (cloud flows have a 30-day maximum run duration).