Core Configuration
Authentication
Secret key used by NextAuth.js for session encryption. Must be a random string.
Encryption
Application key for symmetric encryption and decryption. Must be a random string of at least 32 characters.
Secondary encryption key for key rotation. Must be a random string of at least 32 characters.
URLs
The public URL where your Documenso instance is accessible.
URL used by the web app to request itself (e.g., for local background jobs). Useful in containerized environments.
Server
The port the server will listen on.
Database Configuration
PostgreSQL connection string for the database. Used for connection pooling.
Direct PostgreSQL connection string for migrations and operations that don’t work with connection pools.
When using services like Supabase or connection poolers (PgBouncer), you’ll need separate URLs for pooled and direct connections.
OAuth Providers (Optional)
Google OAuth
Google OAuth client ID. See Setting up OAuth providers.
Google OAuth client secret.
Microsoft OAuth
Microsoft OAuth (Azure AD) client ID. See Setting up OAuth providers.
Microsoft OAuth client secret.
Generic OIDC Provider
OpenID Connect discovery endpoint URL.
OIDC client ID.
OIDC client secret.
Display label for the OIDC provider on the login page.
Set to
"true" to skip SSL certificate verification (not recommended for production).Specifies the prompt parameter for OIDC signin. Set to empty string to omit the prompt parameter.See: OpenID Connect OAuth2 Prompts
Document Signing Configuration
See the Signing Certificate section for detailed configuration.The transport to use for document signing.Options:
local- File-based signing with .p12 certificate (default)gcloud-hsm- Google Cloud KMS signing
Comma-separated list of timestamp authority URLs for PDF signing. Enables Long-Term Validation (LTV) and archival timestamps.
Contact info to embed in PDF signatures. Defaults to the webapp URL.
Set to
"true" to use the legacy adbe.pkcs7.detached subfilter instead of ETSI.CAdES.detached.Storage Configuration
See Storage Configuration for detailed setup.Defines the storage transport to use.Options:
database- Store files in PostgreSQL (default, suitable for small deployments)s3- Store files in S3 or S3-compatible storage
Email Configuration
See Email Configuration for detailed setup.Defines the transport to use for sending emails.Options:
smtp-auth- Standard SMTP with authentication (default)smtp-api- SMTP with API key authentication (e.g., SendGrid)resend- Resend.com APImailchannels- MailChannels API (Cloudflare Workers)
Sender name to use for the from address.
Email address to use as the from address.
Background Jobs
See Background Jobs Configuration for details.The background job provider to use.Options:
local- Built-in job system using PostgreSQL (default, recommended for most deployments)inngest- Inngest.com for enterprise deployments
Feature Flags
Maximum document upload size in megabytes displayed to users.
Set to enable billing features (requires Stripe configuration).
Set to
"true" to disable user signups through the /signup page.Set to
true to use internal webapp URL in browserless requests.Enterprise Features
License key to enable enterprise features for self-hosted instances.
AWS SES access key ID for email domain verification (Enterprise only).
AWS SES secret access key for email domain verification (Enterprise only).
AWS SES region for email domain verification (Enterprise only).
Payment Processing (Stripe)
Stripe API key for payment processing.
Stripe webhook secret for verifying webhook events.
AI Features (Google Vertex AI)
Google Cloud Project ID for Vertex AI integration.
Google Cloud region for Vertex AI.
API key for Google Vertex AI (Gemini). Get your key from the Vertex AI Studio Settings.
Analytics and Telemetry
PostHog API key for analytics and feature flags. Leave blank to disable.
Set to
"true" to disable anonymous telemetry for self-hosted instances.Telemetry helps us understand how Documenso is being used and improve the product. We only collect: app version, installation ID, and node ID. No personal data is collected.Support Integration
API key for Plain.com support integration.
Logging
File path to save logger output. If provided, stdout logging will be disabled.
Testing and Development
Set to
"true" to disable all rate limiting. Only use for E2E tests.Username for E2E test authentication.
Email for E2E test authentication.
Password for E2E test authentication.
Next Steps
Signing Configuration
Configure PDF signing certificates
Storage Setup
Set up S3 or database storage
Email Configuration
Configure email delivery
Background Jobs
Set up background job processing
