Owner settings: services, hours/buffer, auto-confirm, notify channel #21

Open
opened 2026-07-23 14:07:58 +02:00 by mivanchenko · 0 comments
Owner

Parent

#14

What to build

The owner-facing settings screens that make the public booking page (ticket 3) and availability
engine (ticket 2) actually reflect a real business, rather than only seeded test data.

  • Services CRUD: name, duration, price, active/inactive toggle, scoped to the owner's own
    client_id.
  • Availability config CRUD: opening hours per weekday, min_notice_minutes, max_advance_days,
    buffer_minutes (per resource, per ticket-1's schema decision).
  • auto_confirm toggle (per client): switches new public bookings between immediately-confirmed
    and pending-owner-confirmation.
  • notify_channel field: exposed as a setting (only telegram is a valid, working choice at
    launch — the field itself already exists on clients from before this module).

Acceptance criteria

  • An owner can create, edit, and deactivate services for their own business; changes are
    immediately reflected in the ticket-3 public booking page's service list.
  • An owner can set opening hours, min-notice, max-advance, and buffer; changes are immediately
    reflected in slot generation (ticket 2).
  • Toggling auto_confirm changes whether new public bookings land as confirmed or pending.
  • The owner can view/set their notify_channel, with telegram as the only offered/working
    option at launch.
  • All settings are scoped to the logged-in owner's own client_id — no cross-tenant edit is
    possible.

Blocked by

  • #15 (Booking schema + tenancy-safe data access layer)
  • #19 (Owner accounts: auth, password reset, CRM dashboard visibility)
## Parent #14 ## What to build The owner-facing settings screens that make the public booking page (ticket 3) and availability engine (ticket 2) actually reflect a real business, rather than only seeded test data. - Services CRUD: name, duration, price, active/inactive toggle, scoped to the owner's own `client_id`. - Availability config CRUD: opening hours per weekday, `min_notice_minutes`, `max_advance_days`, `buffer_minutes` (per resource, per ticket-1's schema decision). - `auto_confirm` toggle (per client): switches new public bookings between immediately-confirmed and pending-owner-confirmation. - `notify_channel` field: exposed as a setting (only `telegram` is a valid, working choice at launch — the field itself already exists on `clients` from before this module). ## Acceptance criteria - [ ] An owner can create, edit, and deactivate services for their own business; changes are immediately reflected in the ticket-3 public booking page's service list. - [ ] An owner can set opening hours, min-notice, max-advance, and buffer; changes are immediately reflected in slot generation (ticket 2). - [ ] Toggling `auto_confirm` changes whether new public bookings land as `confirmed` or `pending`. - [ ] The owner can view/set their `notify_channel`, with `telegram` as the only offered/working option at launch. - [ ] All settings are scoped to the logged-in owner's own `client_id` — no cross-tenant edit is possible. ## Blocked by - #15 (Booking schema + tenancy-safe data access layer) - #19 (Owner accounts: auth, password reset, CRM dashboard visibility)
mivanchenko added the ready-for-agentenhancementbooking labels 2026-07-23 14:07:58 +02:00
mivanchenko added a new dependency 2026-07-23 14:09:17 +02:00
mivanchenko added a new dependency 2026-07-23 14:09:18 +02:00
Sign in to join this conversation.