Terms of Service Acceptance
Collect timestamped, tamper-proof proof that every user accepted your Terms of Service, and automatically prompt re-consent whenever your terms change.
Screenshot: ToS acceptance modal on a sign-up screen with checkbox and "I Accept" button
Before You Begin
- You have a Propper account and at least one organization set up.
- Your Terms of Service document is ready to paste or upload.
Step 1: Create a Template
- Go to Click → Templates → New Template.
- Set the type to Static — best for ToS content that is the same for all users.
- Give it a name (e.g., Terms of Service, v1) and click Save. The template is created in Draft status.
Screenshot: New Template dialog with "Static" selected and name field filled
Need to personalize the ToS per user (e.g., inject a company name)? Use the Generated type and define template variables instead.
Step 2: Add Your Content
- Open the template and go to the Content tab.
- Paste your ToS text. HTML formatting is supported.
- In Acknowledgment, set the checkbox label (e.g., "I have read and agree to the Terms of Service").
- Enable Require Checkbox and optionally Require Scroll to Bottom to strengthen the evidence of informed consent.
Step 3: Publish
The template must be Published before it can be deployed. Click Publish in the top toolbar. You cannot deploy a Draft template.
To update your terms later, do not edit the published content. The New Version workflow and Re-consent on Update feature are currently in development. In the meantime, clone the template, update the content, and republish. See Version Management.
Step 4: Deploy
-
Go to Deployments → New Deployment.
-
Select your published template.
-
Enter your domain and path (e.g.,
app.yourcompany.com//register).noteOnly one active deployment is allowed per domain/path combination. Activating a new deployment on the same path automatically deactivates the previous one.
-
Set the environment to Staging to test, then Production when ready.
-
Click Activate.
Screenshot: Deployment configuration screen showing domain, path, and environment fields
Step 5: Install the SDK
Add the Click SDK to your sign-up page. The ToS agreement renders automatically based on the deployment configuration.
const sdk = ProperClick.init({
apiKey: 'your-api-key',
environment: 'production'
});
await sdk.renderByDomain('app.yourcompany.com', '/register', {
containerId: 'tos-container',
onAccept: (response) => console.log('Accepted:', response.receiptId)
});
Choose your rendering mode — inline, modal, or popup — in the template's Deployment Config settings.
See the full SDK installation guide for npm and CDN setup options.
Evidence & Compliance
Every acceptance automatically creates an immutable Evidence Bundle containing:
- The user's identifier, IP address, and browser details
- The exact version of the agreement that was presented
- A tamper-evident record of what was displayed
- Whether the user accepted, declined, or let the session expire
Evidence is retained for 7 years (2,555 days) by default, configurable per-template in Data Retention.
Viewing and exporting evidence records →