Skip to content
eSignature ESIGN & eIDAS compliant

eSignature PDF API

Embed legally-binding electronic signatures directly into your SaaS product. Sign contracts, onboarding documents, and agreements programmatically. ESIGN and eIDAS compliant with full audit trails. Skip DocuSign and own your signing workflow. Combine with our PDF protection API for secure, signed documents.

No credit card required • Free tier available

8,700+ teams use xspdf
Median latency: 520ms
99.95% uptime SLA

eSignature API Example

REST API
curl -X POST "https://api.xspdf.com/v1/esign" \
  -H "Authorization: Bearer $API_KEY" \
  -d '{"input_url":"https://files.example.com/contract.pdf","signers":[{"name":"Jane Smith","email":"jane@company.com","fields":[{"type":"signature","page":2,"x":100,"y":300}]}],"options":{"send_email":true,"expiry_days":7}}'

Speed

520ms

Success

99.95%

Options

20+

8,700+

Active Teams

520ms

Median Latency

99.95%

Success Rate

2.4M+

Signatures Collected

DocuSign Integration Is Expensive and Limiting

You need electronic signatures in your product, but third-party tools cost thousands per month, create UX friction, and don't give you control over the signing experience.

Third-Party Tools Are Too Expensive

DocuSign charges $40/user/month minimum. For 50 employees that's $24,000 annually. API access costs thousands more. You're paying for features you don't need and limits that throttle your growth.

Broken User Experience

Users leave your app to sign documents on DocuSign's domain. You lose branding, control, and conversion. Email workflows create confusion. Embedded signing costs extra and requires complex OAuth integration.

No Ownership or Customization

You can't customize the signing flow. Your data lives in their system. Rate limits block your growth. You're building on someone else's platform with no control over features, pricing, or compliance.

The Hidden Cost of Third-Party eSignature Tools

A 50-person team on DocuSign Business Pro costs $40/user/month = $24,000/year. Add API access ($3,000/year), embedded signing ($5,000/year), and developer time for OAuth integration (80 hours = $12,000). Total annual cost: $44,000+. Plus you don't own the customer relationship.

xspdf eSignature API: $299/month unlimited signatures. Own your workflow, own your brand, own your data. ROI in month one.

Embed Signing Directly Into Your Product

Create signing requests programmatically. Send signature links via your own email. Embed signing UI in your app with an iframe. Full branding, full control, full compliance.

1

Multi-Signer Workflows

Define multiple signers with specific fields. Sequential or parallel signing. Auto-reminders and expiration dates. Each signer gets a unique secure link. Full audit trail of who signed when.

2

Legal Compliance Built-In

ESIGN Act and eIDAS compliant out of the box. Tamper-evident seals on signed documents. Audit logs with IP addresses, timestamps, and signer authentication. Court-admissible signatures.

3

White-Label Signing Experience

Embed signing UI with iframe or redirect to a hosted page with your branding. Custom email templates with your logo. No xspdf branding visible to signers. Full control over the user experience.

Python SDK Example

pip install xspdf
response = requests.post(
    "https://api.xspdf.com/v1/esign",
    headers={"Authorization": f"Bearer {API_KEY}"},
    json={
        "input_url": "https://files.example.com/contract.pdf",
        "signers": [
            {"name": "Jane Smith", "email": "jane@company.com", "fields": [{"type": "signature", "page": 2, "x": 100, "y": 300}]}
        ],
        "options": {"send_email": True, "expiry_days": 7}
    }
)
signing_url = response.json()["signing_url"]

Response in 520ms

{
  "signing_url": "https://sign.xspdf.com/s/abc123",
  "request_id": "req_xyz789",
  "signers": [{"email": "jane@company.com", "status": "pending"}]
}
View API Documentation

Enterprise-Grade eSignature Features

Everything you need to collect legally-binding signatures programmatically.

Multi-Signer Support

Define unlimited signers per document. Sequential signing (signer 2 after signer 1) or parallel signing (all at once). Each signer gets unique fields and secure access.

Legal Compliance

ESIGN Act and eIDAS regulation compliant. Tamper-evident digital seals. Complete audit trails. Court-admissible signatures with cryptographic verification.

Custom Field Types

Signature fields, initial fields, date signed, text input, checkboxes. Position fields precisely with X/Y coordinates. Define required vs optional fields per signer.

Email Notifications

Auto-send signature requests via email. Custom email templates with your branding. Reminder emails for pending signatures. Completion notifications with signed PDF attached.

Expiration & Reminders

Set expiration dates for signature requests. Auto-reminders after X days. Webhook notifications when documents expire. Resend signing links programmatically.

Audit Trail

Full audit logs with timestamps, IP addresses, and signer actions. Download audit certificate PDF. Webhook events for every signing action. Compliance-ready documentation.

Frequently Asked Questions

Everything you need to know about eSignature APIs.

Are signatures legally binding and compliant?

Yes. xspdf eSignature is compliant with ESIGN Act (US), UETA (US), and eIDAS (EU). Every signature includes a tamper-evident seal, complete audit trail with IP addresses and timestamps, and cryptographic verification. Signatures are court-admissible and legally binding in all jurisdictions.

Can I embed the signing experience in my app?

Yes. Embed the signing UI with an iframe using the signing_url returned from the API. Add ?embed=true to hide xspdf branding. Alternatively, redirect users to our hosted signing page with your custom branding (logo, colors, domain). Users never leave your brand experience.

How does sequential vs parallel signing work?

Sequential signing requires signers to complete in order (signer 2 can't sign until signer 1 finishes). Set "signing_order": 1, 2, 3 on each signer object. Parallel signing sends to all signers immediately. They can sign in any order. Use parallel for faster completion, sequential for approval workflows.

What happens when a document is fully signed?

When all signers complete, we send a webhook to your endpoint with the signed PDF URL. Optionally auto-email the signed PDF to all signers. The signed PDF includes tamper-evident seals and a completion certificate. You can download it programmatically via GET /v1/esign/{request_id}/signed-pdf.

Can I use my own email service to send signature requests?

Yes. Set "send_email": false in your API request. The response includes unique signing URLs for each signer. Send those URLs via your own email service (SendGrid, Mailgun, etc) with your custom templates and branding. Full control over the notification experience.

Start Collecting Signatures Today

Free tier includes 25 signature requests per month. No credit card required. Upgrade anytime as you scale.

Related APIs