Who We Are and How to Reach Us
Singles Handler is the software a trading-card store uses to list its singles on Shopify, keep its stock in step with its orders, and run a buylist. It is also a free place for collectors to track a collection, build decks and trade with other members. It is operated by Singles Near Me, a business registered in Ontario, Canada.
Questions, requests or complaints about personal information go to info@singlesnearme.ca. This page is our privacy policy for the Shopify app, for singleshandler.com and for every store buylist we host. Our terms of service are separate.
If You Run a Store on Shopify
Installing the app connects your store to this service. Everything below is read through Shopify's Admin API with the permissions you approve at install: read and write products, read orders, read and write inventory, read locations, and write files. The files permission is used only to delete the pictures the app added to a product when it replaces them. The app never asks for customer records.
Your Installation
One record per store: your myshopify.com domain, the nickname you give the store, the access token Shopify issues to the app (stored encrypted, see below), the permissions it was granted, the Shopify location you chose for stock, your pricing and refund settings, your plan, and when the store was connected. Store team members are recorded by email address and role.
Your Listings
For every card the app lists, the Shopify product and variant ids, the SKU, and the stock and price the app pushed to that listing. This is how the app knows which listing is which when it reprices or restocks.
Your Orders
To take sold cards out of stock, the app reads your recent orders and keeps, for each line: the order id and order name (such as #1042), the order date, the line item id, the SKU, title, variant and quantity, and which card and holding it matched. When a refund is issued the app keeps the refund id, the line it belongs to, the quantity refunded, and whether stock was returned. Order and refund amounts are not kept.
The app does not request, receive or store any customer identity: no names, email addresses, phone numbers, shipping or billing addresses, and no payment details. The order query asks Shopify only for the fields listed above.
Your Subscription
Plans are billed through Shopify. The app keeps the Shopify subscription id, its status (for example active, cancelled or frozen), its currency and whether it is annual, so it knows which plan limits apply. Shopify tells the app when the status changes. No card or bank details ever reach us.
Operational Records
The outcome of each background check of your store (did it run, did it succeed, and the first few errors) is kept for the most recent 50 runs of each kind. The id of each webhook delivery Shopify sends is kept so a redelivered event is never applied twice.
When You Uninstall
Shopify tells the app the moment you remove it. The app then clears the stored access token immediately, so nothing can reach your store, and marks the installation as removed. Your Shopify subscription ends on Shopify's side when the app is uninstalled.
The installation record itself, with your listings, plan and sale history, is kept for 48 hours so that reinstalling the app within that time brings everything back as it was. Shopify then sends the app its erasure notice for your store (see Shopify Privacy Webhooks below), and on its next hourly sweep the app deletes the store's record and everything held for it: listings, stock, settings, team, buylist submissions and order history. A store that reinstalls after that starts fresh.
If the app could not confirm the uninstall itself, because it had already lost access to your store or Shopify's message never reached it, it waits longer: 14 days from the erasure notice, or from when it finds it can no longer reach your store if that is later. Reinstalling or opening the app during that time keeps everything as it was. Either way, the store is deleted well inside the 30 days Shopify allows.
If you want it gone sooner, write to info@singlesnearme.ca from the store's contact address and we will delete it at once.
Shopify Privacy Webhooks
Shopify sends every public app three privacy notices: a customer's request for their data (customers/data_request), a request to erase a customer (customers/redact), and a request to erase a store 48 hours after it uninstalls (shop/redact). The app verifies each one came from Shopify and acknowledges it.
Because the app holds no customer identity from Shopify, there is nothing of a customer's to hand over or erase, and the first two notices need no further action. A store erasure notice is acted on: the app deletes everything it holds for that store, normally on its next hourly sweep, or after a 14-day wait when it could not confirm the uninstall itself (see When You Uninstall above). Both are well inside the 30 days Shopify allows. Nothing is deleted if the app was reinstalled on that store in the meantime. Buylist submissions made to that store are deleted with it. While a store is live they are collected through our own form, not from Shopify, and follow their own retention rule below.
If You Sell Cards Through a Buylist
When you sell cards to a store through its buylist page, the store you chose receives your submission and decides what to do with it. We hold that information on the store's behalf and give the store the tools to process it.
We collect your name, phone number, email address and mailing address, along with the cards you offered and the amounts you were quoted. The store needs these to identify your submission when your cards arrive, to reach you about the offer, and to pay you. You do not need an account to sell cards.
To limit how many submissions one person can make in an hour, we keep a salted hash of your network address for that hour, never the address itself. It cannot be turned back into your address and it is deleted when the hour passes.
If You Have an Account
Signing in with Google gives us your name and email address. The first sign-in makes your account, which is free. We use the email address to identify your account and everything in it. We never receive your Google password, and we do not keep Google access tokens.
Your account then holds what you put in it: the cards in your collection and what you paid for them, your collections, your wishlist, your decks, your display currency, and your collector profile (a handle, a display name and a short bio). It also holds the trade offers you send and receive, including the cards on each side and any messages exchanged, and any card reports or feedback you submit.
If you are a member of a store's team, your email address and your role on that store are recorded against the store.
Cookies and Browser Storage
All of these are essential to running the site. There is no advertising, analytics or tracking.
- Sign-in cookie. Keeps you signed in. It is sent only over HTTPS, cannot be read by scripts, and expires after 12 hours without activity.
- Store cookie. Remembers which connected store you are working in when you belong to more than one. It holds the store's domain and lasts 180 days.
- Theme cookie. Remembers whether you chose the light or dark theme.
- Scan basket. The card scanner keeps the cards you have scanned but not yet added in your browser's local storage, under a key derived from your account, so a page reload does not lose them. It never leaves your browser.
- Buylist sell list. While you build a buylist submission, a cookie holds an anonymous identifier for your list, for up to 14 days. The list itself (card ids and quantities, nothing else) is held in our server's memory and is dropped after 12 hours without activity.
Who Else Sees It
- The store you sell to. Its team see your buylist submission so they can process it.
- Other members. Anyone signed in can open your collector profile and see the parts you share: your cards and their market value, the cards you have up for trade, your wishlist and your public decks. They see your handle and display name, never your email, what you paid, your notes or your cert numbers. All three parts are shared until you turn them off in Account Settings.
- Shopify, where a store lists its cards. Shopify receives card, price and stock information for the store's listings. It does not receive buylist customers' contact details or anything about collectors.
- Amazon Web Services (Canada and the United States). Everything is stored and run on their infrastructure.
- Card price providers (PriceCharting, JustTCG and tcgcsv). To price the catalogue, the app sends them only card identifiers: card names, set names and product ids. Nothing about any person, store or order is sent. Exchange-rate services receive nothing about you at all.
- Google and jsDelivr. Sign-in goes through Google. Your browser also loads fonts and scripts from Google Fonts and the jsDelivr content network, which see your network address as any web request does.
We do not sell personal information, and we do not share it for advertising.
How Long We Keep It
- Buylist submissions. Submissions are kept until the store removes them. A store can strip your contact details from a submission at any time while keeping its record of the transaction, and you can ask for that using the contact address above.
- Your account. Kept while your account exists. When an account is removed, its collection, collections, decks, wishlist, profile, trade offers and messages are deleted; any card reports it filed stay but no longer name it.
- Your store. Kept while the app is installed, and after an uninstall as described under When You Uninstall. Order lines and refunds are kept with the store's record for as long as it exists, because they are what the store's stock and plan history are built from.
- Rate-limit hashes. One hour.
- Server logs. Our application logs record requests and errors for troubleshooting. They are kept for 30 days and then deleted automatically.
- Database backups. The database is backed up automatically each day, encrypted, and each backup is kept for one day, so something deleted from the service is gone from the backups within two days.
Your Choices
Write to info@singlesnearme.ca to:
- See what personal information we hold about you.
- Correct anything that is wrong or out of date.
- Have it removed. For a buylist submission we can strip your contact details while keeping the store's record of the transaction, or delete the submission entirely. For an account we delete everything listed above. For a store we delete the installation record and its history.
- Withdraw your consent to us holding it, subject to any legal obligation a store has to keep its business records.
Include enough detail for us to find your records. For a buylist submission, the reference number from your confirmation page is the fastest route. For a store, write from the store's contact address.
How It Is Protected
All traffic to and from this service is encrypted in transit with TLS, and browsers are told to use HTTPS only. The database, its backups and the stored card images are encrypted at rest on Amazon Web Services. Shopify access tokens are encrypted a second time before they are written to the database, with keys that never leave our infrastructure, and the three Shopify privacy notices and every other webhook are only accepted when Shopify's signature on them checks out.
Access is limited to the team of the store you sold to and to our administrators. Sign-in is handled by Google, and store team members only reach the stores they are a member of. No system is perfect: if a breach ever puts you at real risk of serious harm, we will report it to the Privacy Commissioner of Canada and tell you directly.
If You Are Not Satisfied
Contact us first at info@singlesnearme.ca and we will look into it. If you are still not satisfied, you can complain to the Office of the Privacy Commissioner of Canada.
Changes to This Policy
When this policy changes, the date at the top changes with it. A change that affects what we collect or who sees it is announced on the site before it takes effect.