SignSealer
Signatures, and the evidence behind them. One API for waivers, rental agreements, NDAs and contracts.
What makes an electronic signature enforceable under ESIGN and UETA is evidence of five things. Cryptography is how that evidence is kept tamper-evident, and SignSealer uses it throughout; it is the record it protects that a court reads.
- Intent — the signer meant this act to be their signature.
- Consent — they agreed to do business electronically, before signing.
- Association — the signature is attached to this record and no other.
- Attribution — it can be shown to be them.
- Retention — the record can be accurately reproduced later.
Courts have thrown signatures out for missing the fourth. So SignSealer records each of the five as its own event, hashes the exact text into every one, chains the trail so nothing can be edited afterwards, and seals the finished document so that a single changed byte shows, with the time of sealing fixed by an independent RFC 3161 timestamp authority.
What that means in practice
- Consent is recorded as its own event, before the signature is accepted — not alongside it, because a system that records both in the same instant cannot show that consent came first.
- The rendered text is stored on the document and hashed into every event. A document edited after signing no longer matches, and we say so.
- A published template cannot be edited. Revising it makes a new version, because editing one changes what people signed last week.
- The trail is append-only. A record that can be edited is a record of what somebody was willing to leave behind.
Where to start
How it fits together
your application ──── POST /v1/documents ──────▶ SignSealer API
▲ │
│ mints one link per signer
│ │
│ email · text · QR · kiosk · your own message
│ │
│ ▼
│ the signer
│ reads · consents · answers · signs
│ │
│ ▼
│ append-only trail + certificate + sealed PDF
│ │
└──────── signed webhook: signing.completed ─────┘
Every arrow is in the reference. The signer's page is ours and loads no script; what your application sees is JSON in and a signed event out.
Recipes, by outcome
- Send a signing request — template, publish, prepare, send.
- Put a waiver behind a QR code or a link on your site — a public workflow.
- Take waivers on a tablet at the counter — the kiosk.
- Get every guest on a booking to sign before check-in — a packet with a ready state.
- Handle a minor and a guardian — roles in a packet, the guardian judged on the day.
- Download the evidence after signing — the package and the sealed PDF.
- Verify a certificate — without an account, from the code and the document.
- Hear when a document completes — and verify the event's signature.
Ready to build? An API key takes a minute in the portal, and the free plan covers the first 25 agreements a month.
Get an API key