Stripe Connect for Class Tuition: What Org-as-Merchant Means Operationally
Platform Billing vs Owner Money
SaaS subscription charges — org to Pet Ops — are not the same rail as owner tuition — owner to facility. Class registration is often the first time owner payments flow through the product.
Stripe Connect Standard means each org is merchant of record for client tuition. Payouts land in the facility's bank account. Refunds issue from the same connected account.
Onboarding Is an Ops Task
Facilities → Payments walks org admins through Connect onboarding. Until charges are enabled, portal registration should fail gracefully with a staff-visible reason — not a cryptic owner error.
Desk staff need language: "our online class payment is being set up; I can take payment in person meanwhile."
Webhook Discipline
Connect checkout completion must hit the Connect webhook endpoint with its own signing secret. Platform webhooks do not confirm class seats.
Stuck pending_payment registrations with successful Stripe charges almost always mean webhook misconfiguration — not owner error.
Refunds on Cancel
Staff cancel with refund flag triggers full refund on the connected account, enrollment cancellation, invoice marked refunded. Idempotent design prevents double refunds on retry.
409 responses with Stripe errors should surface to staff before state mutates.
Scenario
Jane finishes Connect onboarding Friday. Saturday puppy class opens. Owner pays on phone; webhook confirms; enrollment exists for homework seeding; desk sees confirmed seat on roster board. Monday trainer opens cohort with eight paid dogs — not eight maybes.
Fit
Dog training class software includes payments as infrastructure, not an integration project. Pricing for the platform stays separate from tuition economics owners pay at registration.