Comment notre système de décharges fonctionne vraiment
Hachage d'intégrité SHA-256. Gestion structurelle mineurs/tuteurs. Révocation automatique. Pas du blabla marketing. Voici exactement ce qui se passe sous le capot.
Qu'est-ce qu'une décharge dans wakesys ?
Chaque participant dans un parc doit signer une décharge de responsabilité (waiver) avant de pouvoir participer. Le système l'impose à chaque point d'entrée : réservation en ligne, inscription sur site, check-in à la caisse et réclamation de tickets. Une décharge est toujours liée à un parc spécifique et à un utilisateur spécifique. Si un utilisateur visite plusieurs parcs sur la plateforme, il signe une décharge séparée pour chaque parc.
Comment fonctionne le processus de signature de décharge ?
Le processus de signature comporte 6 étapes, déclenché après l'inscription, la réservation ou la réclamation de ticket.
Déclencheur
Après l'inscription, la réservation ou la réclamation de ticket, l'utilisateur est redirigé vers la page de conformité.
Validation
Le système vérifie si l'utilisateur a déjà une décharge valide pour ce parc. Si oui, l'étape de conformité est entièrement ignorée.
Présentation
L'utilisateur voit le texte complet de décharge de responsabilité du parc, un résumé de ses données personnelles, et est invité à fournir son adresse, taper son nom légal complet, dessiner sa signature et confirmer son acceptation.
Soumission
À la soumission, le système capture et stocke toutes les données de la décharge, y compris les hachages cryptographiques.
Génération PDF
Un job en arrière-plan génère une copie PDF de la décharge signée et la stocke avec l'enregistrement de la décharge.
Redirection
L'utilisateur est renvoyé là d'où il venait : confirmation de réservation, inscription ou aperçu de réclamation.
Quelles données chaque décharge capture-t-elle ?
Chaque décharge signée enregistre 16 points de données pour la protection juridique et la traçabilité.
Les décharges wakesys sont-elles infalsifiables ?
Oui. Le système calcule un hash SHA-256 sur une représentation JSON canonicalisée de toutes les données de la décharge : nom, email, téléphone, date de naissance, texte du document, nom de signature, IP, user agent et adresse. Ce hash est stocké sur l'enregistrement de la décharge et imprimé sur le PDF.
Si un champ de l'enregistrement de la décharge était modifié après la signature, le hash ne correspondrait plus. Cela fournit une preuve cryptographique que les données stockées de la décharge n'ont pas été falsifiées depuis le moment de la signature.
L'image de signature a sa propre somme de contrôle SHA-256 séparée, calculée au moment de l'upload. Cela prouve indépendamment que le fichier de signature n'a pas été modifié.
C'est plus solide que l'approche par ID de document de Smartwaiver (un identifiant opaque, pas une preuve cryptographique) et l'approche de chiffrement seul de ROLLER (pas de hash par décharge documenté publiquement).
Comment fonctionne le consentement à signer par voie électronique ?
Une signature dessinée sur un téléphone n'est que la moitié du sujet. L'autre moitié consiste à prouver que le client a bien accepté de signer par voie électronique et savait ce à quoi il renonçait en ne signant pas sur papier. wakesys demande ce consentement explicitement, dans la même étape que la signature, et l'enregistre avec le document.
Ce que le client accepte
- Il a lu la décharge de responsabilité et consent à signer ce document par voie électronique.
- Il pourrait signer une copie papier à la place, et en consentant il renonce à ce droit.
- Il peut demander à tout moment une copie papier de n'importe quel document, sans frais, sans matériel ni logiciel particulier pour la consulter.
- Le consentement reste valable jusqu'à un retrait écrit, et un retrait n'entraîne aucune pénalité.
Qui a consenti et à quelle date est inscrit sur le PDF généré, à côté de la signature, du texte complet du document et des empreintes d'intégrité. Le consentement voyage avec le document au lieu de rester dans une ligne de base de données.
Cette formulation suit la pratique américaine courante en matière de signature électronique. Elle ne rend pas une décharge exécutoire à elle seule. Ce que dit ton texte, et si un tribunal l'appliquera, est une question pour ton propre avocat.
Comment wakesys gère-t-il les décharges pour les mineurs ?
Un mineur (toute personne en dessous de l'âge légal du parc, typiquement 18 ans) ne peut pas signer sa propre décharge et ne peut pas être le titulaire de la réservation. Un parent ou tuteur légal doit créer son propre compte, signer la décharge au nom du mineur et ajouter le mineur comme participant.
5 points de contrôle indépendants de vérification d'âge
Checkout de réservation en ligne
Un schéma de validation Zod vérifie la date de naissance par rapport à l'âge légal du parc. Les soumissions de mineurs sont rejetées avec des instructions claires pour les mineurs et les parents désorientés.
Inscription sur site
Le premier écran demande : Adulte ou Enfant ? Sélectionner Enfant oblige l'adulte à s'inscrire d'abord.
Réclamation de ticket
Lors de la réclamation d'un ticket pour un enfant, le système exige qu'un adulte soit identifié en premier.
Ventes à la caisse
Quand le personnel demande une décharge pour un mineur, un overlay les oblige à chercher et sélectionner l'adulte responsable en premier.
Signature de décharge
Le champ signedBy pointe toujours vers l'adulte qui a signé, jamais vers l'enfant. Le PDF montre clairement 'Signé pour : [enfant]' et 'Signé par : [parent]'.
Signer pour un enfant qui n'est pas le tien
Les contrôles d'âge empêchent un mineur de signer pour lui-même. Ils ne font rien contre un adulte qui signe pour un enfant sur lequel il n'a aucune autorité légale, ce qui arrive tous les week-ends dans un centre de loisirs familial. Avant qu'un client puisse attribuer un billet à l'enfant de quelqu'un d'autre, une fenêtre plein écran indique qui compte comme tuteur légal (parent, tuteur, famille d'accueil, tuteur désigné par le tribunal), prévient que signer sans cette autorité peut constituer une fausse déclaration, invalider la décharge et engager la responsabilité civile du signataire, et renvoie vers le lien d'invitation pour que le vrai parent signe depuis son propre téléphone.
La confirmation apparaît à trois endroits : lors de la réclamation d'un billet issu d'une réservation en ligne, lors de l'inscription sur la borne sur place, et lors de l'ajout d'un enfant à un compte existant. Dans le parcours de réservation, annuler ramène le client à l'écran où le lien d'invitation peut être partagé. Les parcs qui ne collectent pas de décharge obtiennent la même fenêtre, formulée pour l'inscription plutôt que pour la signature.
signedBy et userId sont des champs de première classe séparés dans le modèle de données. La relation signataire-participant est structurelle, interrogeable et imposée par le code, pas juste une distinction textuelle sur un formulaire comme chez Smartwaiver ou ROLLER.
wakesys révoque-t-il automatiquement les décharges ?
Oui. Quand le personnel modifie le profil d'un utilisateur via la caisse, la décharge est automatiquement invalidée et doit être re-signée avec les données actuelles. Le personnel peut aussi explicitement demander une nouvelle décharge, ce qui révoque la décharge actuelle et envoie une demande de conformité à la tablette.
Ce qui déclenche une re-signature
- Modification de profil via la caisse : tout changement au profil d'un utilisateur révoque automatiquement sa décharge
- Nouvelle demande initiée par le personnel via la caisse
Ce qui ne déclenche PAS de re-signature
- Réserver une nouvelle session dans le même parc
- Réclamer des tickets supplémentaires dans le même parc
- Se connecter depuis un autre appareil
Chaque re-signature crée une nouvelle WaiverVersion. Toutes les versions précédentes sont préservées et interrogeables. L'historique complet des signatures d'un utilisateur dans un parc est toujours disponible.
Comment cela se compare-t-il aux autres systèmes de décharges ?
| Fonctionnalité | wakesys | Smartwaiver | ROLLER |
|---|---|---|---|
| Capture de signature dessinée | |||
| Texte complet du document conservé par signature | |||
| Hash d'intégrité SHA-256 par décharge | (doc ID) | ||
| Somme de contrôle SHA-256 sur l'image de signature | |||
| Adresse IP capturée | |||
| User agent du navigateur capturé | |||
| Génération PDF par décharge | |||
| signedBy / signedFor séparés dans le modèle de données | Non (niveau formulaire) | Non (niveau formulaire) | |
| Historique des versions de décharge par utilisateur | |||
| Révocation automatique lors de modification de profil | |||
| Vérification d'âge au checkout de réservation | N/A (pas de réservation) | Au niveau de la décharge | |
| Vérification d'âge à l'inscription sur site | N/A | Au niveau de la décharge | |
| Demande de décharge en temps réel à la caisse | N/A (pas de caisse) | ||
| Suivi tuteur vs non-tuteur | (modèle uniquement) | ||
| Prévention réservation par mineurs | (écran 3 niveaux) | (bloque la soumission) | |
| Confirmation de tutelle avant de signer pour l'enfant d'un autre | (3 points d’entrée) | ||
| Consentement à la signature électronique inscrit sur le PDF | |||
| Re-signature sur place pré-remplie | |||
| Déduplication globale des enfants | |||
| Expiration de décharge avec rappels | |||
| Certifié SOC 2 Type II |
Limitations connues
Nous croyons en la transparence sur ce que le système fait et ne fait pas.
La vérification d'âge n'est pas une vérification d'identité. Il n'y a pas d'upload de pièce d'identité ni de contrôle biométrique. Le système se base sur des déclarations sincères, comme tous les systèmes de réservation en ligne.
La confirmation de tutelle est une déclaration, pas une vérification. Aucun système ne peut consulter une décision de garde au moment de la réservation. Ce qu'elle fait, c'est transformer une case que personne ne lit en une affirmation explicite, délibérée et horodatée, et orienter le client vers la personne qui peut réellement signer.
Les PDF sont générés de manière asynchrone. L'enregistrement en base de données avec son hash d'intégrité est l'enregistrement faisant foi, pas le PDF.