Usare la serratura elettronica Nuki con SuperSaaS

Crea automaticamente un codice per la tua serratura Nuki ogni volta che viene effettuata una prenotazione
4 marzo 2024 5 min di lettura
Usare la serratura elettronica Nuki con SuperSaaS

Uno dei tanti modi in cui SuperSaaS può essere utilizzato è per affittare case, stanze o appartamenti. Poiché consegnare una chiave fisica a un cliente e farsela restituire può essere complicato, molte attività hanno iniziato a usare serrature elettroniche. Installare una serratura elettronica non è più un grande investimento: può essere installata facilmente e, nel caso di Nuki, non richiede nemmeno la sostituzione della serratura esistente. Il livello successivo di comodità è creare e inviare automaticamente le informazioni di accesso ai tuoi clienti non appena una prenotazione è stata completata.

Usare una serratura elettronica in combinazione con SuperSaaS può essere utile anche per scopi diversi dall’affitto, come l’accesso basato sul tempo a una sala riunioni, un laboratorio informatico o una struttura sportiva.

Questo tutorial è rivolto ai clienti che hanno una serratura Nuki, perché Nuki è uno dei marchi più popolari e diversi clienti ci hanno chiesto se fosse possibile usare la loro serratura Nuki con SuperSaaS. Altri marchi offrono funzionalità simili e questo tutorial può essere utile anche per quelle serrature.

Il concetto:

Ogni volta che viene creato un nuovo appuntamento in un calendario SuperSaaS, viene generato un codice e memorizzato in un keypad Nuki specifico, con un intervallo di tempo per cui è valido.
Il codice viene inviato automaticamente al cliente nell’email di conferma.
Se sei preoccupato per l’aspetto della sicurezza nell’inviare il codice di accesso, puoi configurare un passaggio di approvazione dell’appuntamento prima che il codice venga inviato.

Nuki app keypad codes created via SuperSaaS

Prerequisiti:

Nota: anche altri tipi di calendario funzionano, ma un “resource schedule” è probabilmente ciò che serve per questo caso d’uso.

Limitazioni attuali:

  • C’è un massimo di 100 codici per il Nuki Keypad e 200 codici per il Nuki Keypad 2.0 (con lettore di impronte).
  • I codici scaduti devono essere eliminati manualmente tramite l’app o il portale web.
    Se elimini un codice tramite l’app, scomparirà dal portale il giorno successivo.
    Se lo elimini dal portale, verrà rimosso immediatamente dall’app e dal keypad.

Panoramica dei passaggi:

  1. Attivare l’API nel Nuki Web Portal.
  2. Identificare il lock ID.
  3. Configurare un webhook in SuperSaaS (per memorizzare un codice casuale con periodo di validità nel keypad tramite l’API Nuki).
  4. Impostare il timing del webhook per aggiornare il keypad poco prima del periodo di affitto.
  5. Aggiungere il codice all’email di promemoria automatica di SuperSaaS.

Nota: questi passaggi possono sembrare tecnici, ma sono in realtà molto semplici e, ancora una volta, non è richiesta alcuna conoscenza di programmazione!

Step 1: attivare l’API nel Nuki Web Portal

Vai al Nuki Web Portal

Sotto API, scegli “Activate Nuki Web API”, accetta i Termini e condizioni e clicca “Activate Nuki Web API”.

Clicca “Generate API token”.

Inserisci un nome casuale per il token API e seleziona tutte le checkbox dei diritti di accesso.

Dopo aver premuto “Save”, copia il codice che vedi (selezionalo e copia).
Conservalo per dopo. Se lo dimentichi, puoi crearne facilmente uno nuovo.

Nuki Web Portal API token

Step 2: identificare il lock ID

Ottenere il lock ID da Nuki può essere fatto in due modi, e può risultare un po’ confuso.
L’opzione 2 è più veloce ma più tecnica.

Opzione 1:

  • Nell’app Nuki vai su Features & Configuration, poi General. Copia il Device ID (es. 34FDAF45)
  • Converti questo numero “esadecimale” in un numero decimale tramite questo sito, ma prima aggiungi un “4” davanti al numero (vedi immagine).
    Il numero decimale è lo smartlockId che ti servirà nel passaggio successivo.

Converting hexadecimal number to decimal

Opzione 2:

  • Esegui il seguente comando in un Terminal (su Mac):
    curl -X GET --header 'Accept: application/json' --header 'Authorization: Bearer 72f6740dc9653f287e9368eee30afa142cea5caae3949bafb32' 'https://api.nuki.io/smartlock'
    sostituendo il codice dopo “Bearer” con il token API copiato dal Nuki Web Portal.
  • Nella risposta che ricevi, lo smartlockId è indicato come primo numero.

Step 3: configurare il webhook in SuperSaaS

Nella tua Dashboard SuperSaaS, clicca “Integrations” e poi “Webhooks”.
Puoi trovare più informazioni sull’uso dei webhooks qui, anche se non è necessario per questo tutorial.

Inserisci le seguenti informazioni:

  • Trigger: scegli “Reminder”
  • Schedule: scegli il calendario per cui vuoi configurare il keypad
  • Target URL:
    https://bearer:API-TOKEN@api.nuki.io/smartlock/SMARTLOCK-ID/auth?_method=put

Nota: scegli “Reminder” invece di “New appointment” anche se vuoi inviare il codice nella email di conferma.
Questo garantisce che il codice venga memorizzato nel keypad quando c’è meno probabilità che la prenotazione venga cancellata o modificata.

Il Target URL sarà simile a:
https://bearer:72f6740dc965eea5caae3949bafb31@api.nuki.io/smartlock/18068913969/auth?_method=put

SuperSaaS Webhook example with bearer code

Premi “Create Webhook”.

Dietro “Payload”, seleziona “Custom”.
Nota: se questa opzione non è disponibile, devi prima avere un abbonamento a pagamento.

Copia e incolla il seguente testo nel campo:

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

Premi ‘Aggiorna webhook’

Ora puoi premere ‘Prova webhook’ e poi ‘Invia payload ora’.

Importante: ogni codice può essere inserito una sola volta, quindi se usi la funzione “Test webhook” per creare un codice per una prenotazione, l’esecuzione del webhook per l’email di promemoria potrebbe fallire se viene usato lo stesso codice.
Per evitare questo problema, aggiorna il codice ogni volta che testi il webhook con un numero diverso di 6 cifre (senza zeri nel numero e senza “12” all’inizio).

Se l’operazione ha successo, dopo qualche secondo dovrebbe essere creato un nuovo codice per il dispositivo. Lo trovi sotto “Keypad” nel portale Nuki e nell’app (potresti dover aggiornare la pagina).

Usando $start, le voci nel keypad verranno visualizzate nell’app con la data di inizio come nome (vedi immagine).

Nuki app keypad codes created via SuperSaaS

Questo rende facile trovare il codice per fornirlo al cliente nel caso lo abbia dimenticato.
Rende anche più semplice rimuovere i codici scaduti.
In alternativa, sostituisci $start con $id.
Puoi quindi abilitare la visualizzazione dell’ID della prenotazione nella prenotazione e nella lista per trovarlo facilmente.

Nota: non è consigliabile usare il nome del cliente, perché il keypad ha un limite di 30 caratteri per il nome. Se il nome del cliente è più lungo, il salvataggio del codice fallirà.

Step 4: configurare il timing del webhook e dell’email

Nella scheda “Process”, sotto l’opzione “Dobbiamo inviare un promemoria o un follow-up per la prenotazione?”, seleziona “Trigger a webhook an hour in advance”.
In questo modo, il codice viene inviato al keypad il più tardi possibile, prevenendo problemi con prenotazioni cancellate o modificate.

Per inviare l’email di promemoria, seleziona “Send a follow-up email” e imposta il valore a “-1 days”.

SuperSaaS form to configure timing of sending Nuki doorcode to customers

Step 5: aggiungere il codice all’email automatica per il cliente

Aggiungi semplicemente $doorcode all’email di promemoria inviata al cliente (nella scheda “Layout”) poco prima del periodo di affitto.
Facoltativamente, puoi includere il codice anche nell’email di conferma.

SuperSaaS form to configure sending Nuki doorcode to customers

È tutto!

Osservazioni finali

Per più stanze e serrature, ripeti questi passaggi con un calendario diverso e un lock ID diverso (il token API del Web Portal è collegato al tuo account Nuki e sarà lo stesso per ogni serratura).

Questo tutorial è pensato per una serratura con keypad perché permette al cliente di usare la serratura tramite un codice inviato via email, senza bisogno di installare l’app Nuki.
Con alcune modifiche, lo stesso principio può essere usato per creare automaticamente l’accesso all’app Nuki invece che al keypad.

Come menzionato sopra, se sei preoccupato per la sicurezza puoi configurare un passaggio di approvazione prima che il codice venga inviato, oppure richiedere il pagamento in anticipo.

Questo tutorial copre il bisogno di base di usare la serratura Nuki in combinazione con SuperSaaS.
Esigenze più avanzate possono essere soddisfatte usando un servizio come Make, che ha un’integrazione con SuperSaaS.
Puoi creare scenari come permettere l’apertura della serratura un’ora prima del periodo di affitto.
È anche possibile rimuovere automaticamente i codici scaduti tramite l’API Nuki, ma richiede molto più lavoro.

Questo tutorial si basa sulle informazioni fornite da Nuki:
https://developer.nuki.io/t/web-api-example-manage-pin-codes-for-your-nuki-keypad/54