Utiliser la serrure de porte électronique Nuki avec SuperSaaS

Créez automatiquement un code pour votre serrure de porte Nuki à chaque fois qu'une réservation est faite
Mar 4, 2024 6 min read
Utiliser la serrure de porte électronique Nuki avec SuperSaaS

L’une des nombreuses utilisations de SuperSaaS est la location de maisons, de chambres ou d’appartements. Comme il est fastidieux de remettre une clé physique à un client et de la récupérer, de nombreuses entreprises ont commencé à utiliser des serrures électroniques. Installer une serrure électronique n’est plus un investissement majeur car elles peuvent être facilement installées, et dans le cas de Nuki, cela ne nécessite même pas de remplacer la serrure existante. Le niveau suivant de commodité peut être de créer et d’envoyer automatiquement les informations d’accès à vos clients dès qu’une réservation a été complétée.

L’utilisation d’une serrure électronique en combinaison avec SuperSaaS peut également être utilisée à d’autres fins que la location, comme l’accès basé sur le temps à une salle de réunion, un laboratoire informatique ou une installation sportive.

Ce tutoriel est destiné aux clients qui possèdent une serrure Nuki, car Nuki est l’une des marques les plus populaires et plusieurs clients nous ont demandé s’il était possible d’utiliser leur serrure Nuki avec SuperSaaS. D’autres marques offrent des fonctionnalités similaires et ce tutoriel peut également aider avec ces serrures.

Le concept :

Chaque fois qu’un nouveau rendez-vous est créé sur un calendrier SuperSaaS, un code est généré et stocké dans un clavier Nuki spécifique, avec une plage de temps pour laquelle il est valide. Le code est envoyé automatiquement au client dans l’email de confirmation. Si vous êtes préoccupé par l’aspect sécurité de l’envoi du code d’accès à la porte, vous pouvez configurer une étape d’approbation du rendez-vous avant que ce code ne soit envoyé.

Prérequis :

  • Vous avez une serrure Nuki, un clavier Nuki et un pont Nuki ou du WiFi intégré (par exemple, Smart Lock 3.0 Pro ou supérieur).
  • Vous avez créé un ‘calendrier de ressources’ dans SuperSaaS pour la maison, l’appartement ou la chambre que vous souhaitez louer.
  • Vous avez un abonnement payant à SuperSaaS (nécessaire pour ce qu’on appelle les ‘webhooks personnalisés’ qui sont utilisés).
  • Vous avez activé l’accès gratuit à Nuki Web via l’application Nuki (sous Fonctionnalités & Configuration).

Remarque : d’autres types de calendriers que ‘ressource’ fonctionneront également, mais un ‘calendrier de ressources’ est probablement ce dont vous aurez besoin pour ce cas d’utilisation particulier.

Limitations actuelles :

  • Il y a un maximum de 100 codes pour le clavier Nuki et 200 codes pour le clavier Nuki 2.0 (avec lecteur d’empreintes digitales).
  • Les codes expirés doivent être supprimés manuellement via l’application ou le portail web. Si vous supprimez un code via l’application, il disparaîtra du portail un jour plus tard. Si vous le supprimez via le portail, il sera immédiatement retiré de l’application et du clavier.

Aperçu des étapes :

  1. Activer l’API sur le portail Web Nuki.
  2. Identifier l’ID de la serrure.
  3. Configurer un webhook dans SuperSaaS (pour stocker un code aléatoire avec une période de validité dans le clavier via l’API de Nuki).
  4. Régler le timing du webhook pour mettre à jour le clavier peu avant la période de location.
  5. Ajouter le code à l’email de rappel automatique de SuperSaaS.

Remarque : ces étapes peuvent sembler un peu techniques, mais c’est en réalité assez simple et encore une fois, aucune connaissance en programmation n’est requise !

Étape 1 : activer l’API sur le portail Web Nuki

Allez sur le Portail Web Nuki

Sous API, choisissez Activer l’API Web Nuki, acceptez les Conditions générales et cliquez sur Activer l’API Web Nuki.

Cliquez sur ‘Générer un jeton API’.

Entrez un nom aléatoire pour le nom du jeton API et sélectionnez toutes les cases à cocher pour les droits d’accès.

Après avoir appuyé sur ‘Enregistrer’, copiez le code que vous voyez là (en sélectionnant le code puis en faisant un clic droit pour copier). Sauvegardez ce code quelque part pour plus tard. Si vous l’oubliez, vous pouvez facilement en créer un nouveau.

Étape 2 : identifier l’ID de la serrure

Obtenir l’ID de la serrure de Nuki peut se faire de deux manières et cela peut être un peu confus. L’option 2 est un peu plus rapide mais un peu plus technique.

Option 1 :

  • Dans l’application Nuki, allez dans Fonctionnalités & Configuration, puis Général. Copiez l’ID de l’appareil (par exemple, 34FDAF45)
  • Convertissez ce nombre ‘hexadécimal’ en un nombre décimal via ce site web mais ajoutez d’abord un ‘4’ devant le nombre (voir l’image d’exemple). Le nombre décimal est l’ID du smartlock dont vous avez besoin à l’étape suivante.

Option 2 :

  • Exécutez la commande suivante dans une fenêtre de Terminal (sur un Mac) curl -X GET --header 'Accept: application/json' --header 'Authorization: Bearer 72f6740dc9653f287e9368eee30afa142cea5caae3949bafb32' 'https://api.nuki.io/smartlock' où vous remplacez le code après Bearer par le code que vous avez copié au portail Web Nuki plus tôt.
  • Dans la réponse que vous obtenez, l’ID du smartlock est mentionné comme le premier nombre.

Étape 3 : configurer le webhook chez SuperSaaS

Sur votre tableau de bord SuperSaaS, cliquez sur ‘Intégrations’ puis choisissez ‘Webhooks’. Trouvez plus d’informations sur l’utilisation des webhooks ici, bien que cela ne soit pas nécessaire pour ce tutoriel.

Entrez les informations suivantes :

  • Déclencheur : choisissez ‘Rappel’
  • Calendrier : choisissez le calendrier pour lequel vous souhaitez configurer un clavier
  • URL cible : https://bearer:API-TOKEN@api.nuki.io/smartlock/SMARTLOCK-ID/auth?_method=put

Remarque : Choisissez ‘Rappel’ au lieu de ‘Nouveau rendez-vous’ même si vous choisissez d’envoyer le code dans l’email de confirmation lors de la création du nouveau rendez-vous. Cela a l’avantage que le code sera stocké dans le clavier lorsqu’il y a un risque minimal que la réservation soit annulée ou modifiée.

L’URL cible ressemblera alors à ceci : https://bearer:72f6740dc965eea5caae3949bafb31@api.nuki.io/smartlock/18068913969/auth?_method=put

Appuyez sur ‘Créer un webhook’.

Derrière ‘Payload’ sélectionnez ‘Personnalisé’. Remarque : Si cette option n’est pas disponible, vous devez d’abord obtenir un abonnement payant.

Copiez et collez les informations suivantes dans le champ de texte :

{
"name": "$start",
"allowedFromDate": "$start_utc",
"allowedUntilDate": "$finish_utc",
"allowedWeekDays": 0,
"type": 13,
"code": "$doorcode"
}

Appuyez sur ‘Mettre à jour le webhook’

Vous pouvez maintenant appuyer sur ‘Tester le webhook’ et appuyer sur ‘Post payload now’.

Important : chaque code ne peut être entré qu’une seule fois, donc si vous utilisez la fonctionnalité “Tester le webhook” pour créer un code pour un rendez-vous, l’exécution du webhook pour l’email de rappel plus tard peut échouer si le même code est utilisé. Pour éviter cela, mettez à jour le code chaque fois que vous testez le webhook à un nombre différent à 6 chiffres (et aucun zéro dans le nombre ou 12 au début).

Si cela réussit, une nouvelle entrée avec un code devrait être créée pour l’appareil après quelques secondes. Trouvez-la sous ‘Clavier’ sur le portail Nuki et dans l’application (vous devrez peut-être actualiser la page si vous y êtes).

En utilisant $start, les entrées dans le clavier seront affichées avec la date de début comme nom dans l’application (voir image).

Cela facilite la recherche du code afin de le fournir au client au cas où il l’aurait oublié. Cela facilite également la suppression des codes expirés. Alternativement, remplacez $start par $id. Vous pouvez alors activer l’affichage de l’ID de réservation sur la réservation et la vue en liste pour trouver facilement l’ID.

Remarque : Il n’est pas conseillé d’utiliser le nom du client, car le clavier a une limitation de 30 caractères pour le nom. Si le nom du client est plus long, le stockage du code échouera.

Étape 4 : configurer le timing du webhook et de l’email

Dans l’onglet ‘Processus’ sous l’option ‘Devrions-nous envoyer un rappel ou un suivi pour la réservation ?’ sélectionnez ‘Déclencher un webhook une heure à l’avance’. En faisant cela, le code est délibérément envoyé au clavier aussi tard que possible, ce qui évite les problèmes avec les réservations annulées ou les dates de réservation modifiées.

Pour déclencher l’envoi de l’email de rappel, sélectionnez ‘Envoyer un email de suivi’ et changez la valeur à ‘-1 jours’.

Étape 5 : ajouter le code à l’email automatique au client

Ajoutez simplement $doorcode à l’email de rappel qui est envoyé au client (dans l’onglet ‘Mise en page’) peu avant la période de location. Facultativement, vous pouvez également inclure le code dans l’email de confirmation.

C’est tout !

Remarques finales

Pour plusieurs chambres et serrures, répétez ces étapes avec un calendrier différent et un ID de serrure différent (le jeton API du portail Web est connecté à votre compte Nuki et sera le même pour chaque serrure).

La raison pour laquelle ce tutoriel est pour une serrure en combinaison avec un clavier est parce que cela permet à votre client d’utiliser la serrure grâce à un code partagé par email, sans besoin d’installer l’application Nuki sur son téléphone. Avec quelques modifications, le même principe peut être utilisé pour créer automatiquement un accès à l’application Nuki pour une serrure.

Comme mentionné ci-dessus, si vous êtes préoccupé par l’aspect sécurité, vous pouvez configurer une étape d’approbation avant que ce code ne soit envoyé ou simplement exiger un paiement à l’avance.

Ce tutoriel répond au besoin de base d’utiliser la serrure Nuki en combinaison avec SuperSaaS. Des besoins plus avancés peuvent être pris en charge en utilisant un service tel que Make, qui a une intégration avec SuperSaaS. Pensez à des scénarios tels que permettre à la serrure d’être ouverte une heure avant la période de location. Il est également possible de supprimer automatiquement les codes expirés car l’API Nuki le permet, mais cela nécessite un effort considérablement plus important.

Ce tutoriel est basé sur les informations suivantes de Nuki : https://developer.nuki.io/t/web-api-example-manage-pin-codes-for-your-nuki-keypad/54