Privacy policy
BookSlot is a Shopify app that lets stores take bookings for appointments, consultations, classes and demos. This policy explains what personal data BookSlot handles, why, where it is kept, who helps us process it and how long it stays.
Where things stand. BookSlot is in beta. To be plain about what is not in place yet:
- There is no separate data processing agreement (DPA) with merchants yet. This policy is the only statement of how we process data on your behalf.
- All data is stored and processed in the United States. There is no EU or UK hosting option, and no transfer mechanism such as Standard Contractual Clauses has been put in place with merchants yet.
- Some deletion and export steps are not automated yet; the retention section says exactly which.
1. Who we are and our role
BookSlot (“we”, “us”) is developed and operated by its developer, who can be reached at hasibmlp@gmail.com.
- Merchants (Shopify stores that install BookSlot) are the controllers of their customers’ data. BookSlot processes customer data only on the merchant’s behalf and on their instructions, which are the settings they choose in BookSlot.
- For the data we need to run a merchant’s BookSlot account (the shop, its admin users, billing) BookSlot is the controller.
If you booked with a store and have a question about your data, the store is your first contact. You can also write to us and we will work with the store.
2. Data about merchants and their staff
- Shop details from Shopify: shop domain, store name, contact email, time zone, currency and language.
- Shopify access: the access token Shopify issues so BookSlot can act for the store, and, for people who open BookSlot in the Shopify admin, the Shopify user id, name, email and language that Shopify includes with the session.
- Plan and billing status: plan, trial end date and Shopify subscription id. Shopify bills the merchant; BookSlot never sees card or bank details.
- Settings the merchant enters: locations (name, address, phone, meeting link, opening hours, team inboxes for notifications), services, booking questions, email templates and notification settings.
- Staff profiles the merchant creates: name, and if entered, email, phone, title, bio, photo link, time zone, working hours and time off; a private calendar feed link per staff member.
- Google Calendar connections for staff who connect one: see Google Calendar data.
- Audit records: when someone opens a booking’s details or exports bookings or customers, BookSlot records who did it, when, and the IP address of the request.
3. Data about customers who book
When a customer books or requests a booking on a store that uses BookSlot, BookSlot stores:
- Name, email address and, when the store asks for it, phone number.
- The booking itself: service, location, staff member, date and time (or the preferred time for a request), party size, answers to the store’s booking questions, notes the customer types, language, the booking reference, and the history of the booking (requested, confirmed, rescheduled, cancelled and by whom).
- Notes the store’s team adds to the booking, and when they contacted the customer.
- Campaign tags (
utm_parameters) from the page address, if the page was opened from a tagged link. - Whether the customer agreed to receive marketing email from the store, if the store shows that checkbox.
- For paid bookings: price, currency, payment status, and the Shopify order number and ids. Payment happens in the store’s Shopify checkout. BookSlot never receives or stores card or bank details.
- Shopify customer link: when the store has “Create Shopify customers from bookings” turned on, BookSlot finds or creates the customer in the store’s Shopify customer list (name, email, phone), tags them with the service and location booked, records email marketing consent only when the customer ticked the box, and stores the Shopify customer id.
BookSlot does not collect postal addresses, dates of birth, payment card data or government ids.
4. Data collected automatically, cookies and local storage
- Email delivery records: for every email BookSlot sends, the recipient address, the kind of email, delivery status and time.
- IP addresses: storefront requests are rate-limited by IP address in server memory only; the address is not stored. IP addresses are stored only in the audit records described above.
- Server logs: our hosting provider keeps application logs. BookSlot’s logger removes email addresses and access tokens before anything is written.
- Storefront widget: sets no cookies. It uses the browser’s local storage on the customer’s own device to keep the details they are typing (name, email, phone, marketing choice) until the booking is sent, and to remember a time held during checkout. Clearing the browser’s site data removes it.
- Admin: BookSlot uses Shopify’s session tokens. Connecting Google Calendar sets one short-lived security cookie (about 15 minutes) for the sign-in step.
- This website sets no cookies and uses no analytics, tracking pixels or third-party scripts.
5. How we use data
- To show availability and take, confirm, reschedule and cancel bookings for the store.
- To send transactional emails: confirmations with a calendar file, reminders, reschedules, cancellations, request updates and follow-ups to customers, and new-booking, cancellation and unanswered-request alerts to the store’s team. BookSlot itself sends no marketing email.
- To link bookings with Shopify customers, checkout and orders when the store turns those features on.
- To provide each staff member’s calendar feed and, when connected, Google Calendar sync.
- To manage the merchant’s plan and billing through Shopify.
- To keep the service secure, investigate problems, answer support requests and meet legal obligations.
We do not sell personal data, share it for advertising, build profiles, make automated decisions with legal or similar effects, or use it to train AI or machine-learning models.
6. Sub-processors and sharing
BookSlot uses these providers to run the service. Each one receives only what it needs for its task.
| Provider | What for | Region |
|---|---|---|
| Shopify | The platform BookSlot runs in: admin access, customer records, checkout and payment for paid bookings, app billing | Shopify's infrastructure (global) |
| Supabase | PostgreSQL database holding all BookSlot data, and its backups | AWS us-east-1 (North Virginia, United States) |
| Fly.io | Hosting of the BookSlot app and background jobs; application logs | iad (Ashburn, Virginia, United States) |
| Amazon Web Services (Amazon SES) | Sending booking emails to customers and store teams | us-east-1 (North Virginia, United States) |
| Only when a staff member connects Google Calendar: reading and writing that staff member's chosen calendar | Google's infrastructure (global) |
At the store’s choice, booking details also go to places the store controls: the Shopify admin, the store team’s inboxes, each staff member’s private calendar feed (service, customer first name, reference; anyone with the feed link can read it, and the store can change the link at any time), and a connected Google Calendar (see below). We disclose data to others only when the law requires it.
7. Google Calendar data
BookSlot’s Google Calendar sync is optional and available on the Pro plan. A merchant’s staff member turns it on by clicking Connect Google Calendar in BookSlot and approving access on Google’s consent screen. BookSlot asks for two permissions:
- See, create, change, and delete events on Google calendars you own, used only for the one calendar the staff member chooses: BookSlot adds an event for each confirmed appointment assigned to them, updates it when the appointment is rescheduled and deletes it when the appointment is cancelled; and it reads changes to that calendar’s events so the staff member’s existing commitments are not offered as bookable times.
- See the list of Google calendars you’re subscribed to, used only to let the staff member choose which calendar to sync.
What we put in your calendar. Each event BookSlot adds is titled with the service and the customer’s first name, has the location, and its description holds the booking reference, the customer’s name and phone number, party size, the customer’s notes, the meeting link for online locations and a link to the booking in BookSlot. BookSlot does not invite attendees, so Google sends no emails.
What we store. The Google account email, an encrypted access token and refresh token (AES-256-GCM, key held only in our hosting provider’s secret store), the id of the chosen calendar, a sync cursor and push-notification channel id, the ids of the events BookSlot created, and the start time, end time and title of busy events in the chosen calendar for roughly the next 90 days. We do not store the descriptions, attendees or locations of your own events. Titles are kept only with your connection and are never shown to customers or other merchants; the booking page only sees that a time is unavailable.
How we use it. Only to provide the sync feature described above, which is visible in the BookSlot staff panel. We do not use Google user data for advertising, do not sell it, do not use it to train AI or machine-learning models, and do not transfer it to anyone except our infrastructure providers (Fly.io for hosting, Supabase for the database) as needed to run the feature, or where required by law. BookSlot staff do not read your calendar data except with your permission for support, for security investigations, or where required by law.
Retention and deletion. Disconnecting in BookSlot revokes BookSlot’s access at Google and immediately deletes the tokens, the chosen calendar id and all cached busy times. Events BookSlot already added to your calendar stay there unless you delete them. If access stops working (for example you revoked it in your Google account), BookSlot keeps the cached busy times for 7 days so you can reconnect, then deletes them. When a store’s data is deleted after it uninstalls BookSlot (see retention), all of the above is deleted with it; access is not revoked at Google in that case, so remove BookSlot at myaccount.google.com/connections, where you can also remove it at any time.
BookSlot’s use and transfer to any other app of information received from Google APIs will adhere to the Google API Services User Data Policy, including the Limited Use requirements.
8. Retention and deletion
- While BookSlot is installed, bookings, customers and settings are kept for as long as the store keeps using BookSlot, so the store can see its booking history. Merchants can export bookings and customers as CSV files at any time.
- On uninstall, BookSlot marks the store inactive and deletes its Shopify access sessions straight away. The rest of the data is kept until Shopify sends its shop deletion request (48 hours after uninstall); BookSlot then deletes everything it holds for that store: shop, settings, staff, customers, bookings, answers, email records, audit records and calendar connections. Reinstalling before then picks up where the store left off.
- Customer deletion requests (Shopify’s
customers/redact, sent when a store or customer asks Shopify to erase a customer): BookSlot replaces the customer’s name, email, phone, notes and Shopify customer id. Not yet automated: the customer’s booking answers and booking notes stay on the booking; email us to have them removed. - Customer data requests (Shopify’s
customers/data_request): BookSlot records the request and how many bookings it holds for that customer. An automatic export is not built yet; the store can export the customer’s bookings as CSV from BookSlot, and we provide a full copy on request. - Email delivery records and audit records are currently kept until the store’s data is deleted. Automatic limits (90 days for email records, 12 months for audit records) are planned but not yet in place.
- Backups are made by Supabase and expire on its backup schedule, so deleted data can remain in a backup for a limited time after deletion.
9. Security
- All traffic to BookSlot uses HTTPS (TLS); the database and email connections are encrypted in transit.
- The database and its backups are encrypted at rest by Supabase.
- Google OAuth tokens are additionally encrypted by BookSlot (AES-256-GCM) before they are stored, with a key kept only in the hosting provider’s secret store. No secrets are kept in BookSlot’s source code.
- Requests from Shopify (webhooks, storefront requests) are checked with Shopify’s signatures, and every database query is limited to the one store it belongs to.
- Access to production systems and data is limited to the developer.
- If a security incident affects personal data, we will tell the affected merchants without undue delay so they can meet their own obligations.
10. Your rights
Depending on where you live (for example under the GDPR, the UK GDPR or US state laws such as the CCPA), you may have the right to access, correct, delete or receive a copy of your personal data, to object to or restrict its use, and to complain to your data protection authority.
- Merchants can see and change their data in BookSlot, export bookings and customers, delete everything by uninstalling, or email us for anything else.
- Customers should contact the store they booked with; stores handle these requests through Shopify’s customer privacy tools, which send them to BookSlot. You can also email us and we will work with the store to answer.
11. Children, changes and contact
BookSlot is a tool for businesses and is not directed at children. Stores are responsible for the services they offer through it.
When BookSlot’s data handling changes we update this page and the date at the top. For material changes we will also tell merchants by email before the change takes effect.
Questions or requests about privacy: hasibmlp@gmail.com.