Payments and Billing
How payments work, payment types, payment methods, auto-pay, coupons, offline payments, refunds, late fees, grace periods, auto-lock, receipts, subscriptions, disputes
Last updated April 20, 2026
Payments and Billing#
Money is the topic that drives the most support questions, so this file is long. If you want the short version: parents pay, club owners collect via Stripe Connect, Prodemy takes a platform fee. Refunds are the club owner's call, not ours. Keep reading for the details.
What the support chatbot can and can't help with#
Before you go further: Prodemy's in-app chatbot can answer any question about how billing works on Prodemy — auto-pay, coupons, refund policies, late fees, auto-lock, receipts, Stripe Connect setup, how the platform fee is calculated, and everything else in this file. Ask anything.
What the chatbot cannot do:
- Look up your specific account, charges, or payment history.
- Reverse a charge, issue a refund, or override your club owner's refund decision.
- Investigate why a specific transaction failed or why your Stripe payout hasn't arrived.
Those are account-level actions that require a human to look at your data. If that's what you need, raise a ticket at https://prodemy.app/contact and include your payment ID. Otherwise, keep reading or just ask the chatbot — it's got you covered.
How Prodemy payments work#
Prodemy is a marketplace. When a parent pays for a class or tournament, the money flows directly into the club's own Stripe Connect account — Prodemy never holds it. At the moment of charge, Prodemy's platform commission is automatically deducted as a Stripe application fee and routed to Prodemy. The club receives the rest in their usual Stripe payout schedule.
For independent coaches (no club), payments flow through Prodemy's Stripe with the platform commission deducted. The coach receives the rest to their own Stripe Connect account.
Platform subscriptions (if you're on a student plan) go 100% to Prodemy and are billed through Stripe Billing.
One rule to keep in mind everywhere: financial forward-only. No retroactive changes. The commission rate, Stripe fee handling, class fee, and everything else are snapshotted onto the payment record at the moment it's created. If a club raises its fee next month, existing enrollments keep the old price until their next billing cycle.
Who pays for what#
On Prodemy, the parent is always the payer for any child-related activity. Students cannot pay for themselves unless they're 18 or older and the club has enabled "adult student self-pay" for them.
Routing rules by initiator:
- Parent initiates (books a coach, registers for a tournament, enrolls their child in a class) — checkout happens in the same flow. Pay with card on the spot.
- Child initiates (student self-enrolls from their dashboard) — the enrollment is created but tied to the parent's account as a PENDING payment. The child sees "Awaiting parent payment." The parent gets a notification with a "Pay now" button.
- Adult student (18+) self-pays — if the club has enabled this, the student pays directly from their own payments page. No parent involved.
All pending payments across all payment types — class, tournament, workshop, camp, coaching session, club membership, lane booking, subscription — show up in one unified list on the parent's Payments page.
Payment methods#
Prodemy supports two classes of payment method:
- Card and wallets — Visa, Mastercard, Amex, Discover, plus Apple Pay and Google Pay where supported.
- Bank account (ACH) — direct bank debit. Requires micro-deposit verification (Stripe sends two small test deposits you confirm). Verification takes 1–3 business days.
Separate Stripe fees apply. Card fees are typically 2.9% + $0.30 per transaction. ACH fees are typically 0.8% (capped at $5). Exact rates are configured by admin and may vary slightly.
Cards are charged instantly. ACH is asynchronous — the charge is initiated right away but can take 3–5 business days to clear. During that time the payment shows as "Processing."
Saving a payment method#
When you pay for the first time, Stripe saves your card or bank account automatically for future on-session reuse. You'll see it listed on the Payments page under "Payment methods." You can set a default and remove methods anytime.
Saved methods are required for auto-pay and are used automatically by the club for recurring invoices.
Who picks card vs bank#
At checkout, you choose between card and bank on the Stripe Checkout page. Both options are available unless the club has disabled one. Some clubs charge different Stripe fees to the parent based on which method is used — the checkout page shows the exact amount before you confirm.
Auto-pay#
Auto-pay lets Prodemy automatically charge your saved card (or bank) on the due date of any recurring payment — class fees, club memberships, platform subscriptions.
Turning auto-pay on#
You can enable auto-pay in three places:
- At checkout: tick the "Enable auto-pay for future payments of this class" box.
- On the Payments dashboard: go to the "Auto-pay" tab and toggle it on per payment item.
- On a specific pending payment: click "Enable auto-pay" before paying.
Before each auto-charge#
You'll get a reminder notification 3 days before the charge. The email and in-app notification both show the amount, the card on file (last 4 digits), the charge date, and a "Disable auto-pay" link.
Turning auto-pay off#
Go to Payments → Auto-pay tab → toggle off. Your next payment will become manual (pay-on-due). No penalty, no re-enrollment needed.
What if the auto-charge fails#
Card declined, bank account closed, etc. — the payment moves to FAILED, and you get a notification. Your club's reminder cadence kicks in, and after a few days the grace period ends and auto-lock may trigger. You can fix the payment method and retry from the Payments page.
Coupons#
Club owners can create discount codes. Coupons are optional — most classes don't have one.
Entering a coupon at checkout#
At checkout, expand the "Have a coupon code?" field. Type the code (case-insensitive) and hit apply. If valid, the discount amount shows on the summary line immediately. If not, you'll see a human-readable error — most commonly:
- "Coupon expired" — past the valid-until date.
- "Coupon not valid for this item" — it's scoped to a specific class or event type that doesn't match.
- "Coupon usage limit reached" — too many people already used it, or you've hit your personal max uses.
- "Coupon requires higher amount" — there's a minimum purchase.
- "Coupon not for your account" — it's account-locked to a different parent.
Types of coupons#
- Percentage off — e.g. 20% off.
- Fixed amount off — e.g. $10 off.
- Free trial period — e.g. first month free.
- Sibling discount — stackable with other enrollments at the same club.
Platform commission when using coupons#
Important for club owners: platform commission is calculated on the pre-coupon amount. If a $100 class has a 10% coupon and the parent pays $90, Prodemy's commission is still calculated on the $100 original. The club eats the discount. This is standard marketplace practice.
Offline payments#
Not every family pays online. Prodemy supports recording offline payments (Zelle, cash, check, direct bank transfer).
How it works#
- Parent pays the club directly — sends a Zelle, hands over cash, drops off a check, etc.
- Parent records the payment on their Payments page: click "Record offline payment" on the pending item, pick the method (Zelle / Cash / Check / Bank transfer), enter a reference number (Zelle confirmation code, check number, etc.), and submit.
- The club owner sees the recorded payment in their Reconciliation dashboard and confirms receipt.
- Once confirmed, the payment is marked PAID and any related access (class enrollment, etc.) goes active.
Until the club confirms, the payment shows "Awaiting club confirmation" on the parent's side.
Offline payments and platform commission#
Prodemy still charges the platform commission on offline payments. The commission is collected from the club's next online Stripe payout (auto-deducted first), and any remainder is invoiced monthly. This keeps the platform fee model consistent regardless of how the parent paid.
Refunds#
This is the most common support question. The short answer: the club owner decides the refund. Prodemy is not involved in the refund decision itself.
How it works#
- Prodemy enforces one platform rule: a minimum 24-hour "cooling-off" window where a parent can request a refund on any paid enrollment.
- Beyond that 24 hours, the club's specific refund policy kicks in. Each club sets its own.
- Refund amounts, eligibility windows, and partial-refund percentages are all the club's call. The club's policy is shown on the confirmation screen before you complete any payment.
Requesting a refund#
Go to Payments → History → find the item → click "Request refund." Pick the reason from the dropdown and add a note. The club owner gets notified and either approves or denies.
Refund method#
When the club approves, they pick one of:
- Stripe refund — money back to the original card or bank account within 5–10 business days.
- Platform credit — a credit on your Prodemy account that auto-applies to your next payment at that same club. Does not transfer between clubs.
You'll see the refund status and method on the Payments page. An email confirms when the refund is processed.
If the club denies or ignores the refund#
Raise a ticket at https://prodemy.app/contact. Include the payment ID (shown on the Payments page), the date you requested the refund, and any communication with the club. Prodemy does not mediate refund decisions but we do mediate disputes if the process broke — e.g. the club didn't respond, the refund was processed but you never got the money, etc.
Late fees#
When a payment is past due, late fees may apply. These are configured per class by the club owner and vary widely.
Common setups#
- Flat late fee — e.g. $15 added after the grace period ends, capped at a max total.
- Daily late fee — e.g. $1/day, capped at a max.
- Percentage — e.g. 5% of the overdue amount.
Grace period#
Every class has a grace period (in days) after the due date before late fees start. Typical values are 0, 3, 5, or 7 days. The specific grace period is shown on the confirmation screen and on the payment detail page.
Seeing the exact amount owed#
Go to Payments → find the overdue item. The total shown includes the original fee plus any accumulated late fees. It updates automatically as the days pass.
Auto-lock#
If a payment goes far enough past due, your dashboard may auto-lock. This is a club-level setting and not every class has it enabled.
What auto-lock does#
- Your parent dashboard pages (except Payments, Settings, and Payment Methods) are grayed out with a lock icon and a red banner.
- The banner says: "Access locked! Please make payment to resume access."
- You cannot enroll in new classes, book coaches, or register for tournaments while locked.
Warning before lock#
You get a 3-day warning notification (email + in-app) before the auto-lock triggers. Pay within those 3 days and the lock never happens.
How to get unlocked#
Pay the overdue item. The Stripe webhook triggers within minutes of a successful charge and auto-unlocks you. You don't need to log out and back in — the dashboard will refresh and remove the lock automatically.
For offline payments, unlock happens when the club owner confirms receipt. That can take a day or two depending on the club.
Manual lock by club owner#
Beyond auto-lock, club owners can manually lock a family's access for any reason (e.g. behavior issues). Manual locks are unlocked by the club, not by payment. If you got manually locked and don't know why, raise a ticket.
Receipts#
Every paid payment generates a receipt. You can view it in two places:
- Payments → History → click the item → "View receipt." Shows itemized breakdown.
- PDF download via the "Download receipt" button.
Receipts include: parent name, child name (if applicable), description, amount, Stripe fees (if passed to parent), platform fees (shown transparently), date, and a unique transaction ID.
For tax or accounting, the PDF is the canonical version.
Platform subscriptions (student plans)#
If you're on a paid Prodemy student plan (Beginner $0.99/month or Advanced $2.99/month), these subscriptions are billed separately through Stripe Billing.
Managing your subscription#
Go to Settings → Subscription. You can:
- See your current plan and next billing date.
- Upgrade or downgrade (prorated).
- Cancel — your status becomes CANCELLING and you keep access until the end of the paid period, then drop to free.
If you cancel and change your mind#
Before the period ends, just hit "Resume subscription." Status returns to ACTIVE and the next renewal charges as normal.
Club owner billing (the platform fee you pay)#
Club owners: this section is for you. It covers the platform fee Prodemy charges your club, which is separate from the per-transaction commission.
Three fee models#
When a club is approved, admin picks one of:
- PERCENTAGE — Prodemy takes X% of every paid transaction. No monthly fee. Deducted automatically at the time of each payment as a Stripe application fee.
- FIXED_MONTHLY — Prodemy charges a flat monthly fee (e.g. $49/month) regardless of transaction volume. Billed via Stripe invoice on your anniversary day each month. No per-transaction cut.
- HYBRID — a lower per-transaction percentage plus a smaller monthly base fee. Both apply.
Your specific model and rate are on the Club Settings → Billing page. Contact Prodemy via /contact if you want to change models — changes take effect next billing cycle, never retroactively.
Monthly invoice (FIXED_MONTHLY and HYBRID)#
For these two models, Prodemy generates a Stripe invoice on your billing day:
- FIRST of the month — default for most clubs.
- 15th of the month — bi-monthly alternative.
- Anniversary day — the day of the month you were approved (capped at 28).
The due date is 7 days after the invoice is issued. If your saved card is on file, we auto-charge on the due date. Otherwise the Stripe-hosted invoice URL is emailed to you for manual payment.
Receipts for every paid invoice are available in Settings → Billing → Invoices, linked directly to the Stripe-hosted PDF.
Auto-charge setup#
Go to Settings → Billing → Payment methods → "Save card for auto-charge." Enter card details, pick as default. The platform will auto-charge this card each billing period.
If a monthly invoice fails#
Your saved card declines, bank rejects, etc. — the invoice goes OVERDUE. You get an email and in-app alert. After 3 failed charge attempts, Prodemy admin is notified. Nothing auto-suspends your club — we'll reach out.
First-month proration#
Most clubs are prorated for their first partial month (e.g. approved on the 12th → billed for 19 of 30 days). Admin can toggle this per club at approval time. Proration applies only to the first invoice.
Disputes#
Prodemy does not mediate disagreements over club policies — that's between you and the club. But we do help with platform issues.
What counts as a platform dispute#
- The app charged the wrong amount.
- A refund was approved but never arrived.
- Auto-pay charged a canceled enrollment.
- Your Stripe account is missing payouts.
- A technical bug broke the payment flow.
How to escalate#
Raise a ticket at https://prodemy.app/contact. Include:
- Payment ID (from the Payments page or receipt).
- What you expected vs. what happened.
- Dates of the transaction and any follow-up communication.
- Screenshots if you have them.
We read every ticket and reply by email. There is no live chat with a person.
What is NOT a platform dispute#
- "The class wasn't good and I want a refund" — contact the club.
- "I changed my mind about enrolling after the club's refund window" — club's call.
- "The coach didn't show up" — contact the club first. If no response in 48 hours, raise a ticket.
Tax and 1099#
Club owners: Prodemy does not issue 1099 forms. Your Stripe Connect account issues 1099-K forms directly for U.S. clubs that meet the threshold. Log in to your Stripe Express dashboard to see them.
Parents: Prodemy does not issue tax receipts beyond the per-payment receipts. Some activities may be eligible for dependent care credits — consult a tax professional.
If this doesn't help#
Raise a ticket at https://prodemy.app/contact. For payment questions specifically, include the payment ID from the Payments page, the date of the transaction, and a clear description of what's wrong. Tickets are read by a human and replied to via email.
Was this article helpful?