Privacy notice
Quro respects your privacy. This notice explains what personal information we collect, why we collect it, who can access it, and the rights Quebec's Law 25 (the modernized Act respecting the protection of personal information in the private sector) and Europe's GDPR grant you.
1. Who is responsible
Quro is operated by 9567-8769 Québec inc. (picardbuilds), which is responsible for the personal information described here. Our designated person responsible for the protection of personal information (the "privacy officer", required by Law 25 § 3.1) is reachable at:
📧 joseph.picard@picardbuilds.ca
2. What we collect
We collect the minimum personal information needed to operate the service. Concretely:
| Category | Examples | When |
|---|---|---|
| Identification | Business name, your name, email address | You sign up as a merchant, or create an optional customer account |
| Transactional | Order lines, amount, tip, table identifier, the bill number read from the Revenu Québec QR code | You send an order or pay a bill |
| Receipt photo | The photo you take of your restaurant bill | You pay by scanning a bill — processed in memory to read the total, never stored |
| Technical | IP address, browser, device type | You visit any page (server logs) |
We do not collect your card number. You enter it on Stripe's hosted checkout page (checkout.stripe.com), which also asks for an email address for Stripe's receipt; neither reaches Quro's servers.
3. Why we collect it
- To process payments (legal basis: contract performance) — payment, refund, dispute handling.
- To pass your order to the restaurant (contract performance) — the order lines and the table go to the kitchen screen; no money is collected at that step.
- To run merchant accounts (contract performance) — sign-in, subscription billing through Stripe, and answering the support requests a merchant sends us from the console. Merchants are not sent a message per payment; every payment appears on their dashboard.
- To prevent fraud and secure the service (legitimate interest, also required by PCI-DSS).
4. Who has access
Personal information is shared only with carefully selected processors. They access only what they need to perform their service:
| Processor | Purpose | Country |
|---|---|---|
| Stripe | Payment processing (PCI-DSS Level 1) | USA / Ireland |
| Google Cloud Vision (Google LLC) | OCR fallback when the Revenu Québec receipt QR can't be read by the camera — receipt photo only (transaction reference, amounts, merchant tax numbers; no personal customer data unless the customer voluntarily includes it). We do not retain images server-side beyond the OCR API call. | USA |
| DigitalOcean | Hosting infrastructure | Canada (Toronto region) |
| Resend / Nodemailer SMTP | Transactional email — only the support request a merchant sends from the console (business name, merchant ID, account email and the message). No email is sent to diners, and none is sent per payment. | USA / EU |
Some recipients are located outside Quebec. Before transfer, we assess the destination country's privacy regime per Law 25 § 17. We rely on contractual safeguards equivalent to Quebec standards.
5. How long we keep it
- Transactional records: 7 years (Quebec tax retention requirement).
- Account data: for as long as the account exists. Cancelling a merchant subscription stops payments and billing but does not yet delete the record; deletion is done by hand on request to the privacy officer, keeping only what the transactional retention above requires. There is no automatic purge of inactive accounts today.
- Server logs: 90 days, then purged.
6. Your rights under Law 25
You have the right to:
- Access the personal information we hold about you.
- Rectify inaccurate or incomplete information.
- Withdraw consent for non-essential processing at any time.
- De-index or cease dissemination — request that we stop publishing or sharing specific information about you.
- Portability — receive your information in a structured, commonly-used format.
- Lodge a complaint with the Commission d'accès à l'information du Québec.
To exercise any of these rights, email our privacy officer at joseph.picard@picardbuilds.ca. We respond within 30 days (Law 25 § 32).
7. Cookies & tracking
We use a small number of cookies and similar technologies:
| Cookie | Purpose | Lifetime | Required? |
|---|---|---|---|
quro_merchant_jwt | Keep merchants logged in | 8 hours, or 30 days if the merchant ticks “Keep me signed in” | Yes (essential) |
quro_customer_jwt | Customer session | 7 days | Yes (essential) |
quro_csrf | CSRF protection | Session | Yes (security) |
Stripe's checkout page (checkout.stripe.com) sets Stripe's own cookies for fraud prevention, under Stripe's privacy policy. We also keep two values in your browser's local storage (not cookies): your language choice and the identifier of the restaurant and table you last scanned, so the page reopens in the right place. Neither is sent to us.
We run no analytics or tracking script on the pages where you scan, order or pay — neither a third party's nor our own. Beyond the order and payment records described in section 2 and the server logs, nothing about your visit is recorded.
8. Security
- TLS (1.2 or higher) in transit; session cookies are
HttpOnly,SecureandSameSite. - JWT-based sessions, double-submit CSRF protection.
- Every order total is recomputed on the server from the menu prices before a payment is created.
- Stripe-grade payment isolation — Quro never sees your card number.
- Strict Content Security Policy locking script and form sources to known origins.
9. Privacy incidents
If a confidentiality incident affects your personal information and presents a risk of serious injury, we will notify you and the Commission d'accès à l'information without delay (Law 25 § 3.5). We maintain an internal incident register.
10. Automated decision-making
Quro itself makes no decision about you based solely on automated processing. Stripe's fraud tools may decline a card payment automatically; that decision is Stripe's, under its own notice, and you can pay the restaurant another way.
11. Changes
We will update this notice when our practices change. The "Last updated" date at the top reflects the latest revision. Material changes are visible in the version number and date at the top of this page.
This notice is published in English and French. In the event of a discrepancy, the French version prevails (Charter of the French Language).
Avis de confidentialité
Quro respecte votre vie privée. Le présent avis explique quels renseignements personnels nous recueillons, pourquoi, qui peut y accéder, et les droits que vous accordent la Loi 25 du Québec (la Loi sur la protection des renseignements personnels dans le secteur privé modernisée) et le RGPD européen.
1. Responsable du traitement
Quro est exploité par 9567-8769 Québec inc. (picardbuilds), responsable des renseignements personnels décrits ici. Notre personne responsable de la protection des renseignements personnels (« responsable », exigée par la Loi 25 § 3.1) peut être jointe à :
📧 joseph.picard@picardbuilds.ca
2. Renseignements recueillis
Nous recueillons le minimum nécessaire à la prestation du service :
| Catégorie | Exemples | Quand |
|---|---|---|
| Identification | Nom du commerce, votre nom, adresse courriel | Inscription d'un commerçant, ou création d'un compte client facultatif |
| Transactionnel | Lignes de commande, montant, pourboire, identifiant de table, numéro de facture lu dans le code QR de Revenu Québec | Envoi d'une commande ou paiement d'une facture |
| Photo de la facture | La photo que vous prenez de votre facture de restaurant | Paiement par balayage d'une facture — traitée en mémoire pour lire le total, jamais conservée |
| Technique | Adresse IP, navigateur, type d'appareil | À chaque visite (journaux serveurs) |
Nous ne recueillons pas votre numéro de carte. Vous le saisissez sur la page de paiement hébergée par Stripe (checkout.stripe.com), qui demande aussi une adresse courriel pour son reçu ; ni l'un ni l'autre n'atteint les serveurs de Quro.
3. Finalités
- Traiter les paiements (base légale : exécution du contrat) — paiement, remboursement, gestion des litiges.
- Transmettre votre commande au restaurant (exécution du contrat) — les lignes de commande et la table s'affichent à l'écran de la cuisine ; aucun paiement n'est perçu à cette étape.
- Gérer les comptes des commerçants (exécution du contrat) — connexion, facturation de l'abonnement par Stripe, et réponse aux demandes de soutien que le commerçant nous envoie depuis sa console. Aucun message n'est envoyé au commerçant à chaque paiement ; chaque paiement s'affiche dans son tableau de bord.
- Prévenir la fraude et sécuriser le service (intérêt légitime, également exigé par PCI-DSS).
4. Qui a accès
Les renseignements personnels sont partagés uniquement avec des sous-traitants soigneusement sélectionnés. Ils n'accèdent qu'à ce qui est nécessaire :
| Sous-traitant | Finalité | Pays |
|---|---|---|
| Stripe | Traitement des paiements (PCI-DSS Niveau 1) | États-Unis / Irlande |
| Google Cloud Vision (Google LLC) | Lecture optique (OCR) en cas d'échec du QR Revenu Québec à la caméra — photo de la facture uniquement (référence de transaction, montants, numéros de taxes du commerçant ; aucune donnée personnelle du client sauf si le client en inclut volontairement). Nous ne conservons pas les images côté serveur au-delà de l'appel à l'API. | États-Unis |
| DigitalOcean | Infrastructure d'hébergement | Canada (région de Toronto) |
| Resend / Nodemailer SMTP | Courriels transactionnels — uniquement la demande de soutien qu'un commerçant envoie depuis sa console (nom du commerce, identifiant marchand, courriel du compte et le message). Aucun courriel n'est envoyé aux clients, et aucun n'est envoyé par paiement. | États-Unis / UE |
Certains destinataires sont situés à l'extérieur du Québec. Avant tout transfert, nous évaluons le régime de protection du pays destinataire conformément à la Loi 25 § 17. Nous nous appuyons sur des garanties contractuelles équivalentes aux normes québécoises.
5. Durée de conservation
- Données transactionnelles : 7 ans (obligation fiscale québécoise).
- Données de compte : tant que le compte existe. L'annulation d'un abonnement commerçant arrête les paiements et la facturation mais ne supprime pas encore le dossier ; la suppression se fait à la main, sur demande au responsable, en ne conservant que ce que la durée transactionnelle ci-dessus exige. Il n'existe pas aujourd'hui de purge automatique des comptes inactifs.
- Journaux serveurs : 90 jours, puis purgés.
6. Vos droits en vertu de la Loi 25
Vous avez le droit de :
- Accéder aux renseignements personnels que nous détenons à votre sujet.
- Rectifier tout renseignement inexact ou incomplet.
- Retirer votre consentement pour les traitements non essentiels à tout moment.
- Demander la désindexation ou la cessation de diffusion d'un renseignement vous concernant.
- Portabilité — recevoir vos renseignements dans un format structuré et couramment utilisé.
- Déposer une plainte auprès de la Commission d'accès à l'information du Québec.
Pour exercer ces droits, écrivez à notre responsable à joseph.picard@picardbuilds.ca. Nous répondons dans un délai de 30 jours (Loi 25 § 32).
7. Témoins (cookies) et traceurs
Nous utilisons un nombre restreint de témoins et technologies similaires :
| Témoin | Finalité | Durée | Obligatoire ? |
|---|---|---|---|
quro_merchant_jwt | Maintient la session marchand | 8 heures, ou 30 jours si le commerçant coche « Rester connecté » | Oui (essentiel) |
quro_customer_jwt | Session client | 7 jours | Oui (essentiel) |
quro_csrf | Protection CSRF | Session | Oui (sécurité) |
La page de paiement de Stripe (checkout.stripe.com) dépose les témoins de Stripe pour la prévention de la fraude, selon la politique de confidentialité de Stripe. Nous gardons aussi deux valeurs dans le stockage local de votre navigateur (pas des témoins) : votre langue et l'identifiant du restaurant et de la table que vous avez balayés en dernier, pour rouvrir la page au bon endroit. Ni l'une ni l'autre ne nous est transmise.
Nous n'exécutons aucun script d'analyse ou de suivi sur les pages où vous scannez, commandez ou payez — ni celui d'un tiers, ni le nôtre. Au-delà des dossiers de commande et de paiement décrits à la section 2 et des journaux serveurs, rien de votre visite n'est enregistré.
8. Sécurité
- TLS (1.2 ou plus) en transit ; les témoins de session sont
HttpOnly,SecureetSameSite. - Sessions par JWT, protection CSRF par double-soumission.
- Le total de chaque commande est recalculé sur le serveur à partir des prix du menu avant la création d'un paiement.
- Isolement de niveau Stripe — Quro ne voit jamais votre numéro de carte.
- Politique de sécurité du contenu (CSP) stricte limitant les sources de scripts et de formulaires.
9. Incidents de confidentialité
Si un incident de confidentialité touche vos renseignements personnels et présente un risque de préjudice sérieux, nous vous en aviserons ainsi que la Commission d'accès à l'information sans délai (Loi 25 § 3.5). Nous tenons un registre interne des incidents.
10. Décisions automatisées
Quro ne prend elle-même aucune décision vous concernant fondée uniquement sur un traitement automatisé. Les outils antifraude de Stripe peuvent refuser automatiquement un paiement par carte ; cette décision relève de Stripe, selon son propre avis, et vous pouvez régler au restaurant par un autre moyen.
11. Modifications
Nous mettrons à jour cet avis lorsque nos pratiques évoluent. La date de « Dernière mise à jour » en tête reflète la révision la plus récente. Les modifications importantes se voient au numéro de version et à la date en tête de cette page.
Cet avis est publié en français et en anglais. En cas de divergence, la version française prévaut (Charte de la langue française).