ConfigsApr 10, 2026·2 min read

Documenso — Open Source Document Signing Platform

Documenso is an open-source DocuSign alternative for self-hosted document signing with PDF e-signatures, audit trails, and Next.js stack.

AI
AI Open Source · Community
Quick Use

Use it first, then decide how deep to go

This block should tell both the user and the agent what to copy, install, and apply first.

git clone https://github.com/documenso/documenso.git
cd documenso
cp .env.example .env
npm ci
npm run dx

Open http://localhost:3000 — sign up and start sending documents for signature.

Intro

Documenso is an open-source alternative to DocuSign, built with Next.js, Prisma, and PostgreSQL. It provides legally-binding digital document signing with PAdES-standard compliance, making it suitable for businesses that need full control over their signing infrastructure.

With 12.6K+ GitHub stars and AGPL-3.0 license, Documenso offers self-hosted deployment, custom branding, API access, and complete audit trails — all without per-signature fees.

What Documenso Does

Documenso handles the entire document signing workflow:

  • PDF Upload & Signing Fields: Upload any PDF, place signature fields, text fields, date fields, and checkboxes
  • Email Invitations: Send signing requests via email with automatic reminders
  • Digital Signatures: PAdES-standard compliant signatures with certificate embedding
  • Audit Trail: Complete signing history with timestamps, IP addresses, and verification
  • Templates: Create reusable document templates for recurring workflows
  • API Access: REST API for programmatic document creation and signing
  • Self-Hosted: Full control over data with Docker or manual deployment
  • Custom Branding: White-label the signing experience with your own domain and logo

Tech Stack

Component Technology
Frontend Next.js 14, React, TypeScript
Database PostgreSQL + Prisma ORM
Auth NextAuth.js
Storage S3-compatible (AWS, MinIO)
Signing PAdES standard, PDF-lib
Deploy Docker, Vercel, Railway

Self-Hosting with Docker

# Clone and configure
git clone https://github.com/documenso/documenso.git
cd documenso

# Set environment variables
cp .env.example .env
# Edit .env with your database URL, SMTP settings, and S3 config

# Run with Docker
docker compose up -d

API Integration

import { DocumentApi } from "@documenso/sdk";

const api = new DocumentApi({ apiKey: "your-api-key" });

// Create and send a document
const doc = await api.createDocument({
  title: "Service Agreement",
  recipients: [
    { email: "client@example.com", name: "Client" }
  ]
});

// Upload PDF
await api.uploadDocument(doc.id, pdfBuffer);

// Add signing fields and send
await api.sendDocument(doc.id);

FAQ

Q: Is Documenso legally binding? A: Yes. Documenso uses PAdES-standard digital signatures with embedded certificates, which are legally recognized in most jurisdictions under eIDAS (EU) and ESIGN Act (US).

Q: How does it compare to DocuSign? A: Documenso provides core signing features (PDF signing, templates, API) without per-signature pricing. You self-host for full data control. DocuSign has more enterprise features like bulk send and advanced workflows.

Q: Can I use my own SMTP server? A: Yes. Configure SMTP in .env to send signing invitations from your own email domain.

Q: What storage backends are supported? A: Any S3-compatible storage — AWS S3, MinIO, Cloudflare R2, DigitalOcean Spaces.

🙏

Source & Thanks

Discussion

Sign in to join the discussion.
No comments yet. Be the first to share your thoughts.

Related Assets