Pattio · legal

Privacybeleid

Laatst bijgewerkt: 28 september 2026 (versie 1.2)

In drie zinnen

Pattio werkt volledig op je apparaat en zonder account: maak je er geen aan, dan staat er nergens iets van ons. Maak je er wel een aan, dan reist wat je synchroniseert versleuteld met een sleutel die alleen jouw apparaten hebben en die wij niet hebben en ook niet kunnen herstellen. De enige uitzondering, en die zeggen we duidelijk omdat ze belangrijk is, is wat jij bewust deelt: dat moet leesbaar zijn voor de server zodat de uitgenodigde mensen het kunnen openen, en dus zouden ook wij het kunnen lezen. En het gaat precies om dat en niets meer: deel je één element, dan kan de server alleen dat element lezen en de naam van het bord waar het vandaan komt; de rest van het bord — de andere notities, de zones, de krabbels — blijft versleuteld. Deel je het hele bord, dan geldt het wel voor alles.

In de app zitten geen advertenties, geen trackers en geen verkoop van gegevens aan wie dan ook, en dat blijft zo. Wat er sinds augustus 2026 wel is, is een pseudonieme productanalyse: een handvol namen van acties — “de app is geopend”, “er is een kaart van het type poll toegevoegd” — zonder tekst van jou, zonder identificatiecode van JOU en zonder cijfers, op servers in de Europese Unie en met een schakelaar om haar uit te zetten in Instellingen ▸ Privacy en beveiliging ▸ Privacy (§3.7). We zeggen “pseudoniem” en niet “anoniem” omdat er een willekeurige identificatiecode van deze installatie meereist — die niet je naam, je e-mailadres of je account is, en die wordt gewist zodra je de schakelaar uitzet. Daarnaast heeft de webpagina die opent met gedeelde links haar eigen bezoekersanalyse, die alleen werkt als wie er komt ja zegt (§3.6), en deze site heeft de zijne (§3.11). En het Pattio-nieuws krijg je, als je het aan hebt staan en toestemming voor meldingen hebt gegeven, als melding: daarvoor wordt een Apple-meldingstoken opgeslagen dat op geen enkele manier aan je account is gekoppeld (§3.13).

1. Wie de verwerkingsverantwoordelijke is

Er is geen functionaris voor gegevensbescherming: de activiteit valt niet onder de gevallen waarvoor artikel 37 van de Algemene verordening gegevensbescherming (AVG) er een verplicht stelt.

  • Verwerkingsverantwoordelijke: Joan Cama Ribot
  • Handelsnaam: Somia Digital
  • Fiscaal nummer (NIF): 41531670H
  • Adres: Carrer de Sant Joan, 16, 17200 Palafrugell (Girona), Spanje
  • Contact-e-mail: hola@somiadigital.com

2. Het principe: lokaal eerst

Pattio is een local-first-app. De borden, notities, foto’s, tekeningen en alles wat je erop zet, worden opgeslagen in de database van je apparaat. Zonder account gaat er geen byte van je telefoon naar een server van ons: er is geen kopie in de cloud, geen identificatiecode van ons en geen bestand van ons.

Een account aanmaken is optioneel en dient voor één ding: synchroniseren tussen je apparaten en, als je wilt, borden delen.

3.1. Het account

Log je in met Apple, dan kun je je e-mailadres verbergen: Apple geeft ons een doorstuuradres en wij zien het echte niet. Log je in met Google, dan verzorgt Google de controle. De app vraagt Apple om je volledige naam, maar slaat die nergens op: hij gebruikt alleen het identiteitstoken.

De vingerafdruk van de sleutel is een ingekorte cryptografische samenvatting (afgekapte SHA-512). Daarmee kun je de sleutel niet reconstrueren en niets ontsleutelen: hij dient alleen om te vergelijken.

De aanvaarding van de Voorwaarden wordt op je apparaat opgeslagen als je het welkomstscherm afrondt (of overslaat), en bevat maar twee dingen: de versie van het document en het tijdstip. Geen identificatiecode, geen taal, geen persoonsgegevens. Heb je een account, dan reist ze net als de rest mee in de versleutelde vault — wij kunnen haar dus niet lezen —, en heb je er geen, dan verlaat ze je apparaat niet. Wie Pattio al had geïnstalleerd voordat dit bestond, heeft er geen, en we verzinnen er ook geen: een aanvaarding die niemand heeft gezien, is geen bewijs.

  • E-mailadres — je identificeren en je laten inloggen (code per e-mail, Apple of Google) — rechtsgrond: uitvoering van de overeenkomst, art. 6.1.b AVG — zolang het account bestaat.
  • Gebruikers-ID (UUID) — je inhoud aan je account koppelen — art. 6.1.b — zolang het account bestaat.
  • Vingerafdruk van de sleutel (key_check) — je waarschuwen als een apparaat een sleutel heeft die niet de jouwe is — art. 6.1.b — zolang het account bestaat.
  • Aanvaarde versie van de Voorwaarden en wanneer — kunnen zeggen welke versie van de overeenkomst je hebt aanvaard en op welke dag — art. 6.1.b (bewijs van het bestaan van de overeenkomst) — zolang het account bestaat.

3.2. De inhoud van PRIVÉBORDEN

Deze inhoud reist en wordt opgeslagen end-to-end versleuteld met XSalsa20-Poly1305 (NaCl secretbox). De sleutel wordt op je apparaat gegenereerd, staat in de iOS-sleutelhanger en bereikt ons nooit. Wij zien een onleesbaar blok bytes.

Hoe de sleutel op je tweede apparaat komt, en wat dat kost. Zodat je niets hoeft over te typen als je vanaf je iPad of Mac op hetzelfde account inlogt, wordt de sleutel ook opgeslagen als synchroniseerbaar onderdeel van de sleutelhanger (de iCloud-sleutelhanger): zo reist hij vanzelf tussen de apparaten met hetzelfde Apple Account, end-to-end versleuteld door Apple, en komt hij nooit langs onze server. Wij zien hem nog steeds niet.

Wat dat kost, en dat zeggen we hier en niet in een voetnoot: het koppelt de beveiliging van je inhoud aan die van je Apple Account — wie in iemands iCloud-sleutelhanger komt, heeft de sleutel die diens borden ontsleutelt. Het is precies dezelfde afspraak die de sleutelhanger al maakt met al je wachtwoorden, dat van je bank inbegrepen. De herstelcode blijft bestaan en blijft het reserveonderdeel: voor wie de iCloud-sleutelhanger uit heeft staan, bij een wissel van Apple Account en voor wie een sleutel wil die niet van Apple afhangt.

Raak je de sleutel en de herstelcode kwijt, dan kan niemand terughalen wat er was — wij ook niet. Dat is de prijs van echte versleuteling, en het is goed om dat vooraf te weten, niet achteraf.

Verwerkte gegevens: versleutelde inhoud van borden, zones, elementen en lijnen, en versleutelde bestanden (foto’s, video’s, scans, tekeningen, documenten) — doel: je tussen apparaten synchroniseren — rechtsgrond: art. 6.1.b AVG — termijn: tot je het verwijdert of je account verwijdert.

Wat we wél zien, ook al is de inhoud versleuteld (en wat niet te verbergen valt als de synchronisatie moet werken):

  • uit welke tabel elke rij komt (een element, een bord, een zone…);
  • de identificatiecode van de rij (een UUID die op je apparaat is gegenereerd, zonder betekenis);
  • de tijdstempels van aanmaken, wijzigen en verwijderen;
  • het pad en de grootte in bytes van elk bestand, want zo tellen we de ruimte die je gebruikt en dat is waarvoor je betaalt.
  • Oftewel: we kunnen weten dat je 412 elementen hebt en dat je er op een dinsdag om elf uur een hebt aangeraakt, maar niet wat erin staat.

3.3. De inhoud van wat je DEELT

Hier is er geen end-to-end-versleuteling, en dat moet onomwonden gezegd worden. Wat opent in de browser van iemand die jouw sleutel niet heeft, moet daar leesbaar aankomen, en wordt dus leesbaar op de server opgeslagen. Zolang het gedeeld is, zou wie onze infrastructuur beheert de inhoud en de foto’s ervan kunnen lezen. Als je stopt met delen, reist het weer versleuteld.

En “het” is precies wat je hebt gedeeld en niets meer. Er zijn twee niveaus, en allebei worden ze in woorden benoemd voordat je ze kiest: deel je één element, dan komen dat element, de foto’s ervan en de naam (met emoji en kleur) van het bord waar het vandaan komt onversleuteld naar buiten — de pagina van de ontvanger moet kunnen zeggen waar het vandaan komt —, en de rest van het bord blijft versleuteld; deel je het hele bord, dan komt er wel alles onversleuteld naar buiten: alle notities, zones, krabbels, schriften en foto’s.

De vuistregel: wat je niet op een server zou zetten, deel je niet via een link.

Uitgenodigde mensen krijgen een anonieme sessie: we vragen ze geen e-mailadres, geen account en geen enkel gegeven behalve de naam die ze zelf invullen.

Wie de naam van een gast precies ziet. De naam dient om bij een poll te weten wie wat heeft gestemd — dus zien de andere mensen die datzelfde kunnen lezen hem, en verder niemand. En een precisering die de andere kant op gaat en ook klopt: de stemmen van de eigenaar en van leden met een account verschijnen zonder naam, omdat zij niet op de gastenlijst staan. De pagina toont de naam als ze die kent en altijd het aantal, en verzint geen “Iemand”.

  • ONVERSLEUTELDE inhoud van wat je deelt en van de bestanden ervan — zodat de uitgenodigde mensen het in de browser kunnen openen — art. 6.1.b — tot je stopt met delen of het verwijdert.
  • E-mailadres van uitgenodigde mensen — ze toegang geven als ze met dat e-mailadres inloggen — art. 6.1.b — tot je de uitnodiging intrekt.
  • Naam die wie een gastenlink opent invult — zodat de anderen weten wie er iets heeft geschreven en wie heeft gestemd — art. 6.1.b — tot er niet meer gedeeld wordt.
  • Stemmen in de polls van een gedeeld bord — de stemmen tellen — art. 6.1.b — idem.
  • Linktokens — het bord zonder account openen — art. 6.1.b — tot je ze intrekt.
  • Is wat gedeeld is het hele bord, dan zien wie het bord hebben (eigenaar, leden en de andere gasten van die link) de naam van de gast.
  • Is wat gedeeld is één element, dan zien ze de naam alleen via dat element, en alleen van de gasten die erop hebben gestemd: wie de link van een poll opent, krijgt niet de gastenlijst van het bord.
  • Het linktoken van een gast ziet nooit een andere gast. De server geeft alleen de naam en de identificatiecode van de stem, nooit iets anders uit diens rij.

3.4. Aankopen

De abonnementen worden door Apple afgerekend via je App Store-account: wij zien nooit je kaart, je factuurnaam of je adres. Wie ons vertelt “deze persoon heeft Plus” is RevenueCat, een tussenpersoon voor abonnementen aan wie we je gebruikers-ID doorgeven (en niets anders: geen e-mailadres, geen naam). De SDK van RevenueCat verzamelt op eigen houtje technische gegevens van het apparaat voor zijn functie (bijvoorbeeld de identificatiecode voor leveranciers (IDFV) van Apple, het model en het land); dat doet RevenueCat zelf en het staat beschreven in zijn eigen beleid.

  • Gebruikers-ID en geschiedenis van aankopen en verlengingen — weten welk abonnement je hebt en hoeveel ruimte je toekomt — art. 6.1.b — zolang het account bestaat.

3.5. De toestemmingen van het apparaat

Pattio vraagt niet om contacten, gezondheid, Bluetooth of lokaal netwerk, en gebruikt nooit je locatie op de achtergrond.

De herinneringen van je elementen zijn LOKAAL, en dat betekent iets concreets. Als je vraagt of een aftelling, een komende gebeurtenis of een gewoonte je een seintje geeft, vraagt Pattio het besturingssysteem van je telefoon je op een bepaald tijdstip te wekken. Deze herinneringen gaan niet via een server en worden nooit van buitenaf verstuurd: we ontvangen nooit een melding van jou en kunnen niet weten of er een bij je is aangekomen of of je hem hebt geopend. Wat op je toegangsscherm verschijnt, is de titel van het element en verder niets — nooit wat er in de kaart staat.

Het Pattio-nieuws is iets anders: dat versturen wij, vanaf een server, en het wordt bezorgd door de meldingsdienst van Apple. We leggen het volledig uit in §3.13.

De Spotlight-index bevat titels en verder niets. Zodat je een bord of kaart kunt vinden via de zoekfunctie op je beginscherm, zet Pattio in de Spotlight-index de naam van het bord, de titel van het element, de emoji ervan en het adres dat het opent. Meer niet: niet de tekst van een notitie, niet de regels van een lijst, geen transcriptie en geen miniatuur. Die index is van het besturingssysteem van je telefoon: hij staat op hetzelfde apparaat, niemand synchroniseert hem en wij ontvangen er nooit iets van. Verwijder je de app, dan verdwijnt hij.

De app-vergrendeling wordt beheerd door iOS, en wij ontvangen niets van je. Zet je de vergrendeling aan (Instellingen ▸ Privacy en beveiliging ▸ Vergrendeling), dan vraagt Pattio het SYSTEEM je te herkennen met Face ID, Touch ID of de toegangscode van je apparaat. Pattio ontvangt nooit biometrische gegevens — niet je gezicht, niet je vingerafdruk, niet je code —: wat binnenkomt, is een ja of een nee, en daarvan wordt niets opgeslagen en niets verlaat je telefoon. Het enige wat wordt opgeslagen, is of de vergrendeling aanstaat en na hoelang ze het je opnieuw vraagt, en dat zijn allebei keuzes van dit apparaat die nergens heen reizen.

En de vergrendeling kan vanzelf uitgaan, in één geval en alleen dat. Verwijder je de toegangscode van je telefoon terwijl de vergrendeling van Pattio aanstaat, dan is er op dit apparaat geen sleutel meer die haar kan openen: dan opent Pattio toch, zegt het je met een melding en slaat de instelling uitgeschakeld op. Dat is bewust, en we zeggen het hier omdat het een beslissing is en geen fout — een lokale vergrendeling is een gordijn voor wie je telefoon in handen heeft, geen kluis tegen jezelf —: de strikte lezing zou je voorgoed buitensluiten van je eigen notities, zonder dat je zelfs bij de schakelaar kunt die haar uitzet. Om dezelfde reden opent de app als de instelling niet gelezen kan worden.

  • Camera — als je een foto maakt om hem op het bord te zetten — de foto gaat naar het bord, net als elke andere.
  • Fotobibliotheek — als je een foto of video kiest — idem.
  • Locatie (alleen bij gebruik) — alleen als je op “Huidige locatie” tikt — de coördinaten zet Apple om in een adres. Bewaar je de kaart op een gesynchroniseerd bord, dan gaan ze versleuteld mee (of onversleuteld als het bord gedeeld is). Het weer vraagt nooit om deze toestemming: heb je die al gegeven, dan leest het het laatst opgeslagen punt en rondt het af (§3.10).
  • Microfoon en spraakherkenning — als je op “Neem op” tikt om een spraakmemo op het bord te zetten of een lijst te dicteren — het geluid blijft op je apparaat: de transcriptie doet je eigen telefoon en wordt niet naar ons of naar Apple gestuurd.
  • Agenda en Herinneringen — als je er een agendakaart op zet — worden op het apparaat gelezen en gaan daar niet weg. We uploaden er niets van.
  • Meldingen — de eerste keer dat je een herinnering voor een element aanzet, of als je “Pattio-nieuws” aanzet in Instellingen ▸ Herinneringen; nooit bij het opstarten — voor herinneringen: niets, de melding wordt door je eigen apparaat gepland en bezorgd; voor het nieuws: wat §3.13 zegt.

3.6. Het webportaal voor gasten en zijn analyse

Deze sectie gaat ALLEEN over de webpagina die opent als iemand je een Pattio-link stuurt (app.pattio.app). Wat deze sectie beschrijft — Google Analytics, cookies en een banner — bestaat NIET in de app en zal er ook niet komen. De app heeft zijn eigen productanalyse, en dat is iets anders, met een andere leverancier en een eigen schakelaar: §3.7.

Wat het portaal altijd opslaat, en waarom we je geen toestemming vragen. Als je een link opent, slaat de browser een anonieme sessie op waarmee je het bord in komt. Zonder die sessie is er geen pagina. Het is strikt noodzakelijke opslag om je de dienst te leveren waar je om hebt gevraagd, en daarom stelt artikel 5, lid 3, van de e-privacyrichtlijn haar vrij van toestemming. We vragen je geen toestemming voor iets zonder welk de link niet zou openen.

Wat het portaal NIET doet zonder je toestemming. Als het portaal analyse heeft ingesteld, vraagt het je voordat het iets meet, met een melding met twee even makkelijke opties: accepteren en weigeren. Zolang je niet antwoordt, en ook als je nee zegt, wordt er geen byte van Google geladen en geen meetcookie opgeslagen. De pagina ziet er precies hetzelfde uit en werkt precies hetzelfde, of je nu ja of nee zegt: er is geen muur.

Verwerkt gegeven: paginabezoek (welk van de drie soorten pagina’s, het land bij benadering, afgeleid van het IP-adres, browser en soort apparaat) — doel: weten hoeveel mensen gedeelde links openen — rechtsgrond: art. 6.1.a, jouw toestemming, en alleen die — termijn: wat in de Google Analytics-property is ingesteld.

Wat er NOOIT naartoe gaat, en dat is het belangrijke deel: het linktoken — dat de sleutel van het bord is —, geen enkele identificatiecode van een bord of element, geen naam van een gast en geen inhoud. Het pad dat wordt verstuurd, is niet dat van de adresbalk maar een van drie vaste tekenreeksen (/convidat, /e of /), en dat staat met dat ene doel in de code. Er is ook geen enkele aangepaste gebeurtenis: één bezoek en verder niets.

Wie het verwerkt. Google Ireland Limited / Google LLC als verwerker, met geanonimiseerd IP-adres (Google Analytics 4 doet dat standaard), met Google-signalen en advertentiepersonalisatie uitgeschakeld en met Consent Mode v2 ingesteld met standaard alle toestemmingen geweigerd. De doorgiften naar de Verenigde Staten gebeuren op basis van de modelcontractbepalingen en het EU-VS Data Privacy Framework (§4).

Je kunt altijd van gedachten veranderen. Onderaan elke pagina van het portaal staat “Cookies”, waarmee de vraag opnieuw opengaat. Je keuze wordt twaalf maanden in je eigen browser onthouden en vermeldt de versie van de doeleinden: als die ooit veranderen, wordt het opnieuw gevraagd in plaats van een “ja” van een ander moment te gebruiken.

En op dit moment staat dit uit. Zolang er in het portaal geen analyse-property is ingesteld, is er geen melding en geen meting: de pagina slaat alleen de anonieme sessie uit de eerste alinea op.

3.7. De productanalyse van de app

Wat het is. Sinds augustus 2026 stuurt de app een handvol pseudonieme gebruiksmetingen die voor één ding dienen: weten welke functies echt worden gebruikt en beslissen waar het de moeite waard is werk in te steken. Het is geen reclame, geen tracking en heeft niets te maken met de meting van het webportaal (§3.6), dat een ander systeem is, op een andere plek en met een andere vraag.

Je zet het met één tik uit, en je verliest niets. De schakelaar staat in Instellingen ▸ Privacy en beveiliging ▸ Privacy. Hij staat standaard aan, en datzelfde scherm toont je — uit de code gelezen en niet met de hand geschreven — de volledige, letterlijke lijst van de namen die de app kan versturen. Uitzetten haalt geen enkele functie uit de app.

Wat er NOOIT wordt verstuurd, en dat is het belangrijke deel: geen tekst en geen inhoud van jou (geen titels, notities, foto’s, bestanden of tekeningen), geen identificatiecode van een bord, element of gedeelde link, geen naam of e-mailadres, geen cijfers (niet hoeveel borden je hebt, niet hoeveel ruimte je gebruikt, geen coördinaten) en niets over wie met wie deelt. In de code zit een filter met een gesloten lijst van wat het apparaat mag verlaten, er is geen weg die eromheen gaat, en er zijn automatische tests die dat bij elke wijziging controleren.

En er gaat ook niets van je apparaat mee. Meetdiensten sturen standaard de schermgrootte, het model en het type apparaat, het besturingssysteem en de versie ervan, de taal en de tijdzone mee. Pattio knipt dat allemaal weg voordat het het apparaat verlaat, met hetzelfde filter met een gesloten lijst.

Pseudoniem, en het woord doet ertoe. Er wordt geen gebruikers-ID verstuurd, niet je e-mailadres, en er wordt geen persoonsprofiel gemaakt. Geolocatie op basis van het IP-adres staat uit en sessie-opname (“session replay”) ook: de app neemt nooit het scherm op. Wel blijft de willekeurige installatie-ID dezelfde zolang de schakelaar aanstaat, en dus kunnen de metingen van één apparaat met elkaar worden gegroepeerd. Dat is geen anonimiteit in de zin van de AVG — het is pseudonimisering —, en daarom is de rechtsgrond het gerechtvaardigd belang (art. 6.1.f) met recht van bezwaar.

Waar het heen gaat. Naar PostHog (EU Cloud, Frankfurt, Duitsland, Europese Unie), op eu.i.posthog.com, als verwerker (§4). En als de app er geen sleutel voor heeft, verstuurt hij niets: een build zonder de sleutel van de dienst blijft “in de wacht” staan en er wordt niets geïnitialiseerd, ook al lijkt de schakelaar aan te staan.

  • De naam van een actie in de app, en verder niets: de app openen, het welkomstscherm afronden, de gids openen en een bord aanmaken hebben verder niets bij zich. Vier hebben een label uit een gesloten lijst: van weergave wisselen (prikbord of raster), een kaart toevoegen (notitie, poll, foto…), het thema wijzigen (licht, donker of dat van het systeem) en een aankoop starten of voltooien (Plus of Pro) — doel: weten welke functies worden gebruikt, om te beslissen waar we aan werken — rechtsgrond: art. 6.1.f, gerechtvaardigd belang, met recht van bezwaar, en dat is letterlijk de Privacy-schakelaar — termijn: de bewaartermijn voor gebeurtenissen die in het PostHog-project is ingesteld.
  • De versie van de app die de meting heeft verstuurd — weten van welke versie het signaal komt — art. 6.1.f — dezelfde termijn.
  • Een willekeurige identificatiecode van deze installatie, die de meetdienst aanmaakt en die niet je naam, je e-mailadres of je account is — zodat twee metingen van hetzelfde apparaat niet als twee mensen worden geteld — art. 6.1.f — dezelfde termijn, en ze wordt van het apparaat gewist als je de schakelaar uitzet.

3.8. Wat we NIET verwerken

Zodat het gezegd is en je het kunt controleren door de code te openen:

  • Geen analyse die je volgt. Er is geen Firebase, geen Amplitude, geen Mixpanel, geen Segment en niets wat je van de ene app naar de andere of over het web volgt. De enige metingen in het hele project zijn de productanalyse van de app (§3.7), pseudoniem, met een schakelaar en gebaseerd op gerechtvaardigd belang, de bezoekersanalyse van het gastenportaal (§3.6) en die van deze website (§3.11); die laatste twee alleen met je toestemming.
  • Geen automatische foutrapporten. Er is geen Sentry en geen Crashlytics.
  • Geen marketingmeldingen van derden en geen token dat aan een persoon is gekoppeld. Het Pattio-nieuws (§3.13) is de enige externe melding — algemene teksten van ons, nooit reclame van derden en niets gepersonaliseerds —, en van het token ervan weet niemand van wie het is. De herinneringen van je elementen worden door je eigen telefoon gepland en bezorgd (§3.5).
  • Geen reclame en geen advertentienetwerk.
  • Geen tracking. De app vraagt geen toestemming voor tracking (ATT) omdat hij die niet nodig heeft: hij gebruikt de IDFA of een andere advertentie-ID niet, en deelt geen gegevens van jou met derden voor reclamedoeleinden of met een databroker.
  • Geen profilering en geen geautomatiseerde besluiten met rechtsgevolgen (art. 22 AVG).
  • Geen verkoop of overdracht van gegevens aan wie dan ook.

3.9. Kunstmatige intelligentie: helemaal op je apparaat

In deze versie is er geen enkele AI-route naar de cloud actief. Er wordt niet aangeboden een foto, scan of link te lezen om je voor te stellen wat eruit moet komen (de “slimme vastlegging”), en er zit geen assistent in de app. Beide functies zijn geschreven en getest, maar worden nergens getoond — geen knop, geen rij, geen opdracht —, en dus is er niets wat tekst naar een AI-server kan sturen. Daarom vraagt deze versie je ook geen toestemming om dat te doen: er valt niets toe te staan. Op de dag dat ze terugkomen, legt deze sectie het weer volledig uit, en voordat er iets gebeurt.

Wat Pattio wél doet, doet het volledig BINNEN je telefoon, en dat zijn drie dingen: de tekst in je foto’s en scans lezen, zodat je ze kunt terugvinden op de woorden die erin staan (dat doet Vision, de tekstherkenner van Apple, op het apparaat en op de achtergrond); zoeken op betekenis, met het embeddingmodel van Apple op het apparaat; en een notitie of lijst dicteren, met de spraakherkenner van Apple, die verplicht offline werkt. Bij geen van de drie verlaat er iets je telefoon.

De tekst in foto’s, in detail. Wat eruit wordt gelezen, wordt in de kaart opgeslagen, in je versleutelde vault, en is dus een gegeven van jou, net als het bijschrift van een foto: het wordt op geen enkel scherm als tekst getoond — niet op de kaart, niet in de pdf, niet op de webpagina van een gedeeld bord —, en het enige wat de app ermee doet, is je erin laten zoeken. Deel je het bord, dan reist het met de kaart mee langs dezelfde weg waarlangs de hele foto al reist.

Met een nuance die we beter volledig kunnen zeggen: de samenvatting van een gedeeld bord — de lijst onderwerpen die de gast bovenaan de pagina ziet — wordt gemaakt met de woorden die het vaakst op de kaarten voorkomen, en die uit een gelezen foto tellen net zo mee als die van elke andere. Dat kan alleen gebeuren als je het hele bord hebt gedeeld.

Je kunt het uitzetten in Instellingen ▸ Privacy en beveiliging ▸ “Tekst in foto’s lezen”. Dan wordt er niets meer gelezen; tekst die al is gelezen, blijft in de kaarten, en om die te verwijderen verwijder je de foto.

3.10. Het weer

Pattio toont het weer op twee plekken: de widget op het beginscherm en het element “Weer” dat je op een prikbord kunt prikken. Beide werken hetzelfde en deze alinea geldt voor allebei.

De voorspelling komt van Apple WeatherKit, de dienst van het besturingssysteem. Er is geen andere leverancier: als WeatherKit niet antwoordt, wordt niemand anders gebeld en zegt de kaart dat in woorden.

Wat het apparaat verlaat: twee afgeronde coördinaten en verder niets. Voordat er iets wordt opgevraagd, wordt de positie afgerond op één decimaal van een graad (zo’n 11 km) — genoeg om het weer goed te hebben en te weinig om te zeggen waar je bent. Er gaat geen identificatiecode mee, niet je account en geen gegevens van het bord. iOS doet de opvraging namens de app, en het gegevensbeleid van Apple WeatherKit is erop van toepassing.

Waar de positie vandaan komt, en wat we NIET doen om haar te krijgen. Het weer “waar je bent” leest het laatste punt dat het systeem al had opgeslagen: het zet de gps niet aan, vraagt geen toestemming en gebruikt nooit je locatie op de achtergrond. Is er geen toestemming voor locatie gegeven, dan is er geen opvraging: de kaart legt het uit en je kunt een vaste plek kiezen, en alleen die wordt in de rij opgeslagen.

Wat wordt opgeslagen. Van het weer wordt niets opgeslagen, behalve een kopie van de laatste meting (de graden, de toestand en het tijdstip) in de kaart, zodat de pdf die je exporteert en de webpagina voor gasten iets kunnen laten zien. Niets daarvan wordt naar een server van ons gestuurd, en de rest van de voorspelling bestaat alleen in het geheugen en verloopt na een uur.

3.11. Deze website: het ondersteuningsformulier en de analyse

Deze sectie gaat ALLEEN over pattio.app, de pagina die Pattio presenteert. Hier zijn geen gebruikersaccounts en de inhoud van je borden komt hier nooit langs.

Schrijf je ons via het ondersteuningsformulier, dan laat je je e-mailadres achter, je bericht en de taal waarin je surft; je naam is optioneel en mag je leeg laten. We gebruiken ze om je te antwoorden, en voor niets anders. De rechtsgrond is je toestemming (art. 6.1.a AVG), die je altijd kunt intrekken door te schrijven naar hola@somiadigital.com. Het formulier wordt beheerd door Netlify, de verwerker uit §4 die de site host: het bericht blijft in hun dashboard staan en komt per e-mail bij ons binnen. We bewaren het zolang nodig is om je vraag af te handelen en uiterlijk twaalf maanden nadat die is afgesloten.

Deze site gebruikt ook Google Analytics 4, en alleen als je dat accepteert in de cookiemelding. Antwoord je niet, of weiger je, dan wordt er geen byte van Google geladen. Wat er precies in je browser wordt opgeslagen en hoe je je keuze wijzigt, staat in het Cookiebeleid (/nl/cookies).

3.12. De brievenbus “Ideeën en bugs” in de app

Vanuit de app (Instellingen ▸ Over ▸ “Ideeën en bugs”) kun je ons een idee, een bug, een verbetering of wat dan ook sturen. Je hebt er geen account voor nodig.

Wat er wordt verstuurd: de tekst die je schrijft en het soort dat je kiest (idee, bug, verbetering, anders); je e-mailadres, alleen als je het invult; een screenshot, alleen als je er een bijvoegt (je kiest hem zelf uit je fotobibliotheek); en de versie van de app, het buildnummer, het platform en de taal. Niets van je prikbord: geen borden, geen kaarten, geen foto’s, niet je account en geen identificatiecode.

Waar het heen gaat. Naar een serverfunctie van Supabase, in de Europese Unie, die het bericht in een tabel opslaat en, als de meldingsmail aanstaat, een kopie naar het team stuurt met Resend (Resend, Inc., regio eu-west-1, Ierland, Europese Unie). De screenshot wordt niet in de tabel opgeslagen: hij reist alleen mee als bijlage van die e-mail.

Het IP-adres. Om misbruik te voorkomen, tellen we de berichten die op één dag van dezelfde plek komen. We slaan het IP-adres niet op, maar een versleutelde vingerafdruk met de dag erin: die is niet terug te draaien, is de volgende dag onbruikbaar en koppelt geen berichten van verschillende dagen aan elkaar.

Als het bericht niet via de server gaat, opent de app de mail-app van je telefoon met de geschreven tekst: dan verstuur je het zelf, met je eigen adres, en zonder screenshot.

De rechtsgrond is het gerechtvaardigd belang (art. 6.1.f AVG) om de app te verbeteren. Je e-mailadres, als je het invult, dient om dat bericht te beantwoorden en verder niets.

We bewaren elk bericht tot 12 maanden, of korter als de zaak eerder is afgesloten. Wil je dat we het eerder wissen, schrijf dan naar hola@somiadigital.com.

  • Tekst en soort van het bericht, e-mailadres (als je het invult), screenshot (als je er een bijvoegt; reist alleen mee in de e-mail van Resend), versie, build, platform en taal van de app, en een dagelijkse vingerafdruk van het IP-adres — lezen wat je ons vertelt en, als er een e-mailadres is, je antwoorden — art. 6.1.f, gerechtvaardigd belang — tot 12 maanden, of korter als de zaak eerder is afgesloten.

3.13. Het Pattio-nieuws

Wat het is. Algemene teksten — versienieuws, mededelingen — die wij schrijven en vanaf een server versturen. Nooit reclame van derden en nooit iets gepersonaliseerds. De herinneringen van je elementen zijn iets anders en blijven lokaal (§3.5).

Hoe het binnenkomt. In de app, in een nieuwsoverzicht: bij het openen vraagt de app Supabase om de lijst met gepubliceerd nieuws zonder iets van jou mee te sturen (Supabase ziet daarbij je IP-adres, zoals bij elk verzoek), en de afbeeldingen van dat nieuws worden ook vanaf Supabase geleverd. Het “al gezien” wordt alleen op je apparaat opgeslagen. En, als je wilt, als melding, bezorgd door de pushberichtendienst van Apple (APNs).

De schakelaar, en wanneer om toestemming wordt gevraagd. Die staat in Instellingen ▸ Herinneringen ▸ “Pattio-nieuws”. Hij staat standaard aan, maar de app vraagt bij het openen nooit om toestemming voor meldingen. Had je Pattio al toestemming voor meldingen gegeven (bijvoorbeeld voor een herinnering) en heb je het nieuws niet uitgezet, dan registreert de app het token bij het openen, zonder nieuwe vraag. Had je die niet gegeven, dan gebeurt er niets tot je “Pattio-nieuws” aanzet, en dan vraagt iOS het je. Met de schakelaar uit verschijnt ook het nieuwsoverzicht in de app niet.

Wat we opslaan. Heb je het aanstaan en toestemming voor meldingen gegeven, dan slaat dit apparaat in onze database (Supabase) een Apple-meldingstoken op, een willekeurige identificatiecode van deze installatie — die de app aanmaakt en die geen identificatiecode van Apple is —, de taal, de versie van de app, het platform (iOS) en de APNs-omgeving (test of productie). Meer niet: niet je account, niet je e-mailadres, niets van wat je in Pattio hebt en niet je IP-adres.

En de database staat niet toe dat dat token aan een account wordt gekoppeld: een beperking dwingt de gebruikerskolom leeg te blijven, zodat het niet kan, niet nu en niet per ongeluk in een toekomstige versie. De tabel is afgesloten: geen enkele openbare rol kan hem rechtstreeks lezen of beschrijven.

Hoe je het uitzet, en wat er wordt gewist. Zet je “Pattio-nieuws” uit, dan wissen we het token van de server en wordt de rij als uitgeschakeld gemarkeerd; de app registreert er geen nieuw. Zegt Apple dat een token niet meer geldig is (bijvoorbeeld omdat de app is verwijderd), dan deactiveert de server het vanzelf. De uitgeschakelde rij — de willekeurige identificatiecode, de taal en de versie, al zonder token — wordt bewaard zolang de installatie bestaat.

De rechtsgrond is het gerechtvaardigd belang (art. 6.1.f AVG), met recht van bezwaar, en dat is de schakelaar “Pattio-nieuws”, net als bij de productanalyse (§3.7).

  • Apple-meldingstoken (APNs), willekeurige identificatiecode van deze installatie, taal, versie van de app, platform en APNs-omgeving — je het Pattio-nieuws als melding bezorgen — art. 6.1.f, gerechtvaardigd belang, met recht van bezwaar, en dat is de schakelaar “Pattio-nieuws” — het token tot je het nieuws uitzet of Apple zegt dat het niet meer geldig is; de uitgeschakelde rij, al zonder token, zolang de installatie bestaat.

4. Wie er nog meer aan zit (verwerkers)

Wij hebben geen eigen servers: we huren die van anderen. Met allemaal is een verwerkersovereenkomst gesloten (art. 28 AVG).

Internationale doorgiften. RevenueCat, Apple en Google zitten in de Verenigde Staten. Deze doorgiften gebeuren op basis van de modelcontractbepalingen van de Europese Commissie en, waar van toepassing, het EU-VS Data Privacy Framework. Netlify zit ook in de Verenigde Staten, en de grondslag voor die doorgifte zijn de modelcontractbepalingen van de Europese Commissie die in zijn verwerkersovereenkomst zijn opgenomen. Resend verwerkt de gegevens binnen de Europese Unie, in de regio eu-west-1 (Ierland). Je kunt ons om een kopie van de waarborgen vragen via hola@somiadigital.com.

  • Supabase Inc. — database en authenticatie, het Pattio-nieuws (§3.13) en de brievenbus “Ideeën en bugs” (§3.12) — eu-central-1 (Frankfurt, Duitsland), binnen de Europese Unie.
  • Cloudflare, Inc. (R2) — opslag van de gesynchroniseerde bestanden (versleuteld als het bord privé is) — Cloudflare-netwerk; bucket in West-Europa.
  • Cloudflare, Inc. (update-Worker) — de app bij het openen laten weten of er een nieuwe versie van zijn code is (zie “Derden die je IP-adres zien”) — Cloudflare-netwerk.
  • RevenueCat, Inc. — status van de abonnementen — VS.
  • Apple Inc. — betaling, inloggen met Apple, de bezorging van het Pattio-nieuws (APNs, §3.13), kaarten, het zoeken naar nummers en de gegevens van nummers uit Apple Music, en het weer (WeatherKit, §3.10) — VS / wereldwijd.
  • Google LLC — inloggen met Google, alleen als je die weg kiest; en de bezoekersanalyse van de webpagina’s, alleen als je toestemming geeft (§3.6 en §3.11). Gemini speelt in deze versie geen rol: er is geen AI-route naar de cloud (§3.9) — VS / wereldwijd.
  • PostHog, Inc. — productanalyse van de app, pseudoniem en alleen zolang je die niet uitzet (§3.7) — EU Cloud, Frankfurt, Duitsland, Europese Unie (eu.i.posthog.com).
  • Netlify, Inc. (San Francisco, Verenigde Staten) — hosting van deze website en van het gastenportaal, en het ondersteuningsformulier van deze site (§3.11).
  • Resend, Inc. — een kopie van de berichten uit de brievenbus “Ideeën en bugs” per e-mail naar het team sturen, met de screenshot als die er is (§3.12) — eu-west-1 (Ierland), binnen de Europese Unie.

Derden die je IP-adres zien (en waarom)

Er zijn vijf momenten waarop je apparaat rechtstreeks praat met iemand die niet wij is. We sturen ze niets van jou; jij gaat erheen.

  • Linkvoorvertoningen. Als je een adres plakt — of er vanuit een andere app een pagina naartoe deelt — haalt Pattio de titel en de afbeelding rechtstreeks vanaf je apparaat op. Die website ziet je IP-adres, alsof je hem in je browser had bezocht. (Dat doen we bewust zo: het via een server van ons laten lopen, zou betekenen dat wij alle links zouden zien die je bewaart.) Voor een paar bekende platforms — YouTube, Reddit, Spotify, Instagram, Facebook, TikTok, Pinterest — worden de gegevens bij hun eigen embeddienst opgevraagd in plaats van de pagina te lezen, en wordt de omslagafbeelding op je apparaat opgeslagen, omdat hun adressen binnen een paar dagen verlopen.
  • Nummers zoeken. Wat je typt, gaat naar de iTunes-zoekfunctie van Apple.
  • Geplakte nummers uit Apple Music. Als je een Apple Music-link plakt, vraagt je telefoon de gegevens op bij de dienst van Apple met de catalogus-ID van het nummer en verder niets: geen account, geen sessie. Apple ziet alleen je IP-adres.
  • Kaarten en adressen. De kaarten en het omzetten van coördinaten naar een adres doet Apple.
  • Updates van de app. Bij het openen vraagt de app aan updates.pattio.app — een Cloudflare Worker — of er een nieuwe versie van zijn JavaScript-code is. Hij stuurt de versie van de app, het platform en het kanaal mee, en geen gegevens van jou; Cloudflare ziet het IP-adres.

5. Hoelang we het bewaren

  • Zolang het account bestaat: wat je hebt gesynchroniseerd.
  • Wat je verwijdert, gaat naar de prullenbak (“Recent verwijderd”), blijft daar 30 dagen en wordt daarna vanzelf gewist.
  • Verloopt je abonnement of zeg je het op, dan wordt er die dag niets gewist: je gaat terug naar het gratis abonnement, alles blijft leesbaar en downloadbaar, en het enige wat wordt geblokkeerd, is meer uploaden zolang je boven je quotum zit. Er zijn 30 dagen respijt, met meldingen en de datum erbij; daarna wordt alleen het teveel verwijderd (van oud naar nieuw), en wat wordt verwijderd, blijft nog 30 dagen in de prullenbak, waar je het nog terugkrijgt door te verlengen. Op dag 60 is er geen weg terug. Het volledige tijdschema, met de cijfers, staat in §9 van de Algemene voorwaarden (/nl/voorwaarden).
  • De verwijderingsmarkeringen. Als je een element verwijdert, bewaren we de rij ervan met een markering “verwijderd” en zonder inhoud, zodat je andere apparaten weten dat het ook daar moet verdwijnen. Het is synchronisatiemachinerie, niet je inhoud, en het verdwijnt met het account.
  • De prullenbak legen wist de bestanden van de server, en niet alleen van dit apparaat. Als je een element “definitief” uit de prullenbak haalt, worden de foto’s en bestanden die alleen daarbij hoorden meteen op dit apparaat vrijgegeven, en wordt de cloudkopie ervan uit de opslag gewist zodra dit apparaat heeft gesynchroniseerd. Dat beslist je apparaat, niet wij, en de reden is diezelfde versleuteling: wij kunnen niet weten welke bestanden je nog gebruikt. Bestanden die ook bij een ander element horen dat je bewaart, worden niet gewist.
  • Je account verwijderen wist alles echt: de rijen, de bestanden, de vingerafdruk van de sleutel en je gebruiker. Je kunt het zelf doen vanuit de app, en wat op je apparaat staat, blijft op je apparaat.
  • Back-ups. De databaseleverancier maakt routinematig back-ups; een gewist gegeven kan daarin blijven bestaan tot de back-up verloopt (maximaal 30 dagen). Daarna is het nergens meer.
  • Het bericht dat je ons via het ondersteuningsformulier van deze site stuurt: zolang nodig is om je vraag af te handelen en uiterlijk twaalf maanden nadat die is afgesloten (§3.11).
  • De berichten uit de brievenbus “Ideeën en bugs” in de app: tot 12 maanden, of korter als de zaak eerder is afgesloten. Wil je dat we ze eerder wissen, schrijf dan naar hola@somiadigital.com (§3.12).
  • Het meldingstoken van het Pattio-nieuws: tot je “Pattio-nieuws” uitzet of Apple zegt dat het niet meer geldig is. De uitgeschakelde rij — de willekeurige identificatiecode, de taal en de versie, al zonder token — wordt bewaard zolang de installatie bestaat (§3.13).

6. Overdraagbaarheid: de knop die er altijd is

In Instellingen ▸ Gegevens ▸ Download al je gegevens staat een knop die je een zip geeft met alles: alle borden in JSON en alle originele bestanden byte voor byte.

Dat dekt je recht op overdraagbaarheid (art. 20 AVG) en de verplichting uit artikel 119 ter van de TRLGDCU (de geconsolideerde tekst van de Spaanse consumentenwet), en je apparaat doet het helemaal zelf: de zip komt niet langs een server van ons.

  • Het is gratis, ook met het gratis abonnement en ook als je abonnement is verlopen.
  • Het is selfservice: je hoeft ons niet te schrijven, niet te wachten en geen toestemming te vragen.
  • Het is machineleesbaar: JSON en originele bestanden, zonder dat je Pattio nodig hebt.

7. Je rechten

Je hebt recht op inzage in je gegevens, op rectificatie, op wissing, op beperking van de verwerking, op bezwaar en op overdraagbaarheid. Berust iets op je toestemming, dan kun je die altijd intrekken (intrekken maakt wat al is gedaan niet onrechtmatig).

Om ze uit te oefenen, schrijf je naar hola@somiadigital.com. We antwoorden binnen maximaal een maand. We kunnen je vragen te bevestigen wie je bent, en meer niet.

Een groot deel van de rechten kun je zelf en meteen uitoefenen, zonder iemand te schrijven: de zip van de export (inzage en overdraagbaarheid), elementen verwijderen (wissing), stoppen met het delen van een bord (bezwaar), je account verwijderen (volledige wissing), de Privacy-schakelaar van de app (bezwaar tegen de productanalyse, §3.7), de schakelaar “Pattio-nieuws” in Instellingen ▸ Herinneringen (bezwaar tegen het nieuws als melding, §3.13) en de knop om cookies te beheren (de toestemming voor de webanalyse intrekken of opnieuw geven, §3.6 en §3.11).

Een eerlijke beperking: omdat de privé-inhoud versleuteld is en wij de sleutel niet hebben, kunnen we je geen leesbare kopie geven van wat op de server staat en er van buitenaf niets aan rectificeren. Wie dat wel kan, is je apparaat, want dat heeft de sleutel — en daarom doet het de export.

Vind je dat we het niet goed doen, dan kun je een klacht indienen bij de Spaanse gegevensbeschermingsautoriteit (Agencia Española de Protección de Datos, www.aepd.es, C/ Jorge Juan 6, 28001 Madrid). Woon je in een ander land, dan kun je ook een klacht indienen bij de toezichthoudende autoriteit van dat land. We stellen het op prijs als je het ons eerst laat weten, maar het hoeft niet.

8. Beveiliging

Geen enkel systeem is onfeilbaar. Mocht er ooit een beveiligingsinbreuk zijn die jou in gevaar brengt, dan melden we dat aan jou en aan de AEPD binnen de termijnen van artikel 33 AVG.

  • End-to-end-versleuteling van de privé-inhoud (NaCl secretbox, XSalsa20-Poly1305), met de sleutel in de sleutelhanger van het apparaat en nooit op de server. Staat de iCloud-sleutelhanger aan, dan reist de sleutel tussen je apparaten via het transport van Apple, end-to-end versleuteld door Apple (§3.2).
  • TLS voor al het verkeer.
  • Row Level Security in de database: elke rij controleert in de database zelf wie haar mag lezen, en het hangt niet alleen af van of de client zich netjes gedraagt. Opvragingen die de grens van een gastenlink moeten overschrijden, gaan via serverfuncties die alleen de nodige kolommen teruggeven — de naam van wie heeft gestemd bijvoorbeeld, nooit het token van diens link.
  • De inloggegevens voor de bestanden zitten niet in de app: wie de toegangsrechten ondertekent, is een serverfunctie die eerst controleert of je recht hebt op dat bord, en de adressen die daaruit komen, verlopen na een paar minuten.
  • Gastenlinks kun je altijd intrekken.
  • Het meldingstoken van het Pattio-nieuws staat in een afgesloten tabel die geen enkele openbare rol kan lezen of beschrijven: alleen de functie die het nieuws verstuurt, leest hem, binnen de server. En de database staat niet toe dat er een identiteit naast wordt opgeslagen (§3.13).
  • Geen advertentie- of foutrapportage-SDK in de app: wat er niet in zit, kan niet lekken. Het enige gebruiksgegeven dat de app naar een derde stuurt, is de productanalyse van §3.7, die door een filter met een gesloten lijst gaat dat geen tekst, identificatiecodes of cijfers doorlaat. De andere verzoeken die het apparaat naar een derde stuurt, zijn die uit “Derden die je IP-adres zien”, en daar zeggen we wat elk ervan meeneemt.

9. Minderjarigen

Pattio is niet bedoeld voor kinderen onder de 14 jaar en we vragen hun bewust geen gegevens. Dat is de leeftijd vanaf welke de Spaanse wet je toestaat zelf in te stemmen met de verwerking van je gegevens (art. 7 van de LOPDGDD), en het is dezelfde leeftijd die de Algemene voorwaarden (§3) vragen: beide documenten noemen bewust hetzelfde getal.

Merken we dat we gegevens hebben verwerkt van een kind onder de 14 zonder toestemming van wie het ouderlijk gezag heeft, dan wissen we ze. Ben je ouder of voogd en denk je dat dat is gebeurd, schrijf ons dan op hola@somiadigital.com.

10. Wijzigingen in dit beleid

Veranderen we iets wat ertoe doet, dan passen we de datum bovenaan aan en, als de wijziging ingrijpend is, laten we het je in de app weten voordat ze ingaat. Oude versies kun je per e-mail opvragen.

Over dit beleid word je geïnformeerd; je aanvaardt het niet: de AVG staat niet toe dat je “de privacy aanvaardt” in één keer. De concrete keuzes maak je elk op hun eigen plek en je kunt ze altijd wijzigen: de toestemming voor de analyse van de webpagina’s (§3.6 en §3.11), het bezwaar tegen de productanalyse van de app, dat de Privacy-schakelaar is (§3.7), en het bezwaar tegen het Pattio-nieuws als melding, dat de schakelaar “Pattio-nieuws” is (§3.13). Wat je wel aanvaardt, zijn de Algemene voorwaarden (/nl/voorwaarden), en de app slaat daarvan de versie en de datum op (§3.1).