Sales contracts: rendered, signed, archived
HTML templates with customer-data merge. PAdES tamper-evident signatures. PDF/A-3 long-term archive. From quote-to-close in one API.
- Hosted in Frankfurt & Paris
- GDPR-compliant
Why automate contracts with pdf.xhub?
Reuse your existing HTML templates
Bring the contract templates your legal team already approved. Merge customer-specific data via Handlebars. No DSL or vendor template engine.
PAdES signatures = tamper-evident archive
Optional digital signatures bind every signed contract to its content. Long-term verifiable, court-admissible in EU jurisdictions.
PDF/A-3 = legal archive standard
Archived contracts pass legal-hold and tax-authority audits. ISO 19005-3 compliant, embed-able for hybrid PDF + structured-data archives.
How contract generation works
1. POST template + customer data
Reference your saved HTML template by ID. Pass JSON with customer fields, deal terms, signing party details.
2. We render + optionally sign
Render the merged HTML to PDF/A-3. Add PAdES signature with your account's signing certificate (or DocuSign / Yousign integration).
3. Receive immutable archive PDF
Get the signed PDF back inline. Archive in your S3 or pipe to a legal-hold system. Verifiable for years.
Built for sales-ops, legal, and revenue teams
Whether you're closing 50 deals a month or 5,000, the same endpoint serves both. Pair with PDF Form Filling for fixed legal templates, or HTML-to-PDF for branded modern contracts.
Try it in your stack
Same endpoint. Copy as cURL, call from any language.
POST template ID + deal data, receive a PAdES-signed PDF/A-3 contract.
curl -X POST https://api.pdf.xhub.io/v1/render \
-H "Authorization: Bearer $PDFXHUB_KEY" \
-H "Content-Type: application/json" \
-d '{
"source": "html",
"templateId": "tpl_contract_v2",
"data": { "customer": "Acme GmbH", "amount": "50000" },
"sign": "pades-lt",
"archive": "pdf-a3"
}' --output contract.pdfcurl -X POST https://api.pdf.xhub.io/v1/render \
-H "Authorization: Bearer $PDFXHUB_KEY" \
-H "Content-Type: application/json" \
-d '{
"source": "html",
"templateId": "tpl_contract_v2",
"data": { "customer": "Acme GmbH", "amount": "50000" },
"sign": "pades-lt",
"archive": "pdf-a3"
}' --output contract.pdfFeatures at a glance
Template & Merge
- HTML5 + CSS3 with Handlebars binding
- Conditional logic (show/hide clauses)
- Customer logo + brand color injection
- Multi-language contracts (DE, FR, EN, IT, ES)
- Custom headers, footers, signature blocks
Signing & Archive
- PAdES digital signatures (PAdES-B, PAdES-T, PAdES-LT)
- PDF/A-3 archive mode for long-term retention
- Optional Encryption with user/owner password
- DocuSign / Yousign / Skribble integration hooks
- Audit trail in metadata (renderer version, hash, timestamp)
Platform
- EU hosting + Schrems II compliance
- Conditional clause logic via Handlebars
- DocuSign / Yousign / Skribble integration hooks
- Optional encryption with user/owner password
- API-key scoping per legal-entity workspace
- Audit-trail webhook on every render + signature
Powered by these APIs
The product endpoints behind this solution.
Related solutions
Same API, different workflows.
Close your first signed contract
25 docs/month free forever. PAdES + PDF/A-3 included.