Seraya Psikologi — Documentation

Booking and payment MVP · Implementation baseline · 96 ADR

11. Keep Rescheduling Administrative and Audited

Status

Accepted for the MVP working model; replacement, same-payment, and same-entitlement behavior are resolved by ADR 0039. Admin permission, policy cutoff, and notification details remain open.

Context

Mutating an Appointment's time in place destroys the original schedule history and complicates slot release, notifications, payment reconciliation, and audit. Client self-service rescheduling adds another high-risk concurrency path before the basic booking lifecycle is proven.

Decision

No client self-service rescheduling in MVP. An authorized admin may perform a RescheduleAction. The operation must preserve the original Appointment history and create/link an explicit replacement schedule/slot rather than silently overwriting the original time.

The action must be audited and should trigger the applicable schedule-change notification. ADR 0039 resolves the relation: the Booking remains the same, a replacement Appointment is created, package replacements reuse the same SessionEntitlement, and the existing Payment carries forward without a new charge.

Consequences

Positive:

Costs and constraints:

Open follow-up

Define admin reschedule permissions, policy cutoff, client request channel, and exact status/event vocabulary. Replacement Appointment cardinality and payment/entitlement carry-forward are resolved by ADR 0039.