<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap" />

Admin Assistant — User Guide

You handle gym ops on behalf of an owner: scheduling, member check-in, member lookup.

Your permissions are deny-by-default, not allow-by-default. A new admin assistant account starts with a small set of things switched on — managing schedules, checking members in, viewing the member list, messaging the team — and everything else switched off until the owner grants it individually. That is the opposite of "full access except a few things", and it is deliberate.

Member health and nutrition data are never yours, on any preset. That one is a hard boundary, not a setting.

Set your expectations low for the rest, for now. Several permissions your owner can tick — member workout history, the revenue dashboard, refunds, checkout, the CRM pipeline — are not yet read by the screens they are supposed to unlock, so granting them may change nothing you can see. If something this guide mentions does not appear for you, ask your owner, but do not be surprised if the answer is "it's not wired up yet." We would rather tell you that than have you chase a toggle.

At-a-Glance (3-minute orientation)

Your five tabs along the bottom are Dashboard, Schedule, Members, Messages and More. Bottom-left is Dashboard. There is no tab called "Admin".

  1. Start on Dashboard. It shows your next appointment and a row of quick actions.
  2. The four quick actions are View Schedule, Clients, Team Chat and Check-in Kiosk.
  3. Schedule for the calendar.
  4. Members for the client list.
A second, richer admin dashboard exists but nothing opens it. It has a pending-check-ins count, an upcoming-appointments list and its own quick actions including member lookup and checkout. It is built and it is not reachable — not even from your own onboarding, which sends you to the ordinary dashboard. If you have seen it described elsewhere, that is why you could not find it.
There is no Inbox. Earlier versions of this guide were built around one — a single queue surfacing booking conflicts, failed payments and waiver-pending members. It does not exist in the app. Triage happens from the Dashboard and the Schedule instead.

Reliably reserved to the owner, regardless of what you are granted:

  • Stripe Connect onboarding
  • Cancellation-policy changes
  • Subscription tier changes
  • Custom domain setup

In-Depth — User Stories

US-AA-001: Check a member in

This is the front-desk job, and it needs the Check in members permission from your owner.

  1. From Dashboard, tap Check-in Kiosk for the front-desk kiosk flow, or View Schedule to work from the calendar.
  2. Find the session and mark the member as arrived.

There is no waiver-reminder queue and no in-app "manual collect" flow for a signed paper waiver. If your gym needs a waiver chased, that is an owner-side task today.

US-AA-002: Add a new member on behalf of the owner

You cannot do this today. The Invite Management screen is shown only to owner accounts, so it does not appear in your Settings at all — regardless of what permissions your owner has ticked for you. Ask your owner to send the invitation.

Worth correcting one thing an earlier version of this guide asserted, because it shapes what you ask for: trainer provisioning is not permanently owner-reserved by design. The permission model does allow an admin assistant to be granted invitation rights covering trainers, admin assistants and members. It is the screen that is currently owner-only, not the intent.

US-AA-003: Work the schedule

The Schedule tab is where most of your day happens, and it needs the Manage all schedules permission (on by default).

  1. Open the Schedule tab, or tap View Schedule from the Dashboard.
  2. Work the calendar from there — appointments across the trainers you can see.
Trimmed for accuracy. This section used to describe a conflict-resolution queue with side-by-side bookings, a "reassign to a different trainer" action, filter chips by service/member/location, and a one-tap Conflicts filter. None of those exist. We have removed them rather than leave you hunting for controls that were never built.

US-AA-004: Look a member up

When someone calls the front desk and you need their details:

  1. From Dashboard, tap Clients — or use the Members tab.
  2. Search for them.

(There is a dedicated admin member-lookup screen too, but it currently has no way in — see the note above.)

What you get is contact information — name, email, phone. You do not get workouts, nutrition or health data, and that boundary is enforced in the database rather than just hidden in the interface, so it holds however you arrive at the record. If a member asks you about their training or their numbers, route them to their trainer. You are not being denied a feature; you are outside a boundary that exists to protect them.

US-AA-005: Refunds and checkout

There is no refund flow on a member's billing screen. Opening a member and looking at Billing shows their card on file, their active contract and their ledger — and no way to refund a charge. An earlier version of this guide walked through a full/partial refund with a reason picker. That screen does not exist.

Front-desk checkout is a permission your owner can grant, but the quick action for it sits on the unreachable admin dashboard described above, so there is no way in today either.

For an actual refund, go to the owner. Refunds ultimately settle through Stripe against the trainer's or gym's balance, and the owner has the access to do it.

US-AA-006: Help a member who can't log in

There is no "Admin actions" menu on a member record, and no in-app way for you to trigger a password reset, verify a member's identity or change their email address. Those controls do not exist for your role.

What actually works, and what you should tell them:

  1. On the login screen, tap Forgot Password?
  2. Enter the email address on the account.
  3. Tap Send Reset Link.
  4. Check the inbox, and the spam folder — that is usually where it is.

The most common cause of "the reset email never arrived" is that the address they are typing is not the address on the account. You can confirm which address is on file from the Members tab.

You never see a member's password. Nobody at MyTrainerOS does — they are not stored in a readable form.

US-AA-007: Reports for the owner

There are four reports, and they are all financial: Revenue Report, Monthly P&L, Financial Transactions and Payroll Report. There is no Members, Sessions, Attendance or Cancellations report.

You most likely cannot open them. Viewing the revenue dashboard and exporting financial data are both off by default. Your owner can switch either on individually from their team-management screen, so if this is genuinely part of your job, it is a reasonable thing to ask for.

Where you can export, the file downloads straight to your device. Nothing is emailed to you, and there is no "your link will arrive within 60 seconds" step.

In practice: when an owner asks you for numbers for their accountant, the honest answer today is usually "you'll need to pull that one yourself."

US-AA-008: Submit a feature request from owner feedback

If the owner mentions wanting something the platform doesn't do:

  1. Help → Suggest a feature.
  2. Pick a category, write the request, optionally attach a screenshot.
  3. Submit. The MyTrainerOS team sees it in the public feedback board alongside everyone else's requests. Upvotes drive prioritization.

Triaging tickets you're forwarded

Front desk means problems reach you first. Most of them are not support tickets, and knowing which are is most of the job.

Handle it yourself

Booking conflicts, check-in problems, a member who needs their session moved, a member who can't find something in the app — these are all front-desk work and are covered elsewhere in this guide. Filing a ticket for them adds a day and changes nothing.

Send it to the owner

Refunds beyond your granted permission, pricing questions, policy exceptions, staff access, and anything about payouts are owner decisions. MyTrainerOS support cannot authorise them on the owner's behalf.

File a support ticket

Escalate to MyTrainerOS when the software is at fault rather than the process — a page that won't load, a payment that failed with no explanation, data that shows the wrong value, or a member who cannot log in after a password reset has genuinely been delivered and used.

These are the response targets we publish. Severity is chosen when the ticket is created.

SeverityFirst responseResolution target
Urgent — production down, you can't take payments<2h business<24h
High — a feature is broken, or a member is blocked<8h business<72h
Normal — how-to questions, minor bugs<24h business<7 days
Low — feature requestsacknowledged within 7 daysno commitment

What to include

The difference between a ticket resolved on the first reply and one that takes four round-trips is almost always the detail in the first message. Include:

  • What you were trying to do, in one sentence.
  • What happened instead — the actual message or behaviour, not a paraphrase of it. If there was an error, quote it exactly.
  • Steps to reproduce, numbered, starting from a screen you can reliably get back to.
  • A screenshot, if anything was visible on screen.
  • Who it affects — just you, one member, or everyone. If it's a specific member, include their member ID rather than their name.
  • When it started, and whether it has ever worked.

Please don't paste health details into a ticket. We don't need a member's measurements, injuries, or nutrition history to fix a software bug, and a ticket is not the right place to store them. A member ID is enough for us to find the right account.

Because you are usually reporting on someone else's behalf, two extra details matter more for you than for anyone else:

  • Report the member's ID, never their health information. As an admin assistant you do not have access to member workouts, nutrition, or body stats, and a support ticket must not become a way around that boundary.
  • Say whether you reproduced it yourself or are relaying what a member told you. Second-hand reports are still worth filing — but we will ask different questions, and knowing up front saves a round-trip.

Tracking status

Every ticket moves through four states:

  • Open — filed, not yet picked up.
  • In progress — someone is actively working on it.
  • Resolved — we believe it's fixed and we're waiting on you.
  • Closed — finished.

A resolved ticket stays reopenable for 7 days. Reply within that window and it reopens; say nothing and it closes automatically. Closing is not a deadline on you — if the same problem comes back later, file a new ticket and reference the old number.

You will see the tickets you filed. You will not see tickets filed by members or by other gyms — ticket visibility follows the same boundary as the rest of your permissions.

If you're stuck

If a ticket has gone past its first-response target above, reply on the existing ticket rather than opening a second one — a reply bumps it, and duplicate tickets split the history across two threads and slow things down. If the problem has got worse since you filed (it started as a question and is now blocking payments), say so in a reply and ask for the severity to be raised. Severity is not fixed at intake.