A business-level cancellation policy. Drives the refund decision when a participant or staff member cancels a registration. Per-activity overrides live on the activity itself; resolved policy for an activity is exposed as Activity.effectiveCancellationPolicy. Staff-initiated session cancels (cancelActivitySession) bypass this policy and default to a full refund regardless of the cutoff.
Fields
cutoffMinutesIntMinutes before the session start at which the in-window percentage stops applying. Null means "no cutoff" — the in-window percentage applies to every cancel.
refundPercentageInWindowInt!Refund percentage (0–100) issued when a participant cancels at or before the cutoff. Applied to monetary splits (Stripe + gift card). Pass / membership session credit is always restored.
refundPercentageOutOfWindowInt!Refund percentage (0–100) issued when a participant cancels after the cutoff. Applied to monetary splits (Stripe + gift card).
penaltyFixedCentsInt!Flat cancellation fee (cents, ≥ 0) withheld from the monetary refund when a participant cancels out of window. Deducted from the card refund and floored at zero — never charged separately. 0 = no fee.
penaltyCreditsInt!Pass / membership session credits (≥ 0) forfeited when a participant cancels a credit-funded booking out of window. 0 = restore the credit as normal; 1 = forfeit the booked credit; N = deduct N credits.