ActivityLifecycleLifecycle phase of an activity, derived from its end date relative to the current moment.
ActivityPassGiftingActivityRegistrationIntendedPaymentMethodActivityRegistrationPaymentFilterNarrows a registration feed by whether money changed hands.
ActivityRegistrationStatusActivityRegistrationTimeFilterTime-window filter for Me.registrations. upcoming returns registrations whose session has not yet ended; past returns ones whose session has already ended; all returns both.
ActivityServiceKindWhether a service on a booking activity's menu is a base service (the client picks exactly one) or an optional extra layered on top of the chosen primary.
ActivitySessionSortSort order for an activity-session connection. startAsc returns the earliest sessions first (the default); startDesc returns the most recent first — useful for "newest at the top" views. createdAsc / createdDesc order by when the row was created instead of when the session starts — on session connections that's the session's creation time; on registration connections it's the registration's booking time.
ActivitySessionSourceHow an activity session came to exist, mirroring activitySessions.source. Used by ActivitySessionFilter.source to let an admin narrow a list to a single kind of session — most usefully to isolate (or hide) appointment bookings.
ActivitySessionStatusActivitySessionTimeOfDayTime-of-day buckets used by ActivitySessionFilter.timeOfDay. Each bucket is evaluated in the business's local timezone:
ActivityStructureBankDebitMethodWhich bank rail a connected account can offer. Not an operator choice — Stripe scopes each rail to the merchant's own country, and an account only ever has one: ACH for US accounts, pre-authorized debit for Canadian ones. Canada cannot accept ACH at all.
BillingIntervalBookingModeHow a customer books an appointment type. instant runs the normal registration + checkout flow; request creates a pending request a staff member approves before it is confirmed.
BookingPricingModeHow a structure: booking activity is priced. duration charges the per-increment price times the number of increments in a client-chosen time range; services charges the sum of the client's selected services and derives the appointment duration from their summed durations, so the client only picks a start time.
BookingStatusWhere a booking sits. confirmed and requested hold a place; waitlisted and offered are queued behind one; cancelled has released it.
BookingWindowStatusWhether a location or facility is currently accepting bookings. Named apart from the {@link BookingStatus} that describes a booking's own life — this one is a door being open, not a place being held.
BusinessPaymentsModeWhether the business is processing real payments or running in test mode (card checkouts go through the platform's Stripe account until Connect is finished). Reflects the business's real stripe_mode flag — live once the business completes live Connect onboarding, otherwise test.
CheckoutCreditKindCheckoutFundingSourceWhich funding source the buyer picked in the Sessions-owned toggle above the Stripe Payment Element.
CommerceActorWho set something in motion — a refund, or a cancellation.
DayOfWeekEmailMarketingConsentStatusResulting state of a participant's email-marketing consent. granted means they affirmatively opted in; withdrawn means a prior consent was revoked. The absence of a status (null on {@link ParticipantEmailMarketingConsent.status}) means they were never asked — deliberately distinct from withdrawn.
EntitlementKindWhat kind of thing an entitlement is.
EntitlementStatusWhere an entitlement is in its life. The same vocabulary product purchases used, because the states are the same states: an expired pass, an exhausted one, a membership Stripe stopped billing.
IntervalUnitMonthlyModeMonthlyWeekPaymentCollectionWhen payment for a paid registration is collected. Room is left for future values (e.g. collection when the activity completes).
PricingRuleScopeProductAvailabilityWhich products a Business.products list includes, relative to the current viewer.
ProductFulfillmentStatusFulfillment state for purchases that require handoff (currently physical products). Null for virtual product purchases that self-fulfill at payment time. Additional states (e.g. shipped, cancelled) may be added later.
ProductPurchaseStatusProductTypeDiscriminator for the concrete product subtype. Matches the products.type column on the database.
ProductVisibilityWhether a product is currently for sale on the business's storefront. Hidden products remain in admin views but are excluded from public listings and cannot be purchased.
PurchaseItemKindWhat a line is a claim on. Stored rather than derived, because a league season entry and a season-scoped session line carry the same references.
PurchasePageBlockKindThe kind of a configurable purchase-page block. Each kind interprets its config (and, at checkout, its captured response) differently.
PurchaseStatusWhere a purchase is in its two-phase life. pending is minted with the PaymentIntent and holds nothing — no booking, no entitlement, no capacity; completed is fulfilled; cancelled never fulfilled. Refunding a completed purchase leaves it completed, because the order still happened.
RefundSourceWhere a refund's money went back to.
RegistrationBlockFilterKindThe dimension a {@link RegistrationBlockFilter} scopes on. v1 exposes only registrationType (individual "free agent" vs team sign-ups); adding a dimension (e.g. division, priceTier) is a pure addition — a new enum value, no change to the filter envelope.
RegistrationParticipantModeRegistrationStatusResourceKindThe kind of resource that owns an appointment availability schedule or fulfills an appointment type: a staff member, a facility, or a location.
ScheduleViewA calendar display mode for a business's schedule. Mirrors the user-facing view vocabulary (the embed view attribute and the display_as URL param); DAY is the single focused day, WEEK the seven-day grid, MONTH the month.
SocialSignInProviderAn identity provider a user can sign in with.
SpotAssignmentHow a section sells. assigned is the spot-map case — every spot is a distinct pickable unit. unassigned is a capacity pool (a concert floor, a standing terrace, a lawn): drawn as a shape, sold by the head, with no spot assigned. One map routinely holds both.
SpotHoldReasonWhy a spot is off general sale.
SpotKindWhat a spot physically is. Non-spot kinds render differently and, for wheelchair, take a wider footprint.
SpotLateralPositionWhere a spot sits, derived from the map's geometry rather than from a layout assumption. Drives the ticket, the wallet pass, and the confirmation email.
SpotMapElementKindA non-spot element drawn on the map so the picker reads like the room. Presentational only — never sellable.
SpotMapStageFormHow the audience surrounds the stage. This is what stops the renderer — and the "row F, centre, 12 rows back" descriptions — from assuming the stage is at the top of the map.
SpotMapStageKindWhat the audience is pointed at.
SpotNumberDirectionSpotNumberSchemeKindHow spots within a row are numbered.
SpotRowLabelKindHow a block's rows are named. Theatres overwhelmingly use letters and skip I, because it reads as a 1.
SpotSideWhich bank of a multi-sided house a spot is in, relative to the stage's own facing. Null for a map with no stage.
TextBlockInputType