Staff Survival Kit
Your one-sheet for day-to-day operations. Bookmark this page. When in doubt, start here.
!!! tip "Brand new? Read these two pages first" 1. Concepts — the 6 building blocks (locations, resources, users, reservations, credits, access codes) 2. User Journey — what a customer experiences end-to-end
Quick Links
| I need to... | Go to |
|---|---|
| Find a user | Staff → Users or ⌘K + type their name |
| Create a lockout | Managing Lockouts |
| Handle a booking issue | Managing Hourly Reservations |
| Process a waitlist entry | Managing Waitlist |
| Log or manage a tour | Managing Tours |
| Look up a payment | Managing Payments |
| Create or manage a user account | Managing Users |
| Onboard a legacy tenant | Managing Migrations |
| Understand roles and permissions | Roles & Permissions |
| Understand how billing works | Lockout Billing |
| Understand credits | Credits |
| Look up an access code | Access Codes |
| Understand access codes and locks | Physical Access |
| Understand referrals and promos | Referrals |
| Understand insurance add-on | Insurance |
| Manage offers and admin tasks | Admin Guide |
| Submit a feature request | Feature request form |
| Report a bug | Bug report form |
| Request a report | Report request form |
Finding Things in the App
⌘K is your best friend. Press it anywhere to open the command palette. Type a name, email, location, or studio to jump directly there.
Staff Dashboard (/staff)
| Section | What's there |
|---|---|
| Users | Search, create, approve/ban accounts |
| Reservations | All bookings — filter by type, location, status |
| Lockouts | Monthly studio subscriptions |
| Waitlist | Pending, fulfilled, and cancelled entries |
| Inventory | Access Codes, Access Gates, Assets, Locations, Resources |
| Credits | Balances, transactions, packages |
| Overview | Payments tab for Stripe activity |
| Migrations | Legacy tenant invitations and submissions |
Admin (/admin) — admin role only
| Section | What's there |
|---|---|
| Offers | Promotional offers on member dashboards |
| Jobs | Background job monitoring and retry |
| Audit Logs | Searchable log of system actions |
Common Scenarios
"A member can't get in the door"
- Check their reservation is active (Staff → Reservations, find their booking)
- Confirm their account is approved (Staff → Users → check the Approved status)
- Look up their access code — it should appear within 15 minutes of reservation start
- For hourly bookings: access is time-windowed, so they can only enter near their reservation time
- For lockouts: access is permanent while the subscription is active
- If the code should work but doesn't → escalate to Aaron (may be a lock hardware issue)
"A member's payment failed"
- Go to Staff → Overview → Payments tab and find the charge
- Check the status: Retrying means Stripe will try again automatically; Failed means all retries are exhausted
- Access is not revoked on payment failure alone — it's only revoked if Stripe's dunning process ends the subscription
- Contact the member to update their payment method in their account
- For ACH payments: bank transfers take 2–3 days to clear — a pending status is normal
"A member wants to cancel their lockout"
- See Managing Lockouts for the cancellation procedure
- When a lockout is cancelled, access codes are removed and the studio becomes available
- Cancellation is final — there is no "pause" option
"Someone wants to join the waitlist"
- Create their account if they don't have one (Staff → Users → New)
- Use Add to Waitlist to generate a payment link
- Send them the link — they pay a deposit (card or ACH) to secure their spot
- When a studio opens up, fulfill the entry to convert it into a lockout
- Full process: Managing Waitlist
"A member wants a refund for an hourly booking"
- Cancellations 24+ hours before start → credits are restored automatically (if paid with credits) or refund is processed
- Cancellations within 24 hours → non-refundable
- Completed reservations → non-refundable
"A legacy tenant needs to be onboarded"
- Create a migration invitation with their custom pricing
- Send the invitation — they'll receive an email to complete setup
- When they submit, review and approve to convert them to a lockout
- Full process: Managing Migrations
"I need to set up a lockout with special pricing"
Staff can override the calculated price with custom amounts when creating a lockout. The default price is based on studio dimensions and payment method (card vs ACH have different rates). See Pricing for how defaults are calculated.
Key Rules to Remember
Things that trip people up
| Rule | Why it matters |
|---|---|
| One active lockout per studio | You can't double-book a studio for monthly access |
| One active credit subscription per member | They need to cancel the existing one before starting a new package |
| Credits can only pay for hourly bookings | Credits cannot be used for lockouts, waitlist deposits, or anything else |
| ACH takes 2–3 days to clear | Members get access immediately anyway — don't panic if payment shows pending |
| Access codes appear 15 min before start | Hourly customers won't see their code until close to reservation time |
| Banning a member revokes all access codes | Setting a user to "not approved" immediately removes their door access |
| Lockout backdating is limited to 1 month | You can't set a start date further than 1 month in the past |
| No tour rescheduling in the app | Reschedules must go through Acuity — the app will sync automatically |
Emails the System Sends Automatically
You don't need to send these manually — they go out on their own:
| Trigger | Who gets it | What it says |
|---|---|---|
| Hourly booking created | Member | Confirmation + calendar invite |
| Hourly booking cancelled | Member | Cancellation notice |
| 1 hour before hourly booking | Member | Reminder |
| Morning after hourly session | Member | Follow-up with feedback link (suppressed if sent one in last 7 days) |
| Lockout created | Member | Welcome email with access code (or without, if future-dated) |
| Lockout activates (future-dated) | Member | "Studio ready" email with access code |
| Lockout cancelled | Member | Cancellation notice |
| Tour booked/cancelled | Member + location staff | Confirmation or cancellation |
| Waitlist entry created | Member | Confirmation with preferences and deposit info |
| Migration invitation sent | Legacy tenant | Invitation to join |
| Contact form submitted | Staff (routed by topic) | Customer inquiry |
Staff notifications go to the location's community manager. If none is assigned, they go to hello@metrognome.com.
Escalate to Aaron (Engineering)
These situations need engineering support — don't try to fix them yourself:
- Lock hardware not responding (code is correct but door won't open)
- Stripe webhook issues (payments stuck, subscriptions not syncing)
- Background jobs failing repeatedly (check Admin → Jobs first, retry once)
- Data that looks wrong and can't be explained by normal operations
- Anything involving the database directly
- Account or access issues that don't resolve with the normal tools
Best way to reach out: Slack with as much detail as possible — what happened, who's affected, what you already checked.
Glossary
| Term | Meaning |
|---|---|
| Lockout | Monthly studio subscription — recurring billing, 24/7 access |
| Resource | Anything bookable — studios, equipment, storage, parking |
| Location | A physical Metrognome facility |
| Credit | Prepaid booking currency ($1 = 1 credit), for hourly bookings only |
| Access code | Personal PIN for door entry (6 digits by default) |
| Access gate | A lock device connected to a studio or shared entry point |
| Billing anchor | The day of the month when a lockout's recurring charge happens |
| Proration | Partial charge for a period when a lockout starts mid-cycle |
| Dunning | Stripe's automatic retry process for failed payments |
| ACH | Bank transfer payment — lower fees, 2–3 day clearing time |
| Connected account | Each location's own Stripe account (for receiving payments) |
| Community manager | The staff member assigned to a location who receives notifications |
| Impersonation | Staff ability to view the app as a specific member (for troubleshooting) |