Bob's Wishlist Privacy Policy

Effective October 10, 2026

This policy describes how Bob's Wishlist (the "App"), a Shopify app operated by Vintage Villages, 302 Carlaw Ave. Unit 123b, Toronto, Ontario, M4M 3L1, Canada ("we", "us"), collects, uses and retains information when a merchant installs the App on a Shopify store and when shoppers use it on that store.

Information about merchants

When a merchant installs the App, Shopify provides us with the store's domain, name and an access token that allows the App to act on the store within the permissions the merchant grants. The App requests permission to read products, inventory levels and orders, and to create discount codes (used only for the single-use codes in reminder emails, when the merchant chooses them). The App stores the settings the merchant chooses, including the sender name, reply-to email address and mailing address shown in back-in-stock emails, and, when the merchant chooses to send from its own domain, that domain name and its DNS verification status. When the merchant designs its emails, the App stores the wording and colour chosen and either the address of the store's Shopify brand logo or a copy of a logo the merchant uploads, which is served from the App's servers to the emails' recipients. If the merchant turns on the weekly summary, the App emails the merchant's chosen address a summary of saves and sales, with no shopper details.

Information about shoppers

Wishlists. A shopper who is not signed in keeps their wishlist in their own browser; the App receives only the product saved or removed, without any identifier, to count how often each product is saved. When a signed-in customer saves a product, the App stores the customer's Shopify customer ID with the product and the date it was saved, so the list is available on any device. When a shopper signs in, the products in their browser list are added to their account list. A signed-in customer may also create named lists; the App stores each list's name with their Shopify customer ID. Signed-in customers can see their lists on their store's customer account page, which the App provides.

Shared wishlists. A shopper may choose to share their wishlist through a private link. The App then stores a random link code, the first name the shopper chooses to show (optional), and, for a shopper who is not signed in, a copy of the products on their list together with a one-way fingerprint of a random key kept in their browser. Anyone with the link can see the name and the products, and nothing else; the page asks search engines not to index it. The App counts how often the link is opened. The shopper can stop sharing at any time, which disables the link; links are deleted with the rest of a customer's data on a deletion request.

Back-in-stock sign-ups. When a shopper asks to be emailed when a product is available again, the App stores the email address entered, the product and variant, the shopper's language, their Shopify customer ID if signed in, the wording of the consent they gave, the date, and their place in line.

Price-drop and low-stock alerts. When a shopper asks to be emailed when a product on their wishlist drops in price or is almost sold out, the App stores the email address entered, which of the two alerts they chose, their language, the wording of the consent they gave and the date, and either their Shopify customer ID (signed in) or, for a shopper who is not signed in, a copy of the products on their list together with a one-way fingerprint of a random key kept in their browser. To detect a change, the App keeps the last price and stock level it saw for each saved product. A shopper may also ask for occasional reminders of the products on their wishlist; the App then records when it last sent one. When the merchant chooses unique discount codes, the App creates a single-use code in the merchant's store for each reminder. The shopper can stop these alerts and reminders from any such email or from their wishlist page; doing so does not affect back-in-stock sign-ups.

Emails and results. For each email, the App records when it was sent and whether it was delivered, bounced, opened or reported as spam, as reported by our email provider, and whether its link was clicked. When a shopper follows a link from an email or from a product recommendation, the App places a random reference in the shopper's cart. When an order is placed, the App reads the order to determine whether it followed an email or a recommendation, by that reference or by the order's email address matching a back-in-stock sign-up for a product in the order, and stores the order's number, total, currency and date for the merchant's reports. When a visitor to a shared wishlist marks a product as a gift they are buying, the App stores that mark with a one-way fingerprint of a random key kept in the visitor's browser, so they can undo it; it holds no name or contact details and is removed after 90 days. The App does not store order addresses or payment information. Email addresses that have unsubscribed are kept so that they are not emailed again.

How we use information

We use the information described above solely to provide the App's functions to the merchant: to show wishlists to shoppers, to send the back-in-stock, price-drop and low-stock emails shoppers requested on the merchant's behalf, to report to the merchant which products are saved and awaited and which emails led to orders, and to answer support requests. We do not sell information, use it for advertising, combine it across stores, or share it with third parties, except with the service providers named below and with Shopify as required to operate the App.

Service providers

Fly.io, Inc. hosts the App and stores its data on servers located in Canada. If a merchant connects its own Klaviyo account in the App, the App sends to that account the email address of a shopper who asks for back-in-stock, price-drop or low-stock emails, with the product concerned and the emails the App sends them, and the store's own Klaviyo script records products the shopper saves; the merchant is responsible for that account. If a merchant uses Shopify POS, the merchant's staff can see, on a customer's profile in POS, the products that customer has saved while signed in. If a merchant uses Shopify Flow, the App passes the same kinds of events to Shopify Flow in the merchant's store. Resend sends the App's emails on our behalf and reports their delivery; it receives the recipient's email address and the content of the email, and processes them in the United States.

Retention and deletion

Information is kept while the App is installed on the store. A shopper can remove products from their wishlist at any time and can unsubscribe from back-in-stock emails with the link in every email. Entries in the App's access log are deleted after one year. When an address that unsubscribed signs up again, the App holds that address and the pending sign-up until the shopper confirms it by email; an unconfirmed request is deleted after 7 days, and held requests are also deleted on a customer data erasure request or the shop data erasure request.

Where Shopify forwards a customer's request to delete their information, we delete that customer's wishlist, their back-in-stock sign-ups, the emails sent to them and the orders credited to those emails, and any unsubscribe record for their email address. Where Shopify forwards a customer's request for access, we identify the information we hold about that customer and send it to the merchant by email within 30 days. When a store uninstalls the App and Shopify sends its shop data erasure request, we delete all information held for that store.

Security

Information is transmitted over encrypted connections and stored encrypted at rest. Backups are encrypted and are deleted automatically after five days. Access to the App's servers and accounts is limited to the operator of the App and is protected by two-step authentication. Email addresses are shown to store staff partly hidden, including in the activity export available to merchants on the Pro plan. The App keeps an access log recording when a store's detailed email activity is viewed or exported, by which store staff account, and when Shopify's privacy requests are processed.

Data processing terms for merchants

By installing the App, the merchant engages us to process, on the merchant's behalf, the information about shoppers described in this policy, and these terms form part of the agreement between the merchant and us. The merchant remains responsible for its own store's privacy notice to shoppers. We process that information only to provide the App's functions as described above and on the merchant's documented instructions, which are the settings the merchant chooses.

We keep the information confidential, maintain the security measures described above, and engage only the sub-processors named in this policy. We will assist the merchant, so far as the App allows, in responding to requests from individuals exercising their privacy rights. We will notify the merchant without undue delay, and in any event within 72 hours of becoming aware of it, of any security incident affecting the merchant's information. When the App is uninstalled and Shopify sends its erasure request, we delete the merchant's information as described under Retention and deletion.

Your rights

Merchants and shoppers may have rights under applicable privacy law, including the Personal Information Protection and Electronic Documents Act (PIPEDA) and the General Data Protection Regulation where it applies. Shoppers should first contact the merchant whose store they used. Requests may also be sent to us at the address below.

Changes

We may update this policy from time to time. The effective date above will change when we do.

Contact

Questions about this policy: bob@vintagevillages.ca