Client needs to sign an NDA before you touch their staging environment. You open DocuSign, upload the PDF, drag signature boxes, send the link — and pay per envelope while the signed contract sits on a US SaaS server next to ten thousand other law firms' documents. For a Canadian agency sending five contracts a week, the math adds up fast.
DocuSeal is the open-source alternative that actually covers the workflow. ~17k GitHub stars, AGPL-licensed, and a full document signing platform — PDF form builder, multiple signers, automated email invites, eSignature verification, API and webhooks. DocuSign-shaped UX without the per-envelope tax, hosted on your box.
What it actually does
DocuSeal handles the send → fill → sign → store pipeline, not just slapping a signature image on a PDF.
Visual form builder. WYSIWYG editor for PDF templates — signature fields, dates, checkboxes, file uploads, text inputs, and more (12 field types). Build once, reuse for every new client or employee onboarding packet.
Multiple submitters. One document, several signers in order — client first, your director second, whatever the workflow demands. Each person gets their own signing link via SMTP.
Automatic eSignature. Signed PDFs generated with embedded signatures. Built-in verification so you can confirm a document wasn't tampered with after the fact.
Mobile-friendly signing. Signers open a link on their phone, no app install. UI available in multiple languages — useful when clients aren't all English-first.
Integrations. REST API and webhooks for wiring into your CRM, onboarding portal, or n8n flows. Embedded signing components exist for React, Vue, and Angular if you're building a product on top.
Storage flexibility. Files on local disk by default, or S3, Google Cloud Storage, Azure. PostgreSQL or MySQL instead of SQLite when you outgrow the single-container setup.
DocuSeal vs Stirling-PDF
We covered Stirling-PDF — merge, split, OCR, redact, and ad-hoc signature stamping in a PDF workshop.
Different jobs:
- Stirling-PDF — one-off PDF surgery and batch file operations
- DocuSeal — templated signing workflows with audit trail, email delivery, multi-party coordination, and API-driven submission
Use Stirling when someone needs three PDFs merged before lunch. Use DocuSeal when you send the same contractor agreement to fifty people and need to know who signed and when.
Why self-host?
Contracts are crown-jewel data. Names, addresses, compensation terms, IP clauses — that's not content you casually route through a US eSignature vendor's shared infrastructure if your clients care about Canadian data residency.
No per-envelope pricing. DocuSeal Cloud exists with Pro features (SSO, bulk send, SMS verification, white-label). Self-hosted Community Edition covers the core signing workflow without counting envelopes against a subscription tier.
Audit trail you control. Submission history, signed PDFs, and database records live on your PostgreSQL volume — not exported through a vendor's compliance portal when legal asks for three years of NDAs.
PIPEDA conversations get simpler. "Where do signed documents live?" — on our Montreal VPS, encrypted in transit, backups in Canada. Easier answer than parsing DocuSign's regional hosting docs.
What running it takes
Fastest path — single Docker container, SQLite, port 3000:
docker run --name docuseal -p 3000:3000 -v ./docuseal-data:/data docuseal/docuseal
Production: grab the official compose file, set HOST=sign.yourdomain.com for automatic HTTPS via Caddy, switch to PostgreSQL with DATABASE_URL, configure SMTP for signing invitations. Documents and metadata persist in the mounted /data volume — back it up.
License is AGPLv3 with additional terms — read LICENSE and LICENSE_ADDITIONAL_TERMS before embedding DocuSeal in a commercial product or stripping branding. Pro-only features (SSO/SAML, bulk CSV send, SMS identity verification) stay on DocuSeal Cloud unless your plan includes them.
Who it's for (and who should skip it)
Good fit: agencies sending client NDAs and SOWs, HR teams with offer letters and policy acknowledgments, small law and accounting practices, SaaS companies needing embedded signing in their app, anyone tired of per-seat eSignature bills for straightforward PDF workflows.
Maybe skip it: you sign one PDF a year — print and scan is fine. You need enterprise CLM with clause libraries and redlining — DocuSeal is signing, not contract lifecycle management. You won't configure SMTP or TLS — unsigned email invites won't fly; use DocuSeal Cloud or fix your mail setup first.
Hosting it in Canada
DocuSeal is lightweight compared to a media stack — but signed PDFs accumulate and SMTP deliverability matters. We run instances on Canadian Docker hosting with TLS, persistent volumes, and PostgreSQL when SQLite stops being enough.
Tell us your monthly signing volume — we'll size storage and help you wire SMTP so client invites don't land in spam.