The financials dashboard at /mentor/financials is your business overview: every dollar in, every dollar out, what is left, and what is owed. Available on Pro and Premium tiers.
The dashboard at a glance
The top of the page has four stat cards:
- This month's earnings: total revenue from bookings completed this month.
- This month's expenses: total expenses you have logged.
- This month's net: earnings minus expenses.
- Year-to-date net: same, full year.
Below that:
- Earnings chart: line graph of monthly earnings over the last 12 months.
- Recent transactions: the last 20 bookings and expenses interleaved by date.
- Payouts log: a list of Stripe payouts with their amounts and dates.
Earnings sources
The dashboard automatically pulls earnings from:
- Stripe payments: each booking paid by card. Net of Stripe fees.
- Manual payments: each booking you marked as paid (cash, bank transfer, PayPal, etc).
For Stripe payments the system knows the exact net amount (price minus Stripe fees). For manual payments the dashboard assumes the gross amount; if you paid a fee on the manual method (e.g. a 3% PayPal Goods/Services fee), you can manually reduce the earnings amount when categorising.
Expense tracking
Expenses are anything you spend that is relevant to your teaching business. Common categories:
- Studio rent (if you rent space).
- Insurance (liability insurance for teaching).
- Continuing education (workshops, advanced trainings you attend).
- Supplies (mats, blocks, props for classes you provide).
- Marketing (Instagram ads, business cards, etc).
- Software (your scheduling tools, accounting software, etc).
- Travel (when you travel to teach).
- Other.
To log an expense:
- Click "Add expense" on the financials page.
- Pick a date, category, amount, and add a description.
- Optionally upload a receipt (image or PDF, stored in private Supabase Storage).
- Save.
The expense appears in your monthly totals and reduces your "net" calculations.
Payout reconciliation
Stripe pays you out on a schedule (daily, weekly, etc, as you set in your Stripe dashboard). The "Payouts log" on the financials page lists every payout Stripe has made to your bank.
Each payout entry shows:
- Date.
- Amount.
- The breakdown: which bookings the payout covered.
- A link to the Stripe Express dashboard for the original record.
If you ever need to confirm "this $X payout to my bank covers exactly these bookings", the log is the place. Useful for accounting.
CSV exports
Three exports are available:
- Bookings.csv: every booking with student name, class, date, gross amount, fees, net amount, payment method, status.
- Expenses.csv: every expense with date, category, amount, description, receipt URL.
- Combined.csv: earnings AND expenses interleaved by date.
The combined export is the easiest format to hand to an accountant: every business event in chronological order.
Click "Export" on the financials page, pick the date range, pick the format.
Currency
The dashboard displays everything in your home currency (set at onboarding). If you have ever taken bookings in a different currency (e.g. via international Stripe charges), we convert to your home currency using the exchange rate at the time of the transaction.
The display currency does not change historical records; it is just the lens.
Cash vs Stripe reconciliation
Stripe earnings reconcile automatically. Cash earnings depend on you accurately marking bookings as paid. If you forget to mark a cash booking as paid, the dashboard does not know about it.
A common monthly habit: on the last day of the month, open the bookings list filtered to "this month, cash, pending payment" and reconcile. Mark each as paid (or refund / cancel if appropriate) so the financials match reality.
Tax forms
For US-based mentors using Stripe: Stripe issues a 1099-K if you exceed the IRS threshold ($600 for most states from 2026 onward). Find it in the Stripe Express dashboard under "Tax forms".
For non-US: your local tax authority's reporting is between you and them; the CSV exports give you the records you need.
See tax forms and 1099 for the full discussion.
Sharing financials with an accountant
You have three options:
1. CSV exports
The cleanest. Export monthly or quarterly and hand to your accountant.
2. Accountant access
You can add an "accountant" role to your account with read-only access to financials. They log in with their own email; they see only the financials section, not your bookings or client data.
To add: /mentor/settings/team → "Add accountant" → enter their email. They get an invite link.
3. Direct Stripe access
Your Stripe Express dashboard has its own access controls. You can grant an accountant view-only access there, separate from MoveMentors.
Best practices
- Log expenses as you incur them. End-of-year scramble is worse than 30 seconds at the time.
- Receipt photos. Snap a photo with your phone at the time of purchase, upload later.
- Categorise consistently. Pick a set of categories you use and stick with them.
- Reconcile monthly. End-of-month: cash bookings marked paid, expenses entered, payouts checked.
- Annual cleanup. Once a year (typically January), review the prior year's totals, fix any miscategorised expenses, generate the full-year CSV for your accountant.
Common questions
Why does my "earnings this month" differ from my Stripe balance? Stripe payouts have a rolling delay (2-7 days). The earnings in the dashboard count the booking date; the Stripe balance reflects what is currently available for payout.
Can I edit a past booking's payment amount? Not directly. If a booking was paid the wrong amount, refund and rebook. The financials reflect the actual transactions.
Can I tag a booking as "non-business" (e.g. friend who paid as a favour)? Not natively. You can mark a booking as "paid" with an amount of 0 to record the attendance without earnings. Or you can keep the actual amount and add a corresponding expense to offset.
The dashboard says I made $X but my bank shows less. Why? The most common reasons:
- Stripe fees: bank deposits are net of fees; the dashboard's "earnings" is also net of fees, but if you compare against the gross of the bookings list, they differ.
- Stripe payout schedule: today's bookings are not in today's bank deposit.
- Refunds: a refund issued reduces the next payout but the booking is already in past months' earnings.
The CSV export's "net amount" column should match what hits your bank, within a few days of payout schedule.
Next steps
- Tax forms and 1099: the year-end tax reporting picture.
- Accepting payments: which methods feed the financials.