mothermachine

Browse / SMB ops and CRM

Documenso

Open-source e-signature with a documented v2 API for documents, templates, recipients and webhooks.

AdaptableOperable Business appWeb app Deterministic TypeScript API License: AGPL-3.0

Send documents for signature, build templates, place fields and get webhooks, self-hosted under AGPL or on the Builder's cloud. The public API v2 is the agent interface; it is included in self-hosting but only on paid cloud plans. Documents and templates are being folded into envelopes, so watch the migration guide.

Use it when
  • I want contracts signed from our own server and our agent to create and send them from a template
  • I am paying per envelope elsewhere and want a flat self-hosted signing tool
Gotchas
  • Cloud Free plan has no API access; API starts at Individual and is 'personal use only' there
  • Documents and templates endpoints are being replaced by envelopes; build against the migration guide
  • The Builder no longer accepts external pull requests
  • AGPL: a modified hosted copy must publish source

Last activity Sep 2, 2026. Fit: adaptable 2, operable 3.

Editions

Self-hosted · Free open source

  • Clonegit clone https://github.com/documenso/documenso
  • ImageContainer
  • DeployDeploy

Cloud Free · Free closed source

closed source

closed source

closed source

For agents: JSON · Markdown

Adaptable: what is yours to change

Make it yours

Config only21 things to edit

cp .env.example .env and set the NEXT_PRIVATE_* values: database, encryption keys, SMTP or Resend, and an S3 bucket for uploads. Signing certificate is a local .p12 (NEXT_PRIVATE_SIGNING_LOCAL_FILE_PATH) or Google Cloud HSM; OIDC, Google and Microsoft sign-in are env-driven; NEXT_PUBLIC_DISABLE_* flags lock down sign-up. Branding and templates are set in-product.

Env vars
NEXT_PUBLIC_WEBAPP_URL NEXTAUTH_SECRET NEXT_PRIVATE_DATABASE_URL NEXT_PRIVATE_ENCRYPTION_KEY NEXT_PRIVATE_ENCRYPTION_SECONDARY_KEY NEXT_PRIVATE_SMTP_TRANSPORT NEXT_PRIVATE_SMTP_HOST NEXT_PRIVATE_SMTP_FROM_ADDRESS NEXT_PRIVATE_RESEND_API_KEY NEXT_PRIVATE_UPLOAD_BUCKET NEXT_PRIVATE_UPLOAD_ENDPOINT NEXT_PRIVATE_SIGNING_TRANSPORT NEXT_PRIVATE_SIGNING_LOCAL_FILE_PATH NEXT_PRIVATE_SIGNING_PASSPHRASE NEXT_PRIVATE_OIDC_WELL_KNOWN NEXT_PRIVATE_OIDC_CLIENT_ID NEXT_PRIVATE_ALLOWED_SIGNUP_DOMAINS NEXT_PUBLIC_DISABLE_SIGNUP NEXT_PRIVATE_DOCUMENSO_LICENSE_KEY
Config files
.env.example docker/compose.yml
Prompt files
none
Accounts you need
SMTP or ResendS3-compatible storagesigning certificate (self-generated or Google Cloud HSM)

Source

Operable: what an agent can drive

Interface

OfficialAPIpublished by the builderremote or local

How an agent can drive an Operable Listing, in five levels: native (built for the agent as the primary interface), official (the Builder ships an agent interface), wrapped (a third party wraps the software's API), config (an agent can only drive it by editing files), gui (screen control only). An interface is official only when it is published by the same organization that ships the software. GUI-level Listings are allowed and sorted last.

Docs
docs.documenso.com/developers/public-api

Reach

Partial coverage. 5 of 8 jobs reachable through the stated interface.

JobThrough the interfaceEvidence
Create a document and send it for signingReachableAPI v2 Documents: create, retrieve, update, delete; recipients and fields endpoints
Build and reuse templatesReachableAPI v2 Templates group
Add recipients and place signature fieldsReachableAPI v2 Recipients and Fields groups
Get notified when a document is viewed or completedReachableWebhooks documented on the public API page
Manage team membersReachableAPI v2 Teams group
Sign on a recipient's behalfNot reachableSigning is the recipient's act through the signing link or embedded signing; no API call signs for a person
Embed signing in your own appNot reachableEmbedding is a front-end SDK, not an API operation
Download the signed PDF and audit certificateUndeterminedNot confirmed on the API overview page; check openapi.documenso.com

Code stack

Languages
TypeScript
Frameworks
React Router v7HonoPrismatRPCTailwind CSSreact-email
Package manager
npm
Database
PostgreSQLRedis (optional)
Hosting target
DockerRailwayKubernetes
Built
Human-written (recorded, never ranked)

Skills

Repo carries contributor-facing development skills (browser automation, documentation, envelope editor E2E) for working on the app. [contributor tooling, not adopter-facing]

Kind
contributor
Paths
.agents/skills/*/SKILL.md

Evidence and confidence

FieldWhere it was seenConfidence
formFactorREADME Tech Stack: React Router v7 app with Hono server, Docker images95%
executionModelNo runtime model; GOOGLE_VERTEX_* keys present but undocumented in README70%
operabilitydocs.documenso.com/developers/public-api: v2 API, api_ key in Authorization header95%
effortREADME: cp .env.example .env with handpicked defaults; 100+ named NEXT_PRIVATE_* vars90%
editionsdocumenso.com/pricing fetched 2026-09-02: Free, Individual 25, Teams 40, Platform 250 USD/month90%
activeGitHub pushedAt 2026-09-03–
reach80%

Open questions

  • What are the GOOGLE_VERTEX_* env vars for?
  • Does the API expose signed PDF and audit log download?
  • Is there a paid self-hosted license and what does NEXT_PRIVATE_DOCUMENSO_LICENSE_KEY unlock?

Sources