Partijen
| Verwerker | Spine HQ, handelend onder de naam Meet Marley, KvK 82037906, btw-identificatienummer NL003631560B86, Klaverhof 146, 2403 XJ Alphen aan den Rijn, Nederland |
| Verwerkingsverantwoordelijke | De salon die de algemene voorwaarden van Meet Marley is aangegaan ("u") |
Deze overeenkomst maakt deel uit van de algemene voorwaarden en geldt automatisch vanaf het moment dat u een Meet Marley-account aanmaakt. Art. 28 lid 3 AVG schrijft deze overeenkomst voor.
1. Rollen
Voor de boekings- en klantendienst bent u de verwerkingsverantwoordelijke en is Meet Marley de verwerker. U bepaalt welke klanten u vastlegt, wat u over hen schrijft, en waarom. Wij verwerken die gegevens om de dienst te leveren en op uw instructie.
Voor een aantal duidelijk afgebakende dingen is Meet Marley zelf verwerkingsverantwoordelijke, omdat wij daarvan het doel bepalen en niemand ons daartoe opdracht geeft:
| Verwerking | Waarom wij verwerkingsverantwoordelijke zijn | Onze grondslag |
|---|---|---|
| De openbare salongids en het zoeken over salons heen | Wij brengen aangemelde salons samen in ons eigen product zodat consumenten ze kunnen vinden. Dat is ons commerciële doel, niet het uwe | Gerechtvaardigd belang; en u meldt zich per salon zelf aan — het staat standaard uit |
| Reviews publiceren in de gids | Wij bepalen dat reviews als "Sanne D." worden getoond, hoe ze worden gemodereerd en hoe lang ze blijven staan | Gerechtvaardigd belang, waarbij de reviewer het bij het insturen te horen krijgt |
| Statistiek over het hele platform | Tellingen over alle salons heen, voor onze eigen rapportage | Gerechtvaardigd belang, alleen geaggregeerd |
| Beveiligings- en auditlogging | Wij bepalen wat er wordt gelogd en hoe lang; u kunt het niet uitzetten | Gerechtvaardigd belang bij een veilige dienst |
| Productanalyse | Onze software verbeteren. Toegerekend aan een salon, nooit aan een persoon | Gerechtvaardigd belang |
| Bewaartermijnen | De termijnen in §5 stellen wij vast en u kunt ze niet wijzigen | Wettelijke verplichting en gerechtvaardigd belang |
Deze splitsing is bewust gemaakt en wordt hier benoemd in plaats van weggemoffeld, omdat het verschil bepaalt wie een betrokkene antwoord geeft en wie zich tegenover de toezichthouder verantwoordt. Waar wij verwerkingsverantwoordelijke zijn, dragen wij de verplichting en handelen wij niet op uw instructie.
Meet Marley is een afzonderlijke verwerkingsverantwoordelijke voor de gegevens van uw eigen account — de namen en e-mailadressen van u en uw medewerkers, uw facturatiegegevens en onze beveiligingslogs. Die verwerking staat beschreven in onze privacyverklaring, niet hier. Dat verschil doet ertoe: ons beveiligingsauditlog is ons eigen dossier als verwerkingsverantwoordelijke, bewaard voor de termijnen in §5, en het is niet iets waarvan u ons opdracht geeft het te verwijderen.
Waarom een verwijderingsverzoek dat niet verkort. Art. 17 lid 3 AVG bepaalt dat het recht op vergetelheid niet geldt waar de verwerking nodig is om aan een wettelijke verplichting te voldoen, en waar zij nodig is voor het instellen, uitoefenen of onderbouwen van een rechtsvordering. Daar is een auditlog voor: later, en aan iemand anders, laten zien wie wat deed. Wij beroepen ons op die bepaling in plaats van het verzoek simpelweg af te wijzen, want een recht dat opzij wordt gezet zonder dat de grond wordt genoemd is niet meer dan een weigering.
2. Onderwerp, duur, aard en doel
Het onderwerp, de duur, de aard en het doel van de verwerking, en de categorieën betrokkenen en persoonsgegevens, staan in Bijlage I.
Bijzondere persoonsgegevens (art. 9). Het veld Notities dat in Bijlage I staat beschreven is vrije tekst en wij beperken niet wat erin komt. In een salon zal het voorspelbaar worden gebruikt voor allergieën, huid- en hoofdhuidaandoeningen, zwangerschap en medicijngebruik — en dat zijn gezondheidsgegevens onder art. 9 AVG.
Voert u zulke gegevens in, dan blijft u daarvoor de verwerkingsverantwoordelijke, en hebt u een eigen grondslag onder art. 9 AVG nodig — in de praktijk de uitdrukkelijke toestemming van de klant. Meet Marley vraagt daar niet om en vereist het niet, en behandelt het veld niet als een veld voor bijzondere persoonsgegevens, wat betekent dat de waarborgen die bij gezondheidsgegevens horen door u moeten worden getroffen.
Het veld valt volledig onder het rechtenproces in §4: de inhoud kan op verzoek worden verstrekt en op verzoek worden verwijderd, net als al het andere in een klantdossier.
3. Instructies
Wij verwerken de gegevens van uw klanten uitsluitend op uw gedocumenteerde instructie. Uw gebruik van de dienst is die instructie. Menen wij dat een instructie in strijd is met de AVG, dan laten wij u dat weten.
Wij verkopen de gegevens van uw klanten niet, gebruiken ze niet voor reclame, en gebruiken ze niet om machine-learningmodellen te trainen.
Meet Marley beheert een openbare salongids. Uw salon staat daar alleen in als u de vermelding aanzet — die staat standaard uit. Reviews die openbaar worden getoond, laten een afgekorte klantnaam zien ("Sanne D.") en nooit een e-mailadres of telefoonnummer.
4. Bijstand bij de rechten van betrokkenen
Art. 28 lid 3 onder e AVG verlangt dat wij u helpen verzoeken van uw klanten te beantwoorden. Hier staat wat er vandaag waar is, gewoon opgeschreven en niet als een belofte die we niet kunnen nakomen.
Elk verzoek wordt uitgevoerd. Inzage, correctie en verwijdering worden alle drie volledig uitgevoerd — het enige verschil vandaag is wie de handelingen verricht.
Zelf te doen, door u, in de app: de gegevens van uw eigen account en die van uw medewerkers.
Door ons uitgevoerd, op uw instructie: verzoeken over een individueel klantdossier — inzage, correctie, export en verwijdering, inclusief het veld Notities en alles wat daarin staat. Mail [email protected] en wij ronden het binnen 5 werkdagen af, kosteloos. Er is geen grens aan wat er weg kan: een klantdossier kan volledig worden gewist, en dat doen wij op verzoek.
Een scherm waarop u dit zelf kunt doen wordt gebouwd. Tot het er is, is de route hierboven het mechanisme, en het levert dezelfde uitkomst binnen dezelfde wettelijke termijn.
Wat verwijdering in de praktijk betekent. Het dossier gaat meteen uit de live database. Back-ups houden een kopie tot ze verlopen volgens hun vaste schema — zie §5 — en in die tijd wordt daar niets in opgezocht en wordt er niets selectief uit teruggezet, en bij elke terugzetting wordt de verwijdering opnieuw uitgevoerd. Zo werkt verwijdering in de praktijk in elk systeem dat back-ups bewaart om van een ramp te kunnen herstellen.
Voor accounthouders (u en uw medewerkers) bieden wij inzage in en correctie van de profielgegevens in de applicatie. Een account verwijderen doen wij op dit moment op verzoek.
5. Bewaren en verwijderen
| Gegevens | Bewaartermijn | Afgedwongen door |
|---|---|---|
| Klantgegevens | 24 maanden na de laatste afspraak van die klant, daarna geanonimiseerd | Automatische bewaarronde |
| Afspraakgegevens | Blijven staan als financiële historie; de identiteit van de klant en de vrije tekst bij de afspraak worden in dezelfde ronde weggehaald | Automatische bewaarronde |
| Facturatie-auditgegevens | 84 maanden (7 jaar), Nederlandse bewaarplicht | Automatische bewaarronde |
| Auditgegevens over inloggen en beveiliging | 24 maanden | Automatische bewaarronde |
| Overige auditgegevens | 12 maanden | Automatische bewaarronde |
| Inlogsessies | 30 dagen | Verlopen van het token |
| Back-ups — point-in-time recovery | ≈ 7 dagen, doorlopend | Railway PITR |
| Back-ups — dagelijkse volume-snapshots | ≈ 7 dagen, doorlopend | Ingeplande back-ups van Railway |
| Back-ups — wekelijkse volume-snapshots | Roulerend, volgens het schema van onze hostingpartij | Ingeplande back-ups van Railway |
| Back-ups — maandelijkse volume-snapshots | Roulerend, volgens het schema van onze hostingpartij — een kopie kan dus maanden blijven bestaan | Ingeplande back-ups van Railway |
Back-ups, en wat verwijdering werkelijk betekent
Anonimiseren en verwijderen werken op de live database. Ze reiken niet tot in de back-ups, en dat doet geen enkel systeem — een back-up die selectief te bewerken valt, is geen betrouwbare back-up.
Wordt een dossier geanonimiseerd of worden de gegevens van een klant op verzoek gewist, dan staan ze dus nog in de back-ups tot die verlopen. In de tussentijd worden ze buiten gebruik gesteld: back-ups worden niet bevraagd, niet selectief teruggezet, en bestaan uitsluitend om van een ramp te kunnen herstellen. Naar ons begrip is dit onder de AVG een breed gedragen standpunt, en merken zowel het Europees Comité voor gegevensbescherming (EDPB) als de Autoriteit Persoonsgegevens het aan als rechtmatig, mits aan drie voorwaarden is voldaan — en dat is hier het geval:
- Back-ups verlopen volgens een vast schema in plaats van onbeperkt bewaard te blijven.
- Niemand bevraagt een back-up om gegevens terug te halen die uit het live systeem zijn verwijderd.
- Vindt er ooit een terugzetting plaats, dan worden de verwijderingen daarna opnieuw uitgevoerd. Voor de bewaartermijnen gaat dat vanzelf — de ronde loopt dagelijks en over alle salons heen, dus alles wat een terugzetting terugbrengt wordt bij de volgende ronde opnieuw geanonimiseerd. Bij een handmatige verwijdering is dat vangnet er niet en wordt zij met de hand opnieuw uitgevoerd, aan de hand van het verwijderingsregister. De procedure staat in ons herstelrunbook.
Let op de maandelijkse snapshots. Point-in-time recovery beslaat ongeveer een week, en dat is het getal dat mensen doorgaans voor ogen hebben als ze aan back-ups denken. Maar het schema voor volume-back-ups houdt ook wekelijkse en maandelijkse snapshots, dus de werkelijke staart waarin er nog een kopie bestaat is te meten in maanden, niet in dagen.
Dat verandert niets aan de juridische positie — buiten gebruik is buiten gebruik, hoe lang het venster ook is — maar het verandert wel wat we eerlijk kunnen zeggen tegen iemand die vraagt "wanneer is het echt weg", en daarom staat het hier in plaats van naar het geruststellende getal te worden afgerond.
Inactiviteit wordt per klant gemeten, vanaf de meest recente afspraak van die klant zelf — niet vanaf de activiteit van uw salon. Een klant die drie jaar geleden voor het laatst kwam wordt geanonimiseerd ook al draait u nog gewoon, omdat het doel waarvoor de gegevens zijn verzameld voor hem of haar is geëindigd.
Wij anonimiseren in plaats van te verwijderen. De afspraakregel blijft staan met datum, dienst en bedrag, zodat uw omzethistorie en uw boekhouding intact blijven. Wat verdwijnt is de persoon: naam, e-mailadres, telefoonnummer, notities en taal. Het aantal bezoeken blijft staan, want een getal dat aan niemand hangt identificeert niemand en het houdt uw totalen kloppend. Een review houdt zijn cijfer en zijn tekst, maar verliest de naam waaraan hij was toegeschreven.
Bij het einde van de overeenkomst verwijderen wij de gegevens van uw klanten binnen 30 dagen of geven wij ze terug, behalve waar de wet bewaren verplicht. Auditgegevens over uw account blijven gedurende de termijnen hierboven bewaard als het eigen dossier van Meet Marley als verwerkingsverantwoordelijke — het dossier van wie wat deed — en een verwijderingsverzoek verkort dat niet. De grond is art. 17 lid 3 AVG: het recht op vergetelheid geldt niet waar de verwerking nodig is om aan een wettelijke verplichting te voldoen, of voor het instellen, uitoefenen of onderbouwen van een rechtsvordering. Zie §1.
6. Geheimhouding
Iedereen bij Meet Marley die toegang heeft tot de gegevens van uw klanten is tot geheimhouding gehouden. De toegang is beperkt tot degenen die hem nodig hebben om de dienst te draaien en te ondersteunen.
7. Beveiliging (art. 32)
De technische en organisatorische maatregelen die wij treffen staan in Bijlage II.
8. Subverwerkers
U geeft algemene toestemming voor de subverwerkers in Bijlage III. Wij kondigen het 30 dagen van tevoren aan als er een bij komt of wordt vervangen, en u kunt bezwaar maken; komen wij er over uw bezwaar niet uit, dan kunt u zonder kosten opzeggen voor de rest van de betaalde periode.
9. Datalek
Wij stellen u zonder onredelijke vertraging en in ieder geval binnen 48 uur op de hoogte nadat wij kennis hebben gekregen van een datalek dat de gegevens van uw klanten raakt, met de aard van het lek, de waarschijnlijke gevolgen en de getroffen maatregelen. Het melden bij de Autoriteit Persoonsgegevens en bij uw klanten is uw verantwoordelijkheid als verwerkingsverantwoordelijke; wij geven u wat u daarvoor nodig hebt.
Die 48 uur zijn van ons, niet van de wet. Art. 33 lid 2 AVG verlangt van een verwerker een melding zonder onredelijke vertraging en stelt geen vaste termijn. Achtenveertig uur is een toezegging die wij zelf kiezen, en zij is strenger dan het artikel vraagt — zij bestaat zodat een salon nog een dag overhoudt binnen zijn eigen 72 uur richting de AP. Het is ook een belofte die we moeten kunnen nakomen op zaterdagavond om 23:00 uur met één persoon bereikbaar.
10. Audit
Na redelijke aankondiging, en ten hoogste eenmaal per jaar tenzij zich een datalek heeft voorgedaan, verstrekken wij de informatie die nodig is om de naleving van deze overeenkomst aan te tonen.
11. Toepasselijk recht
Nederlands recht. Geschillen worden voorgelegd aan de bevoegde rechter in Nederland.
Bijlage I — Bijzonderheden van de verwerking
Onderwerp. Het leveren van software voor het maken van afspraken en het runnen van een salon.
Duur. Zolang u een account hebt, plus de bewaartermijnen in §5.
Aard en doel. Afspraken aannemen en beheren; bevestigingen, herinneringen en bonnen versturen; afsprakengeschiedenis vastleggen; geverifieerde reviews verzamelen en publiceren; rapportage en statistiek voor u maken.
Categorieën betrokkenen. Uw klanten — consumenten die een afspraak boeken — en, voor zover u die invoert, mensen die contact met u opnemen zonder te boeken.
Categorieën persoonsgegevens.
| Categorie | Velden |
|---|---|
| Identiteit | Naam |
| Contact | E-mailadres, telefoonnummer |
| Afspraakgegevens | Datum, tijd, dienst, toegewezen medewerker, status, prijs, fooi, betaalwijze |
| Voorkeuren | Taal, aantal bezoeken |
| Vrije tekst | Het veld Notities op een klantdossier en op een afspraak |
| Reviews | Cijfer, tekst, naam zoals vastgelegd bij het insturen |
| Technisch | IP-adres en user agent, vastgelegd in het beveiligingsauditlog |
Bijzondere persoonsgegevens. Niet bewust verwerkt. Zie de waarschuwing bij §2 over het veld Notities.
Bijlage II — Technische en organisatorische maatregelen
Elke maatregel hieronder zit vandaag in het product.
Toegangscontrole en authenticatie
- Wachtwoorden gehasht met BCrypt; nooit in leesbare vorm opgeslagen of terug te halen
- Toegangstokens 15 minuten geldig, met rotatie van refresh-tokens en detectie van hergebruik
- Automatische blokkade van het account na vijf mislukte inlogpogingen op rij
- Beperking van het aantal pogingen bij inloggen, openbaar boeken en het insturen van reviews
- Superadmintoegang is een apart soort account met eigen inloggegevens en een eigen auditcategorie
Scheiding tussen salons
- Elke query wordt op de datalaag gefilterd op salon, globaal toegepast in plaats van per query
- De ene salon kan nooit bij de gegevens van een andere. Er is geen route, instelling of rol die dat toestaat
- De enige uitzondering is onze eigen supporttoegang, hieronder beschreven. Dat is geen manier voor de ene salon om de andere te zien; het zijn wij, met naam en met logging, die in één salon tegelijk werken
Logging en verantwoording
- Een auditlog waaraan alleen kan worden toegevoegd, afgedwongen door een databasetrigger die
DELETEbotweg weigert enUPDATEalleen toestaat op de kolommen voor redactie. De garantie zit in de database en niet in applicatiecode, dus zij houdt ook stand tegenover iemand met rechtstreekse databasetoegang - Bewaarrondes lopen automatisch per categorie
Supporttoegang tot uw salon
Soms werken wij in uw salon — meestal om hem samen met u in te richten, soms om een probleem te zien dat u beschrijft. Wij vertellen liever precies hoe dat werkt dan dat u het moet aannemen.
- Wij zijn het, niet u. Niemand logt in als u of als een van uw medewerkers. De sessie draagt de naam van de persoon bij Marley die hem opende, en Studio toont een balk met die naam zolang de sessie duurt
- Twee niveaus, en het kleinste is de standaard. Een inrichtsessie komt alleen bij de instellingen van uw salon — diensten, prijzen, medewerkers, locaties, openingstijden, huisstijl. Die kan uw afspraken, uw klanten en uw beoordelingen niet openen. Een supportsessie kan dat wel, en gebruiken wij alleen als de vraag daarover gaat
- Vooraf wordt een reden vastgelegd. Zonder reden kan een sessie niet starten
- Tweestapsverificatie is verplicht, en de sessie is kortdurend en verloopt vanzelf
- U ziet het. Elke handeling verschijnt in uw eigen Activiteit-scherm, gelabeld als Marley support en niet als een van uw teamleden. Niets van wat wij in uw salon doen is voor u verborgen, en het auditlog waarin het terechtkomt kan niet worden aangepast of verwijderd — zie hierboven
- Geld en inloggegevens blijven buiten bereik. Een sessie kan uw abonnement niet wijzigen, geen automatische incasso instellen, uw betaalgegevens niet openen, uw salon niet in de openbare gids publiceren en geen pincode voor medewerkers instellen
Integriteit van gegevens en omgang met invoer
- Uploads beperkt tot PNG/JPEG/WebP, waarbij het formaat wordt bepaald door naar de eerste bytes van het bestand te kijken in plaats van te vertrouwen op het opgegeven content type; SVG wordt geweigerd omdat het script kan bevatten
- Maximale uploadgrootte afgedwongen
Opslag en transport
- TLS voor gegevens onderweg; HSTS afgedwongen
- Afgeschermde objectopslag — elk bestand wordt gelezen via een kortlopende presigned URL, en geen enkel object is openbaar leesbaar
- Versleuteling in rust zoals geleverd door Railway en zijn Postgres-dienst
- Back-ups met point-in-time recovery
Doorlopend
- Foutmonitoring met verwerking binnen de EU
- Vastgezette versies van afhankelijkheden tegen kwetsbaarheden (vastgelegd in de centrale pakketconfiguratie van de repository)
In de browser
- Een Content-Security-Policy op elke applicatie, die beperkt van welke bronnen een pagina mag laden en waarheen die gegevens mag sturen
Strict-Transport-Security,X-Content-Type-Options: nosniffen een referrerbeleid op elke response- De salon- en beheerapplicatie weigeren bovendien om door andere websites in een frame te worden geladen
Bijlage III — Subverwerkers
Zeven, en deze bijlage is bewust smaller dan de volledige lijst van ontvangers. Zij dekt alleen subverwerkers die worden ingeschakeld voor de gegevens van uw klanten, en dat is waarvoor art. 28 lid 2 AVG uw toestemming verlangt.
Het gegevensoverzicht noemt een achtste ontvanger — de pushdiensten van browsers (Google, Mozilla, Apple) die meldingen bezorgen op de apparaten van salonmedewerkers. Die staan hier niet, omdat zij nooit persoonsgegevens van een klant ontvangen: een pushabonnement hoort bij een van uw medewerkers, is verwerking door Meet Marley als verwerkingsverantwoordelijke zoals beschreven in de privacyverklaring, en bevat geen enkel gegeven over een boeking of een klant. Dáárom verschillen de twee aantallen, en niet door een vergissing.
| Subverwerker | Doel | Locatie |
|---|---|---|
| Railway Corp. | Hosting, database, objectopslag | EU West (Amsterdam, NL) |
| Cloudflare, Inc. | CDN, TLS, WAF, cookieloze site-analyse | Wereldwijd edge-netwerk |
| Resend | Transactionele e-mail | Ierland (EU) |
| Functional Software, Inc. (Sentry) | Foutmonitoring | EU (Duitsland) |
| PostHog, Inc. | Productanalyse — alleen Meet Marley Studio, nooit pagina's voor klanten | EU (Frankfurt) |
| Stripe Payments Europe, Ltd. | Abonnementsfacturatie van salons | EU / VS |
| PDOK / Kadaster | Geocoderen van alleen adressen van salons — geen klantgegevens | Nederland |
Alle persoonsgegevens van uw klanten worden opgeslagen binnen de Europese Unie. Cloudflare verwerkt verkeer onderweg op zijn wereldwijde edge-netwerk; die doorgifte valt onder de verwerkersvoorwaarden van Cloudflare en de EU-modelcontractbepalingen.