Perkly

Privacy notice

What personal data passes through Perkly, why it is there, who else sees it, and what you can ask us to do about it.

Last updated: 11 September 2026

1. About this notice

Perkly is a digital pass platform for local businesses: loyalty stamp cards, discounts, gift cards and membership passes that live in Apple Wallet and Google Wallet instead of in a wallet full of paper. It is operated by Perkly, an independent not-for-profit project that is not yet registered as a company.

This notice is written to meet Law No. 214/2024 of the Republic of Moldova on the protection of personal data, and the EU General Data Protection Regulation where that applies to us. It covers perkly.md, the business cabinet, and the pass pages your customers open on their phones.

Two very different kinds of people read this page: someone holding a stamp card, and someone running a business on Perkly. The data-protection rules that apply are genuinely different for each, so section 2 explains the split before anything else.

2. Who decides what — controller and processor

When a café uses Perkly to run its stamp card, the café decides that it wants a stamp card, what it asks customers for, and what it does with the result. In the law’s terms the café is the controller and Perkly is the processor: we hold and move that data on the café’s instructions, and we do not use it for our own purposes.

For a different, smaller set of data, Perkly is the controller in its own right — the business accounts themselves, staff logins, applications sent through our sign-up form, and our own security records.

DataControllerPerkly’s role
Pass holders: contact details, stamps, balances, scan historyThe business that issued the passProcessor
Business accounts, staff members, roles and loginsPerklyController
Applications from the sign-up formPerklyController
Security, anti-abuse and platform audit recordsPerklyController
If you hold a pass and want it deleted or corrected, the business that gave it to you is the right address, because it is their decision to make. Write to us anyway if that is easier — we will pass the request on and help them action it.

3. If you hold a Perkly pass

A pass holds as little as it can. We never ask you for your name, your address, your ID number or your payment details, and nothing on a Perkly pass is used to advertise to you.

WhatWhy it existsDo you have to give it?
A phone number or email addressSo a pass issued to you personally — a gift card, a membership — can be sent to you and restored if you lose your phoneNo. A stamp card you add yourself from a QR code at the counter can be completely anonymous.
Your card numberThe barcode a staff member scans. It is a randomly generated identifierIt is created with the pass. It is not derived from your name or number and reveals nothing about you.
Pass contentsStamps collected, the balance left on a gift card, your membership levelThis is the pass itself.
Scan historyWhen your pass was scanned and by which staff member, so the business can resolve a dispute about a stamp or a redemptionRecorded automatically when a staff member scans your pass.
Wallet device registrationIf you add the pass to Apple Wallet or Google Wallet, the device identifier and push token those services need to keep the pass up to dateOnly if you add the pass to your phone’s wallet.

The public link to your own pass is protected by a secret token contained in the link itself. Anyone with the link can see that pass, so treat it as you would the card itself.

4. If you run a business on Perkly

  • Account and staff: name, email address, role in the business, and the business’s own name, category, logo and brand colour.
  • Sign-in security: if two-factor authentication is switched on, we email you a short-lived code. Only a hash of that code is stored, it can be used once, and it expires within minutes.
  • Audit log: which staff member issued, scanned, stamped, redeemed or cancelled which pass, and when. This is what lets an owner answer "who gave that away?".
  • Applications: if you applied through our sign-up form, the company name, contact person, phone, email, category, city and any message you wrote.

Staff who are not the owner see customer contact details masked. That is enforced on the server, so a cashier’s browser is never sent the full number in the first place.

5. Why we are allowed to hold it

DataLawful basis
Running a business’s account and cabinetPerformance of our contract with that business
Issuing and updating a pass a customer asked forThe business’s contract with its customer, or the customer’s consent, as the business has set it up
Marketing messages pushed to a passConsent, given to the business when the pass was taken
Audit log, rate limiting, abuse prevention, keeping the service secureOur and the business’s legitimate interest in a service that can be held to account and is not abused
Accounting and tax recordsA legal obligation we are under

Where consent is the basis, you can withdraw it at any time, and withdrawing it is as easy as giving it: delete the pass from your wallet, or ask the business to remove you. Withdrawing consent does not undo what was lawfully done before.

6. Who else processes it

We do not sell personal data, we do not share it with advertising networks, and Perkly carries no third-party analytics or tracking scripts of any kind. The services below are the complete list of companies that handle data on our behalf in order to make the product work.

ServiceWhat it does for us
SupabaseDatabase, sign-in, and storage for business logos and pass artwork
VercelRuns and serves the application
ResendSends transactional email — sign-in codes, password resets, pass links
AppleIssues passes into Apple Wallet and delivers pass updates to iPhones. Apple receives the push token for a device that has added a pass
GoogleIssues passes into Google Wallet and keeps them updated on Android devices

Each of these is bound to process data only on our instructions. We do not use any of them to profile pass holders.

7. Where the data is

Perkly’s database, sign-in and file storage run in Ireland, and the servers that run the application itself are in Frankfurt, Germany and Paris, France. All of it is inside the European Economic Area; no part of the platform is hosted outside it.

Apple and Google operate globally, so a pass added to a phone’s wallet involves a transfer to those companies’ infrastructure outside Moldova and outside the European Economic Area.

Transfers out of the Republic of Moldova are made under the safeguards the law provides for, including transfers to countries recognised as offering an adequate level of protection and, where that does not apply, standard contractual clauses with the recipient.

8. How long it is kept

DataKept for
An active pass and its contentsAs long as the business keeps the pass live. Cancelling a pass marks it cancelled and stops it working immediately
Audit log entriesFor the life of the business’s account — see the note below
Two-factor sign-in codesMinutes. They are single-use and expire
An application that never became a customerone month after the application is decided
A business account after it leaves Perklyone month after the account is closed
The audit log is append-only by design, and the database physically prevents rows in it from being changed or deleted — that is what makes it worth anything as a record of who did what. So when a pass is erased, the entry recording that it was once scanned survives, though it no longer points at a pass or a person. If you ask for erasure, this is the one thing we cannot fully undo, and we will tell you so rather than quietly leaving it out.

9. How it is protected

  • Every business’s rows are isolated from every other business’s at the database level, not merely in application code.
  • Customer contact details are masked for staff below owner level, on the server.
  • Card numbers and pass links use random, opaque tokens — never sequential numbers that could be guessed or counted.
  • Two-factor authentication is available on every account, and sign-in codes are stored only as hashes.
  • Uploaded images are checked byte by byte to confirm they really are images.
  • Everything travels over HTTPS.

No system is perfect. If you believe you have found a security problem, please write to us before disclosing it publicly, and we will work with you.

10. Your rights

Under Moldovan data protection law you may ask to:

  • know whether we hold data about you, and get a copy of it;
  • have something inaccurate corrected;
  • have your data erased;
  • restrict what is done with it while a dispute is resolved;
  • object to processing we base on legitimate interests;
  • receive the data you gave us in a portable, machine-readable form;
  • withdraw a consent you previously gave.

Write to privacy@perkly.md and say what you want. We will answer within the time the law allows and will not charge you for it. We may have to ask you something that confirms the request really comes from you — which for a pass usually means the card number or the contact detail on it.

Perkly does not make automated decisions about individuals that produce legal effects or anything similarly significant. The counts and lists in a business’s dashboard are a tool for staff to read, not a decision the system makes on its own.

11. Complaints

Please raise it with us first — most things are faster to fix directly. But you are entitled to go straight to the supervisory authority, and you can complain to it at any time regardless of what we say.

In the Republic of Moldova that is the National Centre for Personal Data Protection (Centrul Național pentru Protecția Datelor cu Caracter Personal), Chișinău — datepersonale.md.

12. Cookies

Perkly sets no advertising cookies and no analytics cookies. Every cookie below is either strictly necessary to sign you in or remembers a preference you chose yourself.

CookieWhat it is for
sb-…-auth-tokenKeeps you signed in. Set by our authentication provider
perkly_rememberRecords whether you ticked "remember me", which decides whether your session ends when you close the browser
perkly_mfaRecords that you passed the two-factor check on this device
perkly_localeThe language you chose
perkly_admin_viewOnly ever set for our own administrators, and only while viewing a specific business for support

A pass in Apple Wallet or Google Wallet is not a web page and sets no cookies at all.

13. Children

Perkly is a tool for businesses and is not directed at children. We do not knowingly collect data from a child. If you believe a child’s data has reached us through a pass, tell us and we will remove it.

14. Changes to this notice

When this notice changes, the date at the top changes with it. If a change materially affects what we do with your data, we will tell the businesses using Perkly directly rather than relying on you to re-read this page.

15. Contact

Data protection questions and requests: privacy@perkly.md. Anything else: support@perkly.md.

This notice exists in Romanian, Russian and English. If the versions disagree, the Romanian version is the one that governs.

Privacy notice · Perkly