Privacy notice

This notice covers this website and the Sinaa app and its API, which run on the same address (under /app and /api). The app is used only by people that we, or their factory’s administrators, create accounts for; it also holds what each factory enters about its employees, some of whom never sign in (operators who only use a badge, for example). A full product privacy notice and a data processing agreement, legally reviewed, are given to each factory before its subscription starts.

Who we are and who decides

This website and the app are operated by Limitless Royalty LLC, a company registered in the United States. It is the controller of the data collected through the website’s forms and of account data in the app (signing in, keeping accounts secure, and support requests).

For a factory’s records, its employees’ data included, the factory is the controller: it decides what it enters about its people, who in its team sees it and how long it is kept. Sinaa is its processor: we process that data on the factory’s behalf, on its instructions, and use it only to provide the service to it.

What we collect

  • What you enter in our forms. Both forms: your name, your email and the page language. The “Start your factory” form: the factory’s name, its country, what it makes, how many people work there and, if you give it, your phone number. The question form: your question and, if you give them, your company and country.
  • If you have an account in the app: your email address, your password stored only as a one-way hash, the factories you belong to and your roles there, your two-step sign-in settings, a record of the changes you make (the audit trail), your saved views, notifications and approval tasks, and a count of failed sign-ins used to lock the account against guessing.
  • Files you attach to records: stored in a storage bucket at Railway, in the same region, and checked by our own virus scanner before anyone can download them (attachments are switched on only when a virus scanner is set up, and nothing can be downloaded before it is scanned). Exports you make are recorded: which list, how many rows, which columns and the search used.
  • When you sign in: the IP address and browser (user agent) of each session, kept with the session. Our servers also log each request to the app — your IP address, the address requested (without search terms), the result and, when you are signed in, your account ID — for security and troubleshooting.
  • If you report a problem from the app: your message, your email address, the factory, the page you were on (without its search), the app’s version, your browser, language and screen size, whether you were online, and the reference numbers and addresses of the last errors you saw, for Sinaa’s support staff to read and answer. No record contents are sent, only the addresses of the pages and records involved. The same goes for a request from the app’s Support page. Your requests and the answers are kept as a conversation only you see in your factory; files you attach (such as a screenshot) are opened by support staff only while you allow it on that request, and you can see when they opened one; they are deleted 30 days after the request is closed, or when you leave the factory. Your requests are not part of an export of your factory; they are erased with it.
  • In your browser: the website sets no cookies. The app sets one strictly necessary cookie, __Host-sinaa_session, which keeps you signed in and is deleted when you sign out or the session ends. Choices such as light or dark mode are stored only in your browser.
  • When you clock in or out from your phone (if your factory allows it and sets an area for your site): the browser asks your permission first, then sends the phone’s position and its accuracy with the punch. It is checked against the site’s area and not stored; the punch records only that it came from a phone.
  • On shop-floor devices: the operator terminal keeps on the device the reports not yet sent (with the ID of who recorded them and the operator’s badge number) and the last list of operations it showed, sealed with a key the device makes and that cannot be copied out of the browser, until they are sent or someone signs out. The browser also keeps the ID of the last user and factory on the device, to open the app without a connection, which work centre each factory’s terminal was set to, and the app’s own files. Signing out wipes the reports, the list and the last user and factory. The sealing does not protect against someone holding a full copy of the browser’s profile, so use factory devices with factory accounts only.

What a factory keeps about its people

A factory enters or imports this data, and we store and process it on its behalf:

  • Employee records: employee number, name, site, crew, department, position, manager, hire date and last working day, nationality, preferred language, status, badge code and working-time rule. With them, sensitive fields: national ID or iqama number, passport number, salary IBAN, basic salary, hourly cost and document numbers.
  • How the sensitive fields are protected: each value is encrypted before it is stored in the database, with a key of the factory’s own, and that key is itself wrapped by a root key kept apart from the database. Only people the factory gives the “see IDs, bank details and salaries” permission see them; everyone else sees them masked, and Sinaa’s support staff never see them. To spot a national ID entered twice without decrypting it, a keyed fingerprint that does not reveal the number is stored with it.
  • Employee documents: their type (national ID, iqama, passport, visa, work permit, residence permit, driving licence, health certificate, professional licence, contract and others), issuing country, issue and expiry dates, notes and the attached scan. Expiry dates are used to warn before documents expire, and to keep someone whose work permit or iqama has expired off the roster.
  • Attendance punches: the employee, the time, in or out, where it was recorded (the factory’s kiosk by badge, a file imported from a punch terminal, a phone, or the relay) and a note (why it was entered by hand, or the terminal that sent it). Timesheets are worked out from the punches each time and are not stored; rosters keep each employee’s shift for each day.
  • The relay and punch devices: when a terminal sends through the relay, the relay keeps the punches (badge number, date and time, in or out, and the terminal’s serial number) in a folder on the factory’s computer until Sinaa has them, and keeps those Sinaa could not place in a file to import later. That computer is in the factory’s care. Fingerprints and faces never leave the terminal. Of a device’s key we keep only a hash, which cannot be turned back into the key, and its last four characters, to tell keys apart; the key is shown once, when it is made.
  • Leave requests: the leave type, dates, number of days, status, the reason the employee writes and documents attached to it, such as sick notes. A reason or a document may reveal health information, so a factory should let only the people who handle leave see leave requests.
  • Payroll-input exports: for each employee in the period, days and hours worked, regular and overtime hours, late days, absences and approved leave, without salaries. The file is built in the browser of the person who exports it, and what happens to it then is up to the factory; every export is recorded (who, when and how many people).
  • Comments and mentions: what the team writes on records, and the colleagues mentioned there, who are told in their notifications. A record’s activity never shows an encrypted field.

How we use it

  • To reply to you, and to set up the factory account you ask for.
  • To run your account: sign you in, keep it secure (for example, to spot suspicious sign-ins) and record who changed what.
  • To provide the service to a factory with its records and its employees’ data, on its instructions only.
  • We do not sell your data or use it for advertising.

Who processes it

  • Netlify hosts the website and the app, and receives form submissions on our behalf. Netlify also records the IP address, browser and referring page with each submission, and checks it for spam.
  • Railway (a US company) hosts the API, the database where account data is stored and the bucket for attached files, in its EU West region (Amsterdam, the Netherlands).
  • Sinaa’s support staff see, in an access-controlled console, the email addresses of each factory’s owners and members, their sign-in activity and failed sign-in counts, how many records each table holds and the last 25 audit events (table, operation, user and time, without the records’ content), to support factories and keep the service secure. Opening a factory’s details needs a fresh passkey check and is recorded. They read a factory’s records only while its account owner (or someone the owner has allowed to) has granted them access, for at most 72 hours, which can be ended at any moment: read-only, never the encrypted fields, within 5 minutes of a passkey check, and every list and record they open is recorded and shown to the factory in its settings; the account owners are told when access is granted.
  • Resend (United States) will send account emails, such as email-verification and password-reset links, once email is switched on; nothing is sent through it before then.
  • When a buyer emails a purchase order or a reminder to a supplier through Resend, the supplier is given the buyer's email address to reply to.

Factories’ records and account data are stored in the EU (the Netherlands), not in the factory’s own country. Data may be processed outside your country, including in the United States, under these providers’ data processing terms.

How long we keep it

We keep form data for as long as we need it to stay in touch, and account data for as long as your factory’s account exists. A factory decides how long it keeps its employees’ records; they stay for as long as it keeps them and its account exists. Deleted files are removed from storage after 30 days in the recycle bin. When you ask us to delete your data, we handle the request by hand within 30 days — except the audit trail, which cannot be changed and is kept for as long as your factory’s account exists. When a factory leaves, we first give its owner a copy of its records and files, then delete its account: its records, files, audit trail and encryption keys. A member’s own sign-in account is deleted too, unless they also belong to another factory or another factory’s records name them. We keep a short record that the factory was exported and deleted, when and by whom (without its data), and our staff’s own log of what they did, which names the factory. Our backups are not edited but expire: our backup copies of the encryption keys are set to expire after 7 days, after which the encrypted fields (such as ID numbers and salaries) can no longer be read from our backups; our database copies, which hold the factory’s other records, are kept up to 12 months; our hosting provider keeps its own backups for its own retention period. Server logs are kept for a limited time by our hosting provider.

Your rights

You can ask to see, correct or delete your data under the data protection law that applies to you. For employees’ data, the data protection law of the factory’s country applies: for example Saudi Arabia’s Personal Data Protection Law, the UAE’s Federal Decree-Law No. 45 of 2021 on the Protection of Personal Data, and Egypt’s Personal Data Protection Law (Law No. 151 of 2020).

If you work at a factory that uses Sinaa, ask your employer first: it decides about your data, and we will help it answer you. Some of these laws restrict sending personal data abroad, and ours is stored in the Netherlands, so a factory should check what its law asks of it before it enters its employees’ data; we will give it what it needs to know about where the data is kept and who processes it.

Privacy contact: info@limitlessroyalty.com.