FreeSign

Guides

Step-by-step guides

Concrete walkthroughs for the two most common FreeSign tasks: signing a confidential document locally, and verifying a signed PDF without trusting FreeSign.

Sign a PDF without uploading it

The general 5-step walkthrough: sign any PDF — contract, offer, invoice, consent form — entirely in your browser. The document is hashed locally and never uploaded; the proof is independently timestamped.

Open the guide →

Sign an NDA without uploading the PDF

A 5-step guide to signing a non-disclosure agreement entirely in your browser. The signature provider never sees the PDF; the proof is independently timestamped with OpenTimestamps.

Open the guide →

Verify a signed PDF with openssl, pyHanko, and OpenTimestamps

Vendor-independent verification of a PAdES-B-T signed PDF. Eight steps, all open-source tools. Works on any PAdES-B-T PDF, not just FreeSign's.

Open the guide →

FreeSign Adobe Trust Setup

A 30-second local Adobe Reader or Acrobat setup for repeat recipients. Import the FreeSign CA once on your device so Adobe can build the chain for FreeSign PDFs.

Open the guide →

Evidence JSON schema reference

A field-by-field reference for the evidence record embedded inside every signed PDF. What each field proves, plus a machine-readable JSON Schema and a worked example.

Open the reference →

Automate FreeSign from the command line

Headless examples with curl and shell tools: hash a PDF locally, look up envelopes, drive the document-free MCP endpoint, pull receipts, and verify OpenTimestamps proofs.

Open the guide →

Embed signing on your site

Run the FreeSign ceremony inside an iframe on your own page with freesign-embed.js. The PDF moves parent ↔ iframe via postMessage; the server still never receives document bytes.

Open the guide →

Want to try one signature first?

Sign a test PDF in your browser. No account, no card, full ceremony in under a minute.

Sign a PDF now →