Refund in one dialog again — with every safety check kept
Refunds run from one complete dialog across Billing, POS, Daily Sales, and payment details, with partial amounts, receipt channels, and venue refund methods.
Refunding an ordinary payment no longer requires opening the full payment review page. On a client's Billing tab and in the POS register, the refund dialog is back: pick the amount (partial refunds allowed), choose a reason, decide which receipt channels to send, and confirm once. Every protection stays in place behind the scenes — the same checks the review page runs, including payer verification, refund limits, and second-approver rules. If a refund is over your approval limit, the dialog tells you it has been queued for a second approver instead of failing. Payments that cannot safely move money show the reason inside the same dialog; staff are no longer sent into a separate refund workflow. The Billing tab's refund history also gained quick recovery actions: when a mistaken refund can still be stopped, a "Cancel refund" button appears; once money has already gone back to the client's card, "Send repayment link" creates the consent-based link — the client always approves the repayment themselves.
Class reminder texts — off by default, yours to switch on
Turn on SMS class reminders under Settings → Emails & texts → Text messages; clients who booked get a text alongside the reminder email, and the wording is yours to edit.