Agreements and waivers
Waivers and terms students must accept at checkout, the rich-text body, assigning to courses, how acceptance is recorded, and handling changes to the wording.
Updated · JoinCPR help center
Agreements are waivers or terms that every student must accept before registering for a course. Manage them under Manage → Agreements (admins and staff).
Creating an agreement
Click New Agreement:
| Field | Notes |
|---|---|
| Title | For example "Liability Waiver" |
| Agreement Body | Rich text (bold, italic, links, headings, lists, quotes), up to 100,000 characters |
| Active | Only active agreements appear at checkout |
Every active assigned agreement is mandatory; there is no optional flag.
Assigning to courses
Use Assign to Courses and tick the courses that require it. Agreements attach to courses, not individual classes.
How students accept
On the Agreements step each agreement is a row with Read & Agree. That opens the full text with a single I Agree button; the row then turns green and the button reads Review. Continuing without accepting every agreement shows "You must agree to all agreements to proceed."
For each registration JoinCPR records the agreement, the acceptance time and the student's IP address. In group checkout the lead accepts once ("By agreeing you confirm all students in this group have consented") and every attendee's registration gets the same record.
Staff adding a student from a roster do not collect agreements. If you need the waiver on file, have the student register through the portal.
Where acceptance is visible
View Details on the roster and the student profile show each agreement with a green check and the time accepted. The IP address is stored but not displayed. Acceptances do not appear on receipts, sign-in sheets, exports or emails.
Changing the wording
Acceptance records point at the agreement, not at a copy of its text, so editing the body silently changes what old acceptances refer to.
Tip
When terms change materially, create a new agreement, assign it to the courses and deactivate the old one. Deleting an agreement hides its acceptance records from the detail views; deactivating keeps them.