Collecting Signatures
How customers sign waivers and how to track submission status.
When Customers Sign
Customers can sign waivers at two points:
- During checkout — if the booked activity requires a waiver, the customer is prompted to sign before completing their booking
- At check-in — staff can send a waiver link or have the customer sign on-site
You can also send waiver links proactively using email or SMS templates with the {{waiver_link_booking:<waiver-uuid>}} variable, which generates a signing link pre-linked to the customer's booking.
Signing Process
- The customer opens the waiver (via checkout or a direct link)
- They read the terms and conditions
- They fill in any required fields
- They sign using their finger (mobile) or mouse/trackpad (desktop)
- The signed waiver is stored securely
What Happens at Submission
When a customer submits a signed waiver, the system:
- Captures the submission data including all field values, the signature image, and signer identity
- Records forensic metadata including IP address, user agent (browser), and a browser fingerprint
- Builds an audit trail logging when the document was opened, when each field was interacted with, when consent was checked, and the exact submission timestamp
- Generates a signed PDF of the completed waiver with all field values, signatures, and audit information embedded
- Hashes the document using SHA-256 to create a tamper-evident record (both the submission data and the PDF file itself are hashed)
- Stores the PDF securely in cloud storage with the storage location recorded
- Links to the booking and customer if a booking reference or customer match is found
- Emails a copy to the customer if the "Email Copy to Customer" setting is enabled on the waiver
- Creates or updates a customer profile if "Capture Signer as Customer" is enabled, using the signer's name, email, and phone
Submission Data Recorded
| Field | Description |
|---|---|
| Data Hash | SHA-256 hash of the submitted form data for integrity verification |
| File Hash | SHA-256 hash of the generated PDF file |
| Fingerprint | Browser fingerprint of the signing device |
| IP Address | The signer's IP address at time of signing |
| User Agent | The signer's browser and device information |
| Signer Identity | The name(s) of the person(s) who signed |
| Emails | Email address(es) provided on the waiver |
| Phones | Phone number(s) provided on the waiver |
| Metadata | Additional form metadata (JSON) |
| Metadata Hash | Hash of the metadata for integrity |
| Storage Location | Where the signed PDF is stored |
| Booking | The linked booking (if applicable) |
| Customer | The linked customer profile (if applicable) |
CAPTCHA Protection
The waiver signing page uses Cloudflare Turnstile to prevent automated or fraudulent submissions. Customers must complete the CAPTCHA challenge before submitting their signed waiver.
Tracking Submissions
From the booking detail view, you can see:
- Whether the required waiver has been signed
- When it was signed
- A link to download the signed copy
From Dashboard > Waivers, you can see all submissions with filtering by:
- Date range
- Activity
- Completion status
Each waiver also tracks a submission count and unread count so you can quickly see how many new signatures have come in.
Downloading Signed Waivers
Signed waivers are stored securely and can be downloaded as PDF files:
- From the booking detail
- From the waiver submissions list
- From the customer profile
The PDF includes the complete waiver text, all filled fields, the digital signature image, signer identity information, and a full audit log showing the document timeline (opened, fields filled, consent checked, submitted).
