Support · Payments · 13 min read
Booking time with Square appointments
The calendar is a product. It should match the services you actually sell.

The calendar is a product, not a widget.
We use Square for studio appointments because hardware, payments, and the calendar can live together. The same idea applies if you cut hair, see patients, or run a showroom. A booking is not a contact form that hopes someone checks a shared inbox. It is a service with a name, a duration, a CAD price, a timezone, and a confirmation that lands where staff already work. If any of those are missing, you will double-book a Tuesday. SYCGeeks books from Vancouver on Pacific time. We will design your calendar with the same seriousness we give checkout, because both move money and both can ruin a Saturday.
Square is the honest processor when you sell in a room and online. A terminal at the desk, a deposit on a booking, a card on file, Apple Pay on a phone checkout for a gift card — one account. Stripe is better when the appointment is really a subscription inside a custom app. PayPal is a familiar extra, not the calendar. Do not run Acuity for the book, Square for the till, and a spreadsheet for “real” availability. Inventory of time has the same rule as inventory of jackets: one truth, or you will sell the slot twice.
You can book this studio before you become a client. Open Appointments, pick the conversation you need, and choose a time. We confirm through Square. If you already have an account, the booking appears under your dashboard. Email-only confirmation is how people double-book a Tuesday — we will not ship that pattern to you, and we do not use it ourselves. Toronto, Montreal, and Halifax clients are welcome. The overlap with Pacific hours is the only constraint. If the thing is on fire, call +1 (672) 200-7924 on a weekday.
GST/HST applies to many services the same way it applies to goods. Put the tax story on the service before anyone picks a colour for the calendar. If a 60-minute review is $250 CAD plus tax, the booker should see that before they confirm. If a discovery conversation is complementary, say $0 CAD, not “we’ll figure it out.” A calendar that hides price is a sales tactic that creates no-shows. We would rather a clear CAD number and a buffer than a mysterious hold.
Name services the way a client would say them.
Write service names in plain language. “Discovery conversation” is better than “Tier 1 sync.” Put the length and the CAD price next to the name so nobody is surprised. Our own menu is the example we are willing to live with: Discovery workshop, 45 minutes, complementary, for scope and a written recommendation. Project review, 60 minutes, $250 CAD, to audit an existing site, store, or app and leave with a punch list. Compliance consult, 45 minutes, $350 CAD, for PIPEDA, accessibility, and checkout risk. AI / blockchain consult, 60 minutes, $450 CAD, for where new technology actually pays off — and where it does not.
If you cut hair, “Women’s cut, 45 minutes, $85 CAD” beats “Style experience.” If you see patients, use the names your college allows, in both official languages if you serve Quebec or a federal audience. If you run a showroom, “Private walkthrough, 30 minutes, $0 CAD, Pacific time” is a service. “Let’s grab coffee” is not a Square duration. Staff cannot buffer coffee. Clients cannot add coffee to a calendar they share with a partner. Name the work.
French names are rewritten, not squeezed. “Book” and “Prendre rendez-vous” are not the same width. “Project review” and “Revue de projet” are close; “Compliance consult” and “Consultation en matière de conformité” are not. Design the service card for the longer language. Offer both languages on the booking page if both must be correct on day one. A calendar that only books in English is a Canadian product bug for any business that claims to serve French-speaking clients. Bilingual work is architecture. It is not a flag.
Do not invent seven services when you sell two. Extra SKUs on a calendar confuse staff and create gaps you cannot fill. Launch with the conversations that pay for the week. A later service is a published add-on or a care-hour change if it is truly small — a name, a duration, a price. A second location, a new practitioner, or a membership that bundles visits is new scope on the same project, about 25 percent less with care. We will not silently fold a second calendar into the reserved hour.
Pacific time, buffers, and duration are the design.
Appointments run on Pacific time from Vancouver unless you ask otherwise in writing. That is not Vancouver romanticism. It is how we staff the room. If you are in Toronto, a 10:00 Pacific discovery is 13:00 Eastern. If you are in Halifax, it is 14:00 Atlantic. Show both, or show the booker’s timezone with the studio timezone next to it. A calendar that only prints “10:00” without a zone is how someone arrives an hour late and thinks you are rude. We include timezone on confirmations and on the dashboard row.
Duration is a promise. Forty-five minutes means we stop at forty-five, with a buffer after so the next conversation does not start in the hallway. Buffers are part of the design, not a courtesy you remember when you are tired. A 45-minute discovery with a 15-minute buffer is a 60-minute hole in the day. Price and staff accordingly. If you sell 30-minute cuts with no buffer, you will run late by noon and the 14:00 client will eat it. Square can encode padding. Use it. Do not rely on someone “just knowing.”
Opening hours should match who is in the room. If nobody answers the till on Monday morning, do not sell Monday 9:00. If you close for a civic holiday in British Columbia, block it before the week opens. Remote teams in Quebec have different holidays; if you serve both, write the rule. Overnight slots look global and feel abandoned. We would rather fewer hours that a human honours than a 24-hour grid that dumps into voicemail. Pacific weekdays are our call line. Your line can be different. It cannot be imaginary.
Travel time is a buffer you forget until a showroom visit in Richmond sits next to a Gastown cut. If the service is in person, add travel or do not offer adjacent slots at different addresses. Online conversations still need a two-minute join buffer; Square and our calendar links should open at the stated Pacific time, not “sometime that hour.” We generate Google Calendar and ICS files with UTC stamps so the event survives timezone conversion. Your confirmations should too.
A booking must land in the dashboard, not only in email.
Your site should confirm the booking and show it under Appointments. Email-only confirmation is how people double-book a Tuesday. Inboxes filter. Assistants miss threads. A dashboard row with the service name, Pacific start, duration, CAD amount, and notes is the record. If the booker has an account, they should see it when they sign in. If they booked as a guest, they should still exist in Square and in the studio list you check every morning. We do not ask you to hunt a confirmation in a personal Gmail.
Notes are for decisions, not chat. “Waiting on product photos from Jane” is useful on a project. “Wants to talk about Square POS and GST in Quebec” is useful on an appointment. “Looks good!!” is not. The next person should be able to pick up the file if you are sick. When you join as a merchant, the dashboard opens on projects, with appointments and workflows beside them. Do not bury a new brief inside an old project’s notes. Book a new conversation or open checkout for a new engagement.
Square still holds the source of truth for the slot. Our dashboard is the operator view: what the studio owes this week, which bookings are paid, which are complementary. If webhook delivery fails, the danger is a paid appointment that never appeared on the site. Care means we watch the jobs that move money and write down what we changed. Monthly care is $450 CAD. Yearly is $4,500 CAD — two months included. A silent calendar is how projects rot. A watched calendar is how Tuesday stays honest.
Wallet login and email login should both land on the same appointments list. A merchant who connected MetaMask should not have a different calendar than a merchant who used a password. Roles stay. Wallet users are treated as verified. If the nonce route cannot reach the database, we say so instead of showing a blank page. Bookings are too important to hide behind a parse error. Use email and password if the wallet path is down, then tell us.
Deposits, no-shows, and the money on the slot.
A complementary discovery still occupies 45 minutes plus a buffer. That is why we offer it on purpose, not as an unlimited funnel. Paid reviews take a card through Square so the slot is real. If you need a deposit for a Saturday showroom, take it when they book, in CAD, with GST/HST on the receipt. Do not invoice later from a PDF that never mentions the time. People protect slots they have paid for. They forget slots that were “just a hold.”
No-show policy belongs on the service page, in both languages, before confirm. Twenty-four hours on Pacific time is a policy a human can keep. “Anytime before” is not. If you keep the deposit, say so. If you move the slot once for free, say so. Square can collect and refund. Your staff must know which button to use on Monday morning without calling us. If they cannot, the calendar is not yours yet. We will sit with them during a care hour and write the clicks in the dashboard notes.
Apple Pay can pay a deposit on a phone if Square can settle it. We will not fake that button. Cards stay. Interac e-Transfer is a poor fit for a slot that starts tomorrow — matching a key takes human time. Optional ETH is a worse fit for a 45-minute conversation. Keep crypto off the appointment pay path unless you are invoicing a project, with a signed quote, and the work does not start until the transaction confirms. Calendar slots need instant or near-instant settlement.
Refunds print receipts. French receipts cannot be English with accents. If you cancel a $250 CAD review, the tax line should reverse cleanly. Test this once before you announce the calendar, the same way we test a real CAD store order. Use a real Square Canadian account, not a US sandbox. Then refund. Then read. Only then is the money path launch-ready.
Staff, rooms, and the till in the same family.
If two practitioners share a Tuesday, the calendar must know both, and the site must let a client pick one — or pick “next available” only if you can honour it. Square team management is the reason to stay on Square instead of a pretty third-party widget. Hardware at the desk should see the same day’s bookings. If the person at the till cannot see that 14:00 is a consult, they will sell a walk-in into it. That is the jacket problem, with people instead of SKUs.
Rooms matter when the service is in person. A showroom visit and a haircut cannot share a chair. Encode resources, or do not offer overlapping services. Online-only conversations can share a Zoom, but they cannot share a brain. Buffers exist so a producer can write notes before the next call. We put those notes in the dashboard, not in a chat that disappears. If you have students logging hours, orientation is required before hours will save. A booking is not an hour log. Do not mix them.
PIPEDA applies to booking forms. You need a name, a way to reach them, and maybe a note about the brief. You do not need a birthdate, a company size dropdown, and a marketing consent buried under the confirm button. Say why you collect. Chat and analytics on the booking page are still personal information. Health, legal, and financial clients get a tighter review. If your college or insurer has rules, send them in the brief. We would rather design for them than retrofit in week nine.
Accessibility is launch work. Keyboard paths through the slot picker, contrast on available versus busy, labels that a screen reader can use, and errors that do not exist only in colour. A calendar widget you cannot use without a mouse is not a product. We test the book flow in English and French, on a phone, on a laptop, with reduced motion respected. Decorative photos of the studio still need alt text. Vancouver is on the page because you are actually here.



