Privacy Policy

Effective from: 6 November 2026

This policy explains what personal data Tabs holds, why, who we share it with, how long we keep it and what you can ask us to do. It covers our website (usetabs.app), the web app (platform.usetabs.app) and the desktop apps. Our Terms of Service and Data Processing Addendum go with it.

We follow the Nigeria Data Protection Act 2023 and the Nigeria Data Protection Commission's General Application and Implementation Directive 2025, which replaced the old Nigeria Data Protection Regulation.

1. Who we are

Tabs is run by Tabs HQ Software Solutions Ltd, RC number 8322949, of 20, Road 7 Close, Bashorun Housing Estate, Akobo, Ibadan, Oyo State, Nigeria. For the data in section 3, we are the data controller: we decide how and why it is used.

For anything about your data, email hello@usetabs.app.

2. Data a shop puts in Tabs: the shop is in charge

Most of what is in Tabs is put there by shops: their staff, their customers, their suppliers, couriers and resellers, and their orders. For that data, the shop is the controller and we are its processor. We handle it only on the shop's instructions, to run Tabs for them, under our Data Processing Addendum.

If you work at a shop that uses Tabs, or you buy from one, and you want to see, correct or remove your details, ask the shop first. If you write to us, we will pass your request to the shop and help it answer.

Section 4 lists this data so you can see what Tabs can hold.

3. Data we hold for ourselves

When you sign up or are invited. Your first and last name, email address, password (stored only in scrambled form, which we can't read back), phone number, sex if you give it, and profile picture if you add one. If you sign in with Google, the ID of your Google account. If you turn on two-step sign-in, the secret it uses and your recovery codes. If you give them, how you heard about Tabs, as a short label, and the referral code you signed up with.

When you sign in. A record of each sign-in and security event, with the internet (IP) address and the device and browser details it came from. Your device also sends its time zone when you sign in. We use it only to count the five working days a session lasts, and we don't keep it. Short-lived one-time codes sent to your email.

When you pay. For the business owner: the plan, amounts, dates and status of payments, and the reference Paystack gives us for your saved card. Paystack holds your card details. We never see your full card number.

When a business connects Paystack to take its customers' payments. The bank, the account holder's name and the last four digits of the account the business is paid into, and who connected it. Paystack holds the full account number.

When a business connects Moniepoint to take its customers' payments on its own terminals. The business's Moniepoint API client and the secret its webhook uses, kept encrypted, of which Tabs shows only the last four characters of the client's ID; each terminal's serial number, name and store; and who connected it.

When something goes wrong. Our error logs record the internet address a failed request came from. When the web app or a desktop app hits an error, it can send us a report of what went wrong and on which page, with who you are, email addresses, cookies and what you typed removed first.

When you report an issue. The topic, what you write, the page you were on, whether you use the web app or a desktop app and its version, one line about your device (the device, the browser, whether Tabs is installed or open in a browser tab, and whether notifications reach it with Tabs closed), and up to five pictures you add. Your name and role go with it to our team (see Discord in section 6). Your email address stays with us. We keep where our team has got to with it (new, looking, fixed or won't fix) and any reply we write back.

When you turn on notifications on a device. So that Tabs can reach a phone or computer while Tabs is closed, we keep the address your browser's push service gives that device, the keys that encrypt what we send to it, a label such as "Chrome on Android", and when we last sent it something.

When you visit our website. Visit counts and page speed measures, gathered without cookies (see section 9).

When you write to us. Your email and what you tell us.

4. What a shop can keep in Tabs

This is data shops control (section 2). Depending on what a shop uses, Tabs can hold:

  • Staff: name, phone, job title, store, role, salary amount and how often it is paid, shift times and clock in and out times, tasks, handover notes, how each person is doing on the Insights page, and a log of the actions each person took in Tabs. Time off requests: the type (holiday, sick, unpaid or other), the dates asked for, a note, other dates a manager offers with a note, why a request was declined or cancelled, and who decided and when.
  • Clock-in location: only when a shop turns on attendance and asks for location. For each clock in and out, Tabs keeps the latitude and longitude, how accurate the reading was, how far it was from the store's pin, whether it counted as at the store, remote or unchecked, the device's time zone and the work date. The person's browser or phone asks them before it shares the location; while the shop asks for it, they can't clock in without it. The shop also keeps a pin for each store. Each person can see the location of their own clock-ins. Other people's exact locations are seen only by those the shop allows to see everyone's clock-ins, which is the owner alone unless the owner gives others that right. Whether a clock-in was at the store or remote, how far from the store, how accurate the reading was and the device's time zone show to anyone who can see that clock-in. Tabs itself sends the location to no other company. Someone who can see a location gets a link to it on Google Maps; if they open it, their browser takes the location to Google.
  • Chat: messages, reactions and files shared in a business's chat. Files are kept in private storage. When a message has a link, our server fetches a preview of that page. The sender can edit a message; Tabs keeps only the latest words and when it was last edited. When a member makes a task from a message, the task keeps which message it came from.
  • Customers: name, email, phone, company, billing and shipping addresses and notes, and their orders. Receipts are emailed to a customer when the shop asks. The Insights page shows a shop how its customers buy: how much and how often, what they owe and what they return.
  • Payments through Paystack: when a shop takes an order's payment through Paystack, the payment's amount and status and the email address the payer gives, which Tabs sends to Paystack to make the payment link. When the payment settles, Tabs emails a receipt to that address, or else to the customer's, naming the shop and its store, the items, the amount and the Paystack reference, with the shop's phone and email. Paystack handles the card or transfer, and pays the money into the shop's bank account. If a customer disputes a payment with their bank: the dispute's status, reason, amount and deadline, the details Paystack sends with it, and the evidence the shop sends to answer it.
  • Payments on a Moniepoint terminal: when a shop sends an order's payment to one of its Moniepoint terminals, the amount, the terminal, the status, whether it was paid by card or transfer, and Moniepoint's reference and answer. Tabs sends Moniepoint only the terminal, the amount and a reference, nothing about the customer, and doesn't keep the card or account details Moniepoint sends back. The money goes into the shop's own Moniepoint account. When a shop gives back a payment, who marked it returned, when, how, and any note.
  • Transactions: money the shop records coming in or going out, such as rent or a repair: whether it came in or went out, a description, the amount and currency, the date, the store if one is chosen, how often it repeats if it does, and who recorded and last changed it.
  • Accounts: the bank accounts, cash, card machines, crypto wallets and other places the shop keeps its money: a nickname, the currency, and as the shop gives them, the bank, account number and account name, or the wallet's address and network, a note and the stores that use it.
  • Orders and deliveries: the details of the person an order goes to. When a shop books a delivery company, the booking, its progress and the rider's name and phone the company sends back.
  • Trade-ins: when a shop takes a customer's old item as part payment, its serial number or IMEI, notes on its condition and photos.
  • Couriers, resellers and suppliers: business or contact name, contact person, phone, email, and for resellers and suppliers an address.
  • Imports: the products, prices and suppliers a shop imports from a file, by pasting, or from a Google Sheet by its link. For a link, the shop shares the sheet with anyone who has the link, and our server downloads it to read it, as it would a file the shop uploads.

5. Why we use it, and our lawful basis

What we doOur lawful basis
Create and run your account, sign you in, let you use TabsContract with you
Take payment, send billing and renewal noticesContract with you
Send sign-in codes, invitations, welcome and security emailsContract with you, and our legitimate interest in keeping accounts safe
Record sign-ins and errors, prevent misuse and fraudLegitimate interest in keeping Tabs secure
Tell our team about new, cancelled and failed subscriptionsLegitimate interest in running our business
Look into and fix the issues you report, and the errors the apps send usLegitimate interest in keeping Tabs working
Pay a business what its customers pay it through Paystack, and pass on disputes about those paymentsContract with the business
Send a business's payments to its Moniepoint terminals and record themContract with the business
Book deliveries with a delivery company a business has switched on, follow them, and cancel them when the business asksContract with the business
Fill in a task from a chat message when a member asksContract with the business
Email a receipt to the person who paid through Paystack, and pause a business's Paystack payments after too many disputesContract with the business, and our legitimate interest in keeping our Paystack account safe
Send notifications to the devices you turned them on forContract with you
Count website visits and measure page speedLegitimate interest in improving the site
Keep records the law requires, answer the authoritiesLegal obligation

Where we rely on legitimate interest, we have weighed it against your rights. You can object (section 8).

We don't sell personal data. We don't use it for advertising. We don't use automated decisions that have a legal or similarly serious effect on you. Tabs uses artificial intelligence in three places, all through OpenRouter (OpenRouter's privacy policy), which passes each request to an artificial intelligence model from ByteDance (Seed), Google (Gemini), Anthropic (Claude) or Z.ai (GLM), and to the next of them if one fails: reading products from a photo, suggesting what the columns of an imported sheet are, and filling in a task from a chat message. Every request asks OpenRouter to use only providers that don't collect the data they are sent.

Reading products from a photo. When a shop chooses to, the photo is sent through OpenRouter to one of those models, with the shop's category names and its country, so that the suggestion fits the shop. A photo of one product is read for its name, brand and details. A photo of a list, such as a price list, an invoice, a receipt or a notebook page, or of a shelf, is read for the products it shows, with the prices and quantities it prints. Such a photo can show other details on the page, so a shop should photograph only what it needs. What was read is kept with the business for the shop to check. If the shop saves a product from a photo of one product, the photo is kept as its picture; if not, it is deleted within about an hour. A photo of a list is not kept.

Matching an import's columns. When a shop imports products from a sheet and Tabs can't tell what some of its columns are, it sends through OpenRouter to one of those models the heading of every column and up to five values from each, each cut to 80 characters, with the names of Tabs's fields and of the shop's own fields. Nothing else from the sheet is sent. The model suggests what each column is, and the shop checks the suggestions before importing. The values can be anything the sheet holds, such as a supplier's name or phone number, so a shop should import a sheet with only the columns it needs.

Filling in a task from a chat message. When a member chooses to make a task from a message, Tabs sends through OpenRouter to one of those models the message and the conversation around it (up to 20 messages before it and 5 after), with each sender's name, the chat's name, the names, roles or job titles and stores of up to 80 people in the business, the names of its stores, short labels of the records the messages tag, the date and time, and the words of any message replied to. Files in the messages are not sent, only that a message has one. The model suggests the task's title, instructions, who does it, when, its priority, its store and its steps, and the member checks them before saving. Tabs keeps a record of each request (who asked, which message, which model, and its cost), not what the model answered.

No other artificial intelligence features are switched on.

6. Who we share it with

We share data only with providers that help us run Tabs, and only what each needs:

ProviderWhat they do for usWhere
PaystackTakes card and transfer payments for our plans and TABS credits, and renewals. For a business that connects it, takes its customers' payments on orders and pays them into the business's bank accountNigeria
MoniepointFor a business that connects its own Moniepoint account, shows an order's payment on the business's terminal and tells us whether it was paid. We send only the terminal, the amount and a reference; the money goes to the business under its own agreement with Moniepoint (Moniepoint's privacy policy)Nigeria
Dreacot (Dreacot Delivery Limited)For a business that switches it on, collects and delivers what the business books. We send the pickup and drop-off addresses, the recipient's name and phone, an email address (the customer's, else the store's, else the owner's) and the batch's number (Dreacot's privacy policy)Nigeria
Fez (Fez Delivery Co.)For a business that switches it on, collects and delivers what the business books, including to another state. We send the pickup and drop-off addresses with their states, the recipient's name and phone, the customer's email address when they have one, the parcel's value, weight and description, and the batch's number (Fez's privacy policy)Nigeria
ResendSends our emails: sign-in codes, invitations, welcome, security notices, account deleted, receipts (including to people who pay a shop through Paystack), price changes, subscription notices and renewal reminders, and notices of disputes on a shop's Paystack paymentsUnited States
GoogleSign-in with Google, if you choose it. Serves the Google Sheets a shop links to for an importUnited States
OpenRouter (OpenRouter Inc.)Reads the photo when a shop scans a product, a list or a shelf from a photo, suggests what an imported sheet's columns are from their headings and a few values, and fills in a task from a chat message and the conversation around it. It passes each request to a model from ByteDance (Seed), Google (Gemini), Anthropic (Claude) or Z.ai (GLM), trying the next if one fails, and only to providers that don't collect the data they are sent (OpenRouter's privacy policy)United States; OpenRouter picks which provider runs the model, so where the model runs can vary
Your browser's push service (Google for Chrome and Android, Apple for Safari and iPhone, Mozilla for Firefox, Microsoft for Edge)Carries notifications to the devices you turned them on for. What we send is encrypted for your device, so the push service can't read itWhere the browser's maker runs it
CloudflareProtects and speeds up our network, stores files and pictures, and keeps an archive of our servers' logsWorldwide network; files are stored in Cloudflare R2, in a location Cloudflare manages
ContaboRuns our servers and databaseFrance (European Union)
DiscordTells our team about subscriptions (the business name, plan and amount, no email address), and passes on the issues people report, with the reporter's name and role and any pictures they addUnited States
Grafana LabsStores our servers' logs, which include internet addresses, for 14 daysEuropean Union (Germany), run by a US company
SentryReceives the error reports the web and desktop apps send, with who you are, email addresses and cookies removed, and keeps them for 30 daysEuropean Union (Germany), run by a US company
VercelHosts our website and measures visits and page speedUnited States
SanityStores our website's articles and help pages, and the email addresses people left on our waitlist before launchEuropean Union (Belgium), run by a US company

We may also share data if the law or a court requires it, to protect people or Tabs from harm, or with a buyer if Tabs is sold, who must then keep to this policy.

7. Sending data outside Nigeria

Some of the providers above store or handle data outside Nigeria, including in the European Union and the United States. We send data abroad only where the Nigeria Data Protection Act allows it, for example where the country has adequate protection or under contract terms that protect your data: each of these providers is bound by contract terms that protect your data, and where the NDPC recognises a country as giving adequate protection we rely on that too.

8. Your rights

You can ask us to:

  • tell you what data we hold about you and give you a copy;
  • correct data that is wrong or incomplete;
  • delete your data;
  • stop or limit how we use it;
  • stop using it where we rely on legitimate interest;
  • give you your data in a common format, or send it to someone else;
  • withdraw consent, where we rely on consent.

You can change most of your details yourself in your settings, and delete your account there. To use any other right, email hello@usetabs.app. We will reply within 30 days. We may need to check who you are first. There is no charge.

If you are unhappy with how we handle your data, you can complain to the Nigeria Data Protection Commission at ndpc.gov.ng. We would like the chance to sort it out first.

9. Cookies and similar storage

Our website (usetabs.app) sets no cookies of its own. It remembers whether you chose the light or dark look in your browser's local storage. Our visit counts and page speed measures (Vercel Analytics and Speed Insights) don't use cookies.

The web app (platform.usetabs.app) uses:

  • a sign-in cookie that keeps you signed in, for up to 5 days. Tabs can't work without it.
  • local storage in your browser for your preferences, such as theme, table settings, recent searches and notification sounds, and for chat messages you haven't sent yet: drafts, voice notes being recorded, and messages written while you were offline, which send when you are back online. These are cleared when you sign out. If you turn on notifications for when Tabs is closed, the browser also keeps, for the part of Tabs that shows them, whether to show message text and until when they are paused.

The country a form starts on is guessed on your device, from its time zone or language. Nothing is sent anywhere for it.

The web app also keeps the chat pictures, videos and files, and the purchase order files, that you open in your browser's storage on that device, so they open at once next time. It keeps up to 300 MB, removes the oldest first, and clears it when you sign out.

The desktop apps keep your sign-in and preferences on your computer, not in cookies.

You can clear cookies, local storage and that kept media in your browser at any time. If you clear the sign-in cookie, you'll need to sign in again.

10. How long we keep it

Here is what happens today:

  • One-time codes are deleted about a day after they are made.
  • Notifications in the app are deleted 90 days after you read them.
  • A device's notifications stop when you turn them off on it, sign out there or delete your account, or when the push service tells us the device is gone.
  • Your account, while it is open, is kept with its sign-in records.
  • When you delete your account, we remove at once your email address, password, phone number, sex, picture, Google ID, two-step sign-in settings and recovery codes, your notifications, and the internet address and device details of your past sign-ins. We keep your first and last name, so businesses you worked in can still see who did what in their records, and how you heard about Tabs and the referral code you signed up with, if you gave them.
  • When a business is deleted, it disappears from Tabs, and its records are kept on our systems for one month, then erased, except where the law requires us to keep them. Our database backups still hold them until those backups are replaced, within 35 days of the erasure. Issues people reported to us, with their pictures, where our team got to with them and our replies, are kept after the erasure: they are what was told to Tabs, not the business's own records. A payment dispute the business lost, or one still open at the erasure, is kept too, as our record of money Paystack took from us or may still take, with its outcome when Paystack decides it: its amount and currency, reason, status and outcome, its dates, and Paystack's dispute and payment references. Nothing about the customer is kept with it.
  • Records of payments for plans and TABS credits are kept as our accounting records, also after a business is erased.

Other records:

  • Sign-in and security records (when you signed in, how, and from which internet address and device) are kept while your account is open. When you delete your account, the internet address and device details are removed at once.
  • Error logs and our servers' request logs, which can include your internet address, are kept for 90 days, then deleted: 14 days on our servers and at Grafana Labs, and 90 days in our archive. Error reports from the apps are kept at Sentry for 30 days.
  • Payment and tax records are kept for as long as Nigerian tax and company law requires us to keep them.
  • Moniepoint keeps its own records of the payments on a business's terminals, under its own policy.
  • Dreacot keeps its own records of the deliveries booked with it, under its own policy.
  • Fez keeps its own records of the deliveries booked with it, under its own policy.

11. How we protect it

Data travels encrypted. Passwords are stored scrambled. Each business's data is kept apart from every other business's in our database, and roles limit what each member can see. Chat files are in private storage. You can turn on two-step sign-in, and repeated wrong codes lock it for a time. No system is perfectly secure, so please use a strong password of your own.

If a breach of personal data is likely to put people at risk, we will tell the Nigeria Data Protection Commission within 72 hours of learning of it, as the law requires, and tell the people affected, and any shop whose data is involved, without undue delay.

12. Children

Tabs is for businesses and the people who work in them. You must be 18 or over to have an account. We don't knowingly hold data about children in our own accounts. If you think we do, tell us and we will delete it.

13. Changes to this policy

If we change this policy in a way that matters, we will email account holders before the change applies and update the date at the top.

14. Contact

Tabs HQ Software Solutions Ltd 20, Road 7 Close, Bashorun Housing Estate, Akobo, Ibadan, Oyo State, Nigeria Data protection: hello@usetabs.app General: hello@usetabs.app

---