Booksy Store seller settlements
Booksy Store is a marketplace where sellers list products. Every month, sales have to be settled between Booksy, each seller and accounting. The team running this asked me to automate it, and I built it end to end.
Seller pages and emails work and are being tested with a trusted seller. Full rollout is expected at the December settlement, and I'll add measured results after it.
- Automated:MakePulls the sales dataFrom the internal API into a spreadsheet, at the start of the month.
- Automated:Apps ScriptCreates the settlementsA separate one for each seller.
- A person decides:EmployeeReviews the first versionAdds notes and can change commissions.
- Automated:WebhookEmails each sellerApproval triggers it. Each email has a personal link.
- A person decides:SellerEnters correctionsOur system doesn't catch returned products, and the seller is owed part of the commission back.
- A person decides:EmployeeAccepts or sends back
- Automated:Apps ScriptUpdates accountingAccepted settlements go to the accounting spreadsheet.
The problem
According to the team, one person spent 2 working days preparing settlements and sending them out, a few more hours answering emails and correcting them, and a full day collecting everything into the accounting spreadsheet. The files were hard to read, everything went through direct email, and the work would grow with every new seller. There are currently a few dozen sellers.
My role
I built all of it myself, based on what the people running the process needed. A colleague exposed the API endpoint.
Key decisions
Nothing reaches a seller without approval. If data is wrong or missing, it stays inside the company.
No answer has a defined outcome. If a seller doesn't respond by the deadline, the settlement is accepted with no returns, so one silent seller can't hold up accounting.
Access depends on the stage. A check runs before the page opens, so a seller can't enter before the employee approves or after submitting.
New links every month. Links are regenerated for each settlement and cleared when it ends.
What can go wrong
If the API returns no data, the process stops before anything is sent. If an email fails, it's resent for that seller only. Scenario errors show up on my automation dashboard.