Billing & Payments
Manage all aspects of your studio's billing, from setting up payment plans and processing online payments to recording manual transactions and tracking payment history. Streamline your revenue operations with automated billing and flexible payment options.
- 1
Two billing modes
Each billing plan has a mode: ONLINE (Stripe Connect) or MANUAL (tracked manually). Choose the mode that fits your workflow when creating a plan.
- 2
ONLINE mode: Automated payments
ONLINE plans require Stripe Connect. When you assign an ONLINE plan to a student, MyDojang creates a checkout session and sends a payment link to the parent. The billing starts as PENDING_PAYMENT until the parent completes checkout.
- 3
MANUAL mode: Track yourself
MANUAL plans are for cash, check, or bank transfer payments. When you assign a MANUAL plan, the billing starts as ACTIVE immediately. You record payments manually as they arrive.
- 4
Automatic sync for ONLINE plans
ONLINE plans sync automatically with Stripe. When you create or edit an ONLINE plan, MyDojang creates or updates the corresponding Stripe Product and Price on your connected account. Subscription lifecycle events (payment succeeded, failed, cancelled) are synced via webhooks.
- 5
Flexibility per plan
You can have both ONLINE and MANUAL plans at the same time. For example, create an ONLINE plan for recurring monthly memberships and a MANUAL plan for cash drop-in classes.
When to use each mode
- 1
Find the setup banner
When you first log in as a studio owner, a billing setup banner appears on your dashboard. Click 'Continue Setup' to open the step-by-step wizard.
- 2
Step 1: Connect Stripe
The wizard walks you through connecting your Stripe account. Click 'Connect Stripe' to be redirected to Stripe's secure onboarding flow. You can also skip this step and return later.
- 3
Step 2: Create billing plans
Create one or more billing plans for your students. Choose from Per-Class, Package, or Unlimited plan types. Set the price, billing interval, and class limits. You can create multiple plans before continuing.
- 4
Step 3: All set
Review your setup summary and follow the suggested next steps: add students, create classes, and assign billing plans to students.
- 5
Dismiss or revisit
Dismiss the dashboard banner with the X button when you're done. You can always access the wizard directly at Dashboard > Billing > Setup.
New studios start here
- 1
Why Stripe is required
Stripe is the payment processor that enables online credit card and ACH payments. You must connect a Stripe account before you can accept online payments from members.
- 2
Navigate to Settings
Go to Settings > Billing or Settings > Integrations to find the Stripe connection section.
- 3
Click Connect Stripe
Click the 'Connect with Stripe' button. You'll be redirected to Stripe's secure authorization page.
- 4
Authorize your account
Log in to your Stripe account (or create one if you don't have one). Review the permissions and authorize MyDojang to process payments on your behalf.
- 5
Confirmation
You'll be redirected back to MyDojang with a confirmation message. Your Stripe account is now connected and you can start accepting online payments.
- 1
Two fee layers on every online payment
Every payment processed through MyDojang involves two separate fees: Stripe's card-processing fee and MyDojang's platform fee. Both are deducted before the remainder is deposited into your bank account.
- 2
Stripe's processing fee (paid by your studio)
Stripe charges 2.9% + $0.30 per successful card transaction. This comes out of your payout automatically. For example, on a $60 payment: Stripe keeps $2.04, and your studio receives the rest minus the platform fee.
- 3
MyDojang's platform fee (set per tournament or plan)
MyDojang charges a platform fee as a percentage of each payment. For tournaments, this is set on the tournament itself (visible on the tournament settings page). For member subscriptions and ad-hoc charges, it is set at the studio level. The exact percentages are shown in your account settings.
- 4
Net payout example
On a $60 tournament registration with a 5% platform fee: Stripe takes $2.04 (2.9% + $0.30), MyDojang takes $3.00 (5%), and your studio receives $54.96. The payout lands in your connected Stripe account within the standard Stripe payout schedule (typically 2 business days).
- 5
Member billing fees work the same way
Recurring subscription payments and one-time ad-hoc charges follow the same two-fee structure. Stripe takes 2.9% + $0.30, MyDojang takes its platform percentage, and the net is deposited to your studio. You can see the exact platform fee percentage in Settings > Billing.
- 6
Stripe payouts land in your connected account
All online payments — member subscriptions, tournament registrations, spectator tickets, and shop orders — are collected by Stripe and deposited into the bank account linked to your Stripe Connect account. You manage your payout schedule and bank details directly in your Stripe dashboard.
- 7
Refunds reverse the net, not the gross
When you issue a refund, the student receives their money back in full. Stripe does not return its processing fee to your studio (this is Stripe's policy for most refunds). The platform fee is also not reversed. Factor this in when setting your refund policy.
Where to see your platform fee
- 1
Go to Billing Plans
Navigate to Settings > Billing Plans or Dashboard > Billing to view and manage your studio's billing plans.
- 2
Click Create Plan
Click 'Add Plan' or 'Create New Plan' to open the plan creation form.
- 3
Choose billing mode
Select ONLINE (Stripe Connect — automatic checkout and subscriptions) or MANUAL (cash/check — you track payments). This determines how students enroll and pay.
- 4
Choose plan type
Select from per-class pricing (pay as you go), package plans (X classes for Y dollars), or unlimited monthly memberships.
- 5
Set pricing and details
Enter the plan name, description, price, and billing frequency (one-time, monthly, quarterly, annual). For package plans, specify the number of classes included.
- 6
Configure options
Set additional options like trial periods, setup fees, or automatic renewal settings. Save the plan to make it available for student enrollment.
- 7
Automatic Stripe sync (ONLINE only)
If you chose ONLINE mode, MyDojang automatically creates a Stripe Product and Price on your connected account when you save the plan. Updates sync automatically.
- 1
Edit the plan
Go to Billing Plans, click Edit on the plan you want to change, and update the price or billing interval.
- 2
Save the changes
Click Update Plan. For ONLINE plans, MyDojang automatically creates a new Stripe Price and archives the old one. New subscribers will be charged the new rate.
- 3
Choose whether to migrate existing subscribers
If the plan has existing Stripe subscribers, a dialog will ask whether to apply the new price to them. Click 'Apply to Existing' to update all current subscribers, or 'New Subscribers Only' to leave them on the old rate.
- 4
Migration takes effect at next billing cycle
Migrated subscribers won't see any immediate charge change. The new rate applies at their next renewal date with no proration.
- 1
Select a student
Go to the student's profile page from your Students list. Click on the 'Billing' or 'Enrollment' tab.
- 2
Click Add Enrollment
Click 'Enroll in Plan' or 'Add Subscription' to begin the enrollment process.
- 3
Choose a billing plan
Select from your available billing plans. The pricing and billing frequency will be displayed for confirmation.
- 4
ONLINE plan workflow
If you choose an ONLINE plan, MyDojang creates a Stripe Checkout Session and automatically sends a payment link to the parent's email. The billing starts as PENDING_PAYMENT. Once the parent clicks the link, completes checkout, and is redirected to the confirmation page, the payment is verified and the billing becomes ACTIVE.
- 5
MANUAL plan workflow
If you choose a MANUAL plan, the billing is created as ACTIVE immediately. You record payments manually as the parent pays with cash, check, or bank transfer.
- 6
Set start date
Choose when the enrollment should begin. This is typically the current date, but you can schedule future enrollments as needed.
- 7
Automatic billing (ONLINE only)
For ONLINE recurring plans, the student will be automatically charged via Stripe on the billing cycle (monthly, quarterly, etc.). Stripe webhooks sync payment status back to MyDojang automatically.
- 1
When to resend
If a parent didn't receive the checkout link, or the link expired, you can resend it from the student's billing detail page.
- 2
Find the PENDING_PAYMENT billing
Go to the student's profile > Billing tab. Look for the enrollment with status PENDING_PAYMENT.
- 3
Click Resend Checkout Link
Click the 'Resend Link' or 'Send Payment Link' button. MyDojang creates a fresh checkout session and automatically sends the payment link to the parent's email. You'll see a confirmation toast that the email was sent.
- 4
Parent completes checkout
The parent receives the email, clicks the link, and completes payment. After checkout, they're redirected to a confirmation page where the payment is verified. The billing status changes to ACTIVE automatically.
- 5
Checkout verification on redirect
When you return to the student's billing page after a parent completes checkout (if you were waiting for it), the page automatically verifies the payment status and updates the UI if the billing has become ACTIVE.
- 1
When to use manual payments
Record cash, check, or direct bank transfer payments that happen outside of the Stripe system. This keeps all payment records in one place.
- 2
Navigate to payments
Go to the student's profile and click on the 'Billing' or 'Payments' tab. Click 'Record Payment' or 'Add Manual Payment'.
- 3
Enter payment details
Enter the amount, payment date, payment method (cash, check, bank transfer), and any notes or reference numbers (like check numbers).
- 4
Associate with invoice
If this payment is for a specific invoice or billing period, select it from the list. Otherwise, record it as a general account credit.
- 5
Save the record
Click 'Save' to record the payment. It will appear in the student's payment history and update their account balance accordingly.
- 1
One-time charges
Create one-time charges for items outside of regular membership plans, such as uniforms, testing fees, tournament registration, or private lessons.
- 2
Go to student billing
Navigate to the student's profile and click 'Add Charge' or 'Create Invoice' in the billing section.
- 3
Enter charge details
Enter a description (e.g., 'Uniform - Size 3' or 'Black Belt Testing Fee'), the amount, and the due date.
- 4
ONLINE mode: Payment link auto-generated on creation
If you choose ONLINE mode with Stripe, MyDojang automatically creates a checkout session and emails the payment link to the parent when you save the charge. The charge starts as PENDING. Once the parent pays and completes checkout, the charge becomes PAID automatically.
- 5
MANUAL mode: Track yourself
If you choose MANUAL mode, the charge is created as PENDING. You mark it as PAID manually when you receive cash, check, or bank transfer payment.
- 6
Resending payment links
If a parent didn't receive the payment link or it expired, click the 'Send Payment Link' button on the charge detail page. A fresh checkout session is created and the link is automatically emailed to the parent again.
- 7
Tracking
Ad-hoc charges appear in the student's payment history and on their account statement. You can filter by charge type to track specific revenue streams.
- 1
View all payments
Navigate to Billing > Payment History or Dashboard > Payments to see a complete list of all payments across your studio.
- 2
Payment status
Each payment shows a status: Paid (successful), Pending (not yet paid), or Failed (attempted but unsuccessful). You can filter by status to find issues quickly.
- 3
Filter options
Filter payments by date range, student name, billing plan, payment method, or status. This is helpful for accounting and reporting purposes.
- 4
Student-specific history
View an individual student's payment history from their profile page. This shows all charges, payments, refunds, and current balance.
- 5
Export data
Export payment history to CSV or PDF for accounting software integration or tax preparation.
- 1
Create discount codes
Go to Billing > Discount Codes and click 'Create Code' to set up promotional discounts for new members or special offers.
- 2
Choose discount type
Select percentage-based discounts (e.g., 20% off) or fixed amount discounts (e.g., $25 off). You can apply discounts to specific plans or all plans.
- 3
Set expiration
Configure an expiration date for time-limited promotions. Codes automatically become invalid after the expiration date.
- 4
Usage limits
Set a maximum number of times the code can be used, or limit it to one use per customer. This prevents abuse of promotional offers.
- 5
Apply to existing subscriptions
You can apply discount codes to active subscriptions after signup. Go to a student's billing detail page and click 'Apply Discount' next to any active plan. Select a discount code from the dropdown and confirm. The discount replaces any existing one and applies to upcoming invoices (not retroactive).
- 6
Share codes
Share discount codes with prospective members through your website, social media, or email campaigns. Students enter the code during enrollment to receive the discount.
- 7
Track usage
View how many times each code has been used and the total discount amount applied. This helps measure the effectiveness of promotional campaigns.
- 1
What are direct signup links?
Direct signup links let prospective members sign up for a specific billing plan and pay in one flow — no staff involvement required. Share the link on social media, in emails, or on your website to grow your membership.
- 2
Generate a link
Go to Dashboard > Billing > Plans. On any eligible plan (ONLINE mode, Package or Unlimited type), click the Share button. A dialog shows the signup URL ready to copy.
- 3
Add a discount code (optional)
In the Share dialog, you can select one of your active discount codes from the dropdown. The code is appended to the URL so the member automatically gets the discounted rate.
- 4
Copy and share
Click the copy button to copy the link to your clipboard. Share it wherever you want — social media, email campaigns, your website, or text messages.
- 5
What the member sees
When a prospect opens the link, they see a branded signup page with your studio name and logo. They fill out their info, create an account, and are redirected to Stripe Checkout to pay. After payment, their billing is activated automatically.
- 6
Which plans are eligible?
Only ONLINE billing plans with Package or Unlimited type can have direct signup links. Per-Class and MANUAL plans are not eligible because they require staff-managed enrollment.