Personeelsplanning voor bedrijven met flexibele medewerkers (horeca, zorg, retail, evenementen) kost wekelijks uren: beschikbaarheid uitvragen, diensten verdelen op basis van vaardigheden, rekening houden met voorkeuren en contracturen, en het rooster communiceren. Met n8n en Claude automatiseer je het grootste deel van dit proces.
Deze handleiding bouwt een workflow die wekelijks beschikbaarheid verzamelt via Typeform, Claude een optimaal rooster laat opstellen op basis van vaardigheidsvereisten en beschikbaarheid, en het rooster publiceert in Google Calendar per medewerker.
Wat je nodig hebt
Stap 1: Medewerkersprofieldatabase opzetten
Maak een Google Sheet 'Medewerkersprofielen' met deze kolommen per medewerker:
Stap 2: Typeform beschikbaarheidsformulier
Maak in Typeform een wekelijks beschikbaarheidsformulier. Vragen: Naam (dropdown met vaste lijst), welke dagen ben je beschikbaar volgende week (meerkeuze: ma t/m zo), welke tijdblokken per dag (ochtend/middag/avond), bijzonderheden of verzoeken (vrije tekst). Het formulier gaat elke donderdagmiddag automatisch uit via n8n.
Stap 3: Beschikbaarheid verzamelen in Google Sheets
Voeg een n8n Typeform Trigger node toe die reageert op elke ingediende respons. Sla de beschikbaarheidsdata op in een tweede tabblad 'Beschikbaarheid' met week-ID, naam en beschikbare tijdslots. Zo bouw je wekelijks de inputdata op voor Claude.
Stap 4: Roostergenerator workflow (zaterdag 08:00)
Maak een tweede workflow met Schedule Trigger op zaterdag 08:00. Deze workflow verzamelt alle data en laat Claude het rooster opstellen:
Stap 5: Data ophalen en samenvatten
Haal beschikbaarheidsdata en medewerkersprofielen op uit Google Sheets en combineer ze in een Code node:
Stap 6: Claude stelt het rooster op
Stuur de gecombineerde data naar Claude met een gedetailleerd planningsprompt:
Stap 7: Rooster parsen en valideren
Voeg een Code node toe die de Claude JSON response parsed en valideert op compleetheid:
Stap 8: Diensten toevoegen aan Google Calendar
Voeg voor elke dienst in het rooster een Google Calendar event toe. Gebruik een Loop node om alle diensten te doorlopen:
Stap 9: Rooster mailen naar medewerkers
Stuur elke medewerker een persoonlijk overzicht van hun diensten de komende week. Gebruik een Code node om per medewerker hun eigen diensten te filteren, gevolgd door een Gmail node:
Stap 10: Manager-rapport bij onderbezetting
Als het rooster onderbezette diensten bevat, stuur je een aparte alert naar de manager met de specifieke diensten die handmatige aanvulling nodig hebben. Voeg een IF node toe voor de check en een e-mail naar management:
Troubleshooting
Probleem: Claude houdt beschikbaarheid niet goed bij
Voeg expliciete constraints toe aan het prompt: 'Je MOET de beschikbaarheid strikt respecteren. Plan NOOIT iemand in op een dag of tijdblok dat niet in hun beschikbaarheidslijst staat. Controleer elk toewijzing expliciet voor je de output geeft.'
Probleem: Niet alle medewerkers vullen het formulier in
Voeg een herinnerings-workflow toe: donderdag 16:00 stuur je een herinnering naar medewerkers die nog niet hebben gereageerd (vergelijk Typeform responses met de medewerkerslijst). Voeg ook een fallback toe in Claude: 'Als beschikbaarheid ontbreekt voor een medewerker, plan ze dan niet in en vermeld dit in de opmerkingen.'
Uitbreidingen
De tijdsbesparing voor een horecabedrijf met 12 medewerkers: van 3 tot 4 uur wekelijks roosteren naar 30 minuten controle en eventuele aanpassing. Dat is 150 uur per jaar terug die de manager besteedt aan leidinggeven, gasten en kwaliteit in plaats van planningspuzzels.