INVISWISE
Restaurant inventory — built for speed
Privacy Policy / Tietosuojaseloste
Juuret Labs Oy · Y-tunnus 3644947-5
Last updated: August 2026 · v1.1
← Back to sign in
English (full) — Suomeksi (tiivistelmä) ↓
Data Controller
Legal name
Juuret Labs Oy
Business ID (Y-tunnus)
3644947-5
Registered address
Tuulensuunkuja 3A
00580 Helsinki, Finland
Contact for privacy matters
contact@inviswise.fi
Please write "Privacy" in the subject line

Juuret Labs Oy ("we", "us", "the Provider") operates the Invis Wise SaaS platform for restaurant inventory management. This Privacy Policy explains how we collect, use, store, and protect personal data in connection with the platform.

In the context of GDPR, the Provider acts as a data processor on behalf of the restaurant operator (the data controller). The restaurant operator is responsible for the lawfulness of the processing of their staff's data. This policy also covers the Provider's own data controller activities (e.g. billing contacts, service communications).

Personal Data Processed

The following categories of personal data are processed by Juuret Labs Oy in connection with the Invis Wise platform and the inviswise.fi website:

Category Data elements Purpose Legal basis GDPR Art. 6
Account credentials Email address, name, hashed password (managed by Supabase Auth — passwords never reach application code) Authentication and account management Art. 6(1)(b) — performance of contract
User profile Name, email, assigned role (admin / manager pro / manager), restaurant assignments Access control and role-based permissions within the platform Art. 6(1)(b) — performance of contract
Inventory activity Counts recorded per product/area, timestamps (counted_at), and the name or email of the staff member who performed the count (counted_by) Operational traceability — knowing who counted what is required for inventory auditing and discrepancy resolution Art. 6(1)(f) — legitimate interests of the controller and the restaurant operator
Device telemetry Device identifier (device_id stored in device localStorage), user name, platform (iOS/Android/Desktop), app version, last active time, offline queue size Service reliability: detecting stuck offline queues before data is lost; monitoring app version adoption Art. 6(1)(f) — legitimate interests (proactive support)
Error reports Unhandled JavaScript errors: error message, stack trace, user ID, user name, device ID, app version, platform Platform stability and bug resolution. Reports are throttled to max 5 per page load and deduplicated Art. 6(1)(f) — legitimate interests (service quality)
Admin audit log Email of the acting user, action type (e.g. delete_user, force_close_session, or a restaurant user's own catalog import), timestamp, details Immutable audit trail of sensitive administrative actions and self-service catalog imports, for accountability and incident investigation Art. 6(1)(f) — legitimate interests (security and accountability)
Website enquiries Name and email address (required); phone number and company/restaurant name (optional); free-text message — submitted via the contact form on inviswise.fi Responding to demo requests and enquiries from prospective clients about the platform Art. 6(1)(f) — legitimate interests (responding to business enquiries)
What we do NOT process: payment card data, special-category data (GDPR Art. 9), biometric data, or personal data of customers of the restaurant. We process only the data of restaurant staff who use the platform on behalf of their employer.
Local Storage and Device Data

Invis Wise is a Progressive Web App (PWA) designed to work offline. To enable offline functionality, the app stores data in your browser's localStorage and IndexedDB. No third-party tracking cookies are used.

Key / Store Contents Reason for storage
inv_auth Authentication tokens (JWT access token, refresh token), user ID and email, selected restaurant Strictly necessary — enables persistent login across sessions
inv_data_cache Full app state: products, areas, categories, active session, counts Strictly necessary — enables offline counting without internet
inv_offline_queue Count records pending upload when offline Strictly necessary — ensures no inventory data is lost during connectivity gaps
inv_device_id A randomly generated device identifier (not linked to any personal ID on its own) Functional — allows the system to distinguish devices for telemetry and support
inv_lang Language preference (en / fi) Functional — remembers your preferred language
IndexedDB inviswise Mirror of inv_data_cache and inv_offline_queue Strictly necessary — backup storage for iOS devices where localStorage may be evicted

All locally stored data is controlled by you and cleared when you log out or uninstall the app. None of this data is shared with advertising networks or analytics providers.

Under the Finnish Act on Electronic Communications Services (Sähköisen viestinnän palvelulaki), storage of data strictly necessary for a service explicitly requested by the user does not require separate consent. All items listed above fall under this exemption.

Sub-Processors GDPR Art. 28

We use the following sub-processors to operate the platform. All sub-processors are bound by GDPR-compliant data processing agreements.

Sub-processor Role Data processed Location
Supabase Inc. Database, authentication, Edge Functions All platform data (accounts, sessions, counts, telemetry) EU — eu-west-1 (Ireland)
Vercel Inc. Application hosting (static delivery) No personal data stored by Vercel. HTTP request logs (IP, path, timestamp) are retained per Vercel's standard policy Global CDN — no personal data stored
Resend Inc. Transactional email delivery (operational alerts to Provider's admin, and forwarding of website contact-form submissions to the Provider's inbox) Recipient email address and alert/enquiry content. Emails are delivered only to the Provider's own team — no email is sent to end users or website visitors through Resend USA (Resend processes under SCCs / DPA)
Zoho Corporation B.V. Business email hosting — the inbox where support, contract, and website enquiry correspondence is received and stored Email addresses, names, and message content of individuals who email the Provider directly or submit the website contact form EU — Netherlands (Zoho's support/debugging staff in India may access data on a need basis, under SCCs)
We will notify client organisations of any material changes to sub-processors with reasonable advance notice, as required by GDPR Art. 28(2).
Data Retention
Data category Retention period Basis
Account and profile data For the duration of the service agreement + 30 days after termination, then deleted upon written request or automatically Contractual obligation
Inventory sessions and counts (incl. counted_by) For the duration of the service agreement. The restaurant operator may export all data at any time. Data deleted within 30 days of agreement termination upon request Legitimate interests (business records); contractual
Device telemetry (device_status) Rolling 90 days. Records of inactive devices are purged automatically Proportionality — no operational need beyond 90 days
Error logs (app_errors) Rolling 90 days. Errors are automatically purged after this period Proportionality — bugs are fixed or dismissed within this window
Audit log Minimum 3 years (legal accountability for administrative actions) Legitimate interests (security, fraud prevention, legal defence)
Website enquiries (contact form) 12 months from submission if no service agreement is signed, then deleted from the inbox. If the enquiry converts into a client relationship, the data continues under the account/profile retention terms above Proportionality — reasonable follow-up window for sales enquiries
Local device storage (localStorage / IndexedDB) Retained until logout, browser data clearance, or app uninstall Controlled by the user
Your Rights GDPR Art. 15–21

As a data subject, you have the following rights regarding your personal data:

  • Right of access (Art. 15): You may request a copy of the personal data we hold about you.
  • Right to rectification (Art. 16): You may request correction of inaccurate data. Profile name and email can be updated directly within the app.
  • Right to erasure (Art. 17): You may request deletion of your account and associated personal data. This is carried out by your restaurant administrator or by contacting us directly.
  • Right to restriction (Art. 18): You may request that we restrict processing of your data in certain circumstances.
  • Right to data portability (Art. 20): Restaurant operators may export all inventory data (sessions, counts, products, users) at any time from the admin panel in machine-readable CSV format.
  • Right to object (Art. 21): You may object to processing based on legitimate interests. We will assess the objection and cease processing if your interests override ours.
To exercise any of these rights, contact us at contact@inviswise.fi with "Privacy" in the subject line. We will respond within 30 days as required by GDPR Art. 12(3). There is no charge for these requests.
Security Measures

We apply the following technical and organisational security measures to protect your data:

  • Encryption in transit: All communication uses TLS (HTTPS). HSTS with preload is enforced at the infrastructure level.
  • Encryption at rest: All data is stored on Supabase servers in Ireland, which apply encryption at rest by default.
  • Access control: Row Level Security (RLS) is enabled on all database tables. Each user can only access data belonging to their assigned restaurant(s). Cross-tenant data access is technically prevented at the database level.
  • Authentication: JWT-based authentication with token expiry and refresh rotation. Passwords are hashed by Supabase Auth (bcrypt) and never stored or transmitted in plaintext.
  • HTTP security headers: Content-Security-Policy, X-Frame-Options (DENY), X-Content-Type-Options (nosniff), Referrer-Policy, Permissions-Policy, and Strict-Transport-Security are applied to all responses.
  • Admin access: Administrative operations (user creation/deletion, password reset) are gated behind Supabase Edge Functions that verify admin role on every request.
  • XSS protection: All user-supplied strings rendered in the UI are sanitised through a dedicated sanitize() function before insertion into the DOM.
  • Audit trail: All sensitive administrative actions, plus self-service catalog imports performed by restaurant users, are logged immutably in the audit_log table. The log is readable only by admin users; a restaurant user's database permissions let them log solely their own action, never read the log or attribute an entry to anyone else.
Personal Data Breach Notification GDPR Art. 33–34

In the event of a personal data breach that is likely to result in a risk to the rights and freedoms of individuals, we will:

  • Notify the affected client organisation(s) without undue delay and within 72 hours of becoming aware of the breach.
  • Provide the nature of the breach, the categories and approximate number of data subjects affected, likely consequences, and measures taken or proposed.
  • Notify the Finnish Data Protection Ombudsman (Tietosuojavaltuutettu) where required by GDPR Art. 33.
  • Notify affected individuals directly if the breach is likely to result in a high risk to their rights (GDPR Art. 34).
Changes to This Policy

We may update this Privacy Policy from time to time. When we make material changes, we will notify active users via the application and/or email at least 14 days before the changes take effect. The updated policy will always be accessible at /docs/privacy-policy.html within the platform.

Continued use of the platform after the effective date constitutes acceptance of the updated policy.

Supervisory Authority

This platform is operated under Finnish law and subject to GDPR. The competent supervisory authority is:

Tietosuojavaltuutetun toimisto (Office of the Data Protection Ombudsman)
PO Box 800, 00531 Helsinki, Finland
tietosuoja.fi · tietosuoja@om.fi · +358 29 566 6700

You have the right to lodge a complaint with this authority at any time if you believe that the processing of your personal data violates GDPR.

Suomeksi / In Finnish
Tietosuojaseloste — tiivistelmä

Rekisterinpitäjä: Juuret Labs Oy, Y-tunnus 3644947-5, Tuulensuunkuja 3A, 00580 Helsinki. Tietosuoja-asioissa: contact@inviswise.fi (otsikkoon "Tietosuoja").

Mitä tietoja käsittelemme

Invis Wise -alustalla käsitellään ravintolahenkilökunnan seuraavia henkilötietoja:

  • Sähköpostiosoite, nimi ja salattu salasana (kirjautuminen)
  • Käyttäjärooli ja ravintolaoikeudet
  • Inventaariotiedot: kuka laski mitä ja milloin (counted_by)
  • Laitetelemetria: laitteen tunniste, käyttöjärjestelmä, sovelluksen versio, viimeisin aktiivisuus
  • Virheloki: tekniset virheet (käyttäjänimi, laitteen tunniste, virheilmoitus)
  • Hallintaloki: ylläpitäjän tekemät toimenpiteet (esim. käyttäjän poisto)

Käsittelyn peruste

Sopimuksen täyttäminen (GDPR 6 art. 1b) ja oikeutettu etu (6 art. 1f) palvelun toimivuuden, turvallisuuden ja jäljitettävyyden varmistamiseksi.

Tietojen säilytys

Käyttäjätilit ja inventaariotiedot säilytetään sopimuksen voimassaoloajan + 30 päivää. Virheloki ja laitetelemetria enintään 90 päivää. Hallintaloki vähintään 3 vuotta.

Kolmannet osapuolet (alikäsittelijät)

  • Supabase Inc. — tietokanta ja tunnistautuminen (EU, Irlanti)
  • Vercel Inc. — sovelluksen hostaus (henkilötietoja ei tallenneta)
  • Resend Inc. — sähköpostihälytykset ja yhteydenottolomakkeen viestit palveluntarjoajalle (ei loppukäyttäjille)
  • Zoho Corporation B.V. — sähköpostipalvelu (EU, Alankomaat; Zoho:n tukihenkilöstö Intiassa voi tarvittaessa käsitellä tietoja SCC-sopimusten nojalla)

Oikeutesi

Sinulla on oikeus tarkastaa, oikaista ja poistaa tietosi sekä siirtää ne toiseen järjestelmään. Ota yhteyttä contact@inviswise.fi.

Valvontaviranomainen

Tietosuojavaltuutetun toimisto · tietosuoja.fi · tietosuoja@om.fi

Juuret Labs Oy · Invis Wise · Version 1.1 · August 2026 Governing law: Finland · tietosuoja.fi