Operate · Cross-track

Playbooks Index

Every incident scenario across Tracks 1–4, on one page. Click through to the expanded playbook on the track page.

The five surfaces to check are the same across every track. Jump to the relevant scenario below.

SurfaceWhat you check
StripePayments, subscriptions, disputes, refunds, events/logs
OfficeRnDMembers, memberships, day passes
Worker logsCloudflare Dashboard or wrangler tail --format pretty
MailerSend / MailerLiteTransactional delivery · newsletter list state
BrowserConsole + Network tab on the Webflow page
Track 1

Membership Checkout

1. "I signed up but can't log in / access amenities" — paid but no accessCheck. Stripe → confirm subscription active, first invoice paid. OfficeRnD → confirm member exists + active membership on the right plan.2. Card declined at StripeClient-side Stripe interaction. Customer was not charged. Ask them to try another card or ACH. Never escalates.3. Charged but no branded welcome emailCheck. MailerSend Activity by recipient. Check spam.4. Auto-promo didn't apply — customer charged the initiation feeNaming convention: AUTO-{PLAN-SLUG} (all caps). Check Stripe → Products → Coupons.5. Existing OfficeRnD member signs up for a new planExpected: Worker's Step 6 locates the existing member by email and adds a new membership assignment.6. Renewal charge failedStripe → Invoices → Failed. Stripe auto-retries per Smart Retries settings (default: multiple attempts over 1–3 weeks).7. Customer wants to cancelNo self-service cancellation exists.8. Plan change (upgrade / downgrade)Cleanest: cancel existing subscription end-of-period, have them re-sign up on the new plan via the site (preserves auto-promo logic).9. "Invalid plan" error in the browserCheck. CMS plan-slug on that plan matches a key in PLAN_CONFIG exactly (case-sensitive, kebab-case). Browser console: window._S defined, checkout.js loaded.10. Checkout loads but the form is blankCheck. Browser console for errors. Confirm stripe_checkout_v21 site script is still applied (Webflow → Site Settings → Custom Code). The Scripts API overwrites site scripts on up…
Track 2

Meeting Room Bookings

1. "I booked but got no confirmation email" — expected todayTrack 2 does not yet send a customer confirmation email. The customer has only the on-screen redirect to /meeting-booking-confirmation + the Stripe receipt.2. Stripe payment succeeded, no calendar event- Worker logs filtered by PaymentIntent ID. Look for: "Gate 2 conflict" / "availability check failed" / "Google Calendar event creation failed" — in each case, an auto-refund sho…3. Calendar event exists, customer has no confirmationSame as #1 — we don't send an email yet. Send manually.4. Multi-day booking — some days on calendar, others missingCheck. Worker logs filtered by PaymentIntent ID.5. Double-booking on the calendarCheck. Was one event added manually? Our Worker can't see manual additions — no race, just a human mistake.6. Calendar shows no availability when it shouldCheck. Is the date within 24 h – 60 d? Is it a weekend (disabled)? Is it a Canadian holiday (currently not handled — customer can book, but space may be closed)? Check Google Cal…7. Customer wants to cancelNo self-service cancellation.8. Chargeback / disputeFix. Respond via Stripe Dashboard with: booking metadata, calendar event (showing the slot was reserved), published cancellation policy, any emails. Stripe + card network decide.9. Sonic Studio booking missing extrasCheck. Did the customer actually see the Sonic extras on the form? Extras are triggered by the Sonic slug — if slug or JS is wrong, extras don't render.10. CORS / "Failed to fetch" on submitHappens when a new origin (staging, preview) hits the Worker without being in ALLOWED_ORIGINS.
Track 3

One-Off Purchases

Track 4

Inquiries & Lead Capture