Hey everyone,
I've been running a service business on Square for a while now, and like a lot of you, I've spent way too many Sunday nights digging through reports trying to answer questions that should be simple:
— Which of my services actually make me money after I account for time and labor?
— Which staff members are driving repeat clients vs. one-and-done visits?
— Am I losing revenue to no-shows and cancellations, and how much?
— What does my real take-home look like after Square fees?
— Are my clients coming back, or quietly disappearing?
Square gives us the raw data, but turning that into answers still takes hours of spreadsheet work — or it just doesn't happen at all.
I've gotten frustrated enough that I've actually started working on something to solve this for myself. Before I go too far down the rabbit hole, I want to hear from other Square sellers:
1. What's the #1 thing you wish you could see about your business that Square doesn't easily show you?
2. What report or insight would save you the most time each week?
3. If you could snap your fingers and have one "magic dashboard" feature — what would it do?
4. For those of you using Square Appointments — what's your biggest scheduling or client tracking frustration?
I'm not selling anything here — genuinely just trying to understand if other people hit the same walls I do, and what matters most. Whether it's staff performance, client retention, revenue breakdowns, scheduling optimization, or something else entirely — I want to hear it.
Drop your thoughts below. Even if it's just one thing that bugs you, I'd love to hear it.
Thanks in advance 🙏
Square Appointment's Feature Request:
Report with:
Date/time of service
Service Length
Service Provider
Customer Name
Phone Number
Paid/Unpaid
Total Paid
Service Amount
Tip
Receipt Number
We need this report to pay out our service providers weekly.
I have attempted to generate this report using Claude. However, there is no booking.order_id field in the APIs to connect appointments to transactions. Claude can attempt to match them based on certain attributes, but it only works 80% of the time (especially problematic with regular clients who pre-pay and book same service multiple times in a week).
So.... I think I am out of luck.
this would be an amazing report and is why I tie my services to items and run a report that way... which takes a bunch of time as I have to do this for each reader
@DinaLRosenberg I still haven’t given up hope (at this very moment).
I am optimistic that @tranguyen can either get us someone in Appointments or dev forum to recognize the issue and provide the API calls to make this report possible.
I think @JTPets mentioned that a team was able to provide him the API calls for his solution, so it’s possible…?
Honestly my set up is so clunky.... I would hope at some point appointments would integrate better with retail as many businesses run both
Wait are you trying to link bookings to customers or bookings to staff?
Bookings to transactions.
It is currently not possible through APIs.
I have used Claude to try to match based on customer, but 1) it searches based on transactions near the time of the appointment, which fails with pre-payment, 2) a merged customer record maintains original customer id and new customer id. Bookings may be connected to original, transaction may be new. 3) fails to properly match bookings and transactions for regulars who do same service multiple times a week.
TL;DR
At the moment can only use fuzzy logic. I can’t pay my service providers based on fuzzy logic.
If you use loyalty, try asking Claude to use the loyalty system to link the customer ID from the bookings api to custpmers in your orders api and tie them together using loyalty. I then used a there call back or clean up after the webjooks clear to connect the dots for theorders after they pay and collect loyalty points.
I
I'd like better reporting on customers. Many times, a wholesale client is bad with their receipts and asks for last year's report. But there isn't such a thing easily. You need to export the customer transactions and delete dozens and dozens of columns in the spreadsheet. Also, I don't think there is an easy way to say how many "X" did customer Y buy last year without exporting.
I know there is a lot of info available via API but I haven't programmed in the last 25 years and really don't want to be digging into it it frankly. I have Claude but that too they make it sound easy like just say give me a report of this, and the Square built in AI also gives me issues with wrong data that it is pulling from my account.
I want a ALL MY DATA export button - I've gone down a rabbit hole of API's because i wanted image urls and item urls in a csv and didnt know how to get it nativly.
Now i have an entire suite of tools: https://github.com/JTPets/SquareDashboardTool
Square Community
Square Products