Admin

Setting up your class catalog

The class catalog is where families browse and enroll in what your co-op offers each term. This guide covers everything on the admin side: creating classes, attaching fees, choosing how payment is collected, granting staff exemptions, running waitlists, and keeping track of what families owe.
Go to Class Catalog

Creating and configuring classes

Classes live under Admin → Class Catalog. Each class belongs to a term, so make sure you have at least one term set up before adding classes.

To create a class

1Go to Admin → Class Catalog and select the term you want to add the class to.
2Click Add class.
3Fill in the title, description, grade level, capacity, room, and time slot.
4Set the fee if this class has a cost (see the Fees section below).
5Save. New classes are created as Draft automatically, so it appears in your admin catalog right away but stays hidden from families until you publish it.
Note: If the room and time slot you pick are already booked by another class in the same term, saving is blocked with an error naming the conflicting class. Pick a different room or time slot to resolve it.

Class statuses

Draft— visible only to admins and teachers. Use this while you're still setting things up.

Published— visible in the family catalog. Families can see it but can't enroll until a registration window is open.

Closed — visible but no new enrollments. Use this after enrollment closes for the term.

Cancelled— hidden from families entirely, same as Draft, but for a class that was published and then called off rather than one you haven't finished setting up. Existing enrollments stay on the books so you keep a record of who had signed up.

Setting fees and seat capacity

Capacity sets how many students can enroll before the class fills and starts a waitlist. Set it to a number that reflects the physical space and your teacher's comfort level.

The class feefield is the per-student charge for the class itself. It's a single amount. There's no separate materials-fee field on the class. If you want to charge families for supplies separately from the class fee, use a manual materials fee charge from Admin → Billing instead.

Tip: Leave the fee field blank or set it to zero for free classes. Free classes still track enrollment and waitlists normally — they just don't create any charges.
Note: Setting a fee requires the Plus plan. Free-class creation is available on all plans.

Payment collection: Stripe vs. flexible

For classes with a fee, you can choose how that fee is collected. The default applies to all classes, and individual classes can override it.

Stripe payment at enrollment (default)

When a family clicks Enroll on a paid class, they're taken directly to Stripe Checkout. Their student's seat is confirmed only after the card payment succeeds. This is the safest option for co-ops that want to guarantee payment before a seat is held.

Flexible / bill the family's account

In flexible mode the student is enrolled immediately and a pending charge is added to the family's account. The co-op collects whenever and however works for them — cash at the door, check, bank transfer, or by directing the family to pay online from their Payments page. This is useful for co-ops that run a tab for the term and settle up at the end, or for families that don't have a card handy at enrollment time.

Tip: Families can always pay their pending charges online. They'll see an outstanding balance on their dashboard and a Pay button on their Payments page that takes them through Stripe Checkout. Co-ops can also offer bank (ACH) payments at a fraction of the card fee, see the bank payments guide.
Note: The outstanding balance gate still applies in flexible mode. If a family already has unpaid charges, they won't be able to enroll in additional classes until the balance is cleared. This is true even for staff-exempt enrollments.

Setting the default for your co-op

1Go to Admin → Settings → General.
2Find the Class enrollment section.
3Choose your preferred default payment mode and save.

Overriding for a specific class

Open the class detail page, scroll to Enrollment settings, and select a payment mode. Choosing the co-op default means the class inherits whatever you've set globally, which keeps things consistent without repeated configuration.

Co-ops without a connected Stripe payout account always use flexible mode — there's no Stripe account to charge on, so the system bills the family's ledger and you collect directly.

Staff fee exemptions

Two types of members can enroll their students at no charge, with no workaround required.

Owner and admin exemption

When enabled (the default), owners and admins pay nothing to enroll their students in any class. No Stripe redirect, no pending charge — the seat is allocated at $0 and the roster shows a "Fee waived" badge next to the student's name so you have an audit trail.

Turn this on or off under Admin → Settings → General → Class enrollment. The toggle applies to all classes; individual classes can override it for their teacher exemption independently.

Teacher exemption

Teachers are exempt only for classes they are assigned to teach — not for every class in the co-op. This keeps the exemption honest: a teacher gets a free seat in their own class because they're providing the service, not a blanket pass to enroll for free everywhere.

The teacher exemption is on by default for every class. Turn it off for a specific class (for example, an expensive field trip where you want everyone to pay) under the class's Enrollment settings.

Note: A teacher who is also an admin or owner benefits from the admin exemption for other classes. The two exemptions are independent.
Tip: The outstanding balance gate still applies to exempt members. A teacher with an overdue balance needs to clear it before enrolling, even if the class itself is free for them.

Sibling discount

Co-ops that want to make it cheaper for families with several students to enroll can turn on a sibling discount for class fees. It's off by default, so no co-op's pricing changes unless an admin opts in.

When it's on, the first student a family enrolls in a paid class each term pays full price. Every other student in that family then gets the discount on their own class and materials fees, for any paid class they enroll in that term — not just the same class as their sibling. Which student counts as “first” is whoever the family happens to enroll first that term; there's nothing to configure beyond turning the discount on.

1Go to Admin → Settings → General and find the Class enrollment section.
2Check Sibling discount on class fees.
3Set the Discount percent (defaults to 50%) and save.
Note: Because the discount depends on who else in the family has already enrolled this term, a family enrolling more than one student at once sees an “up to” estimate at checkout rather than a guaranteed total — the exact price is confirmed once the enrollment goes through.

Registration windows

Families can only enroll during an open registration window. Windows belong to a term and can have an optional invite link that restricts who can enroll during that window.

1Go to Admin → Registration (the page is titled Class enrollment) and confirm the term switcher at the top is set to the right term.
2Find the Enrollment windows section and click + Add window.
3Set the open and close dates. Leave Invite link only unchecked for a public window.
4Click Add window. Families will see the Enroll button on published classes once the window opens.

You can have multiple windows open at the same time — for example, a member-only early window and a public window that opens a week later. Check Invite link only on the early window and share the secret link it generates with the families who should get early access; everyone else waits for the public window.

For a full walkthrough of opening registration, see the Opening Class Registration guide.

Waitlists and promoting students

When a class fills, additional enrollments land on a waitlist. Waitlisted students don't pay — they're queued by position and promoted one at a time when a seat opens.

Promoting a student from the waitlist

1Open the class detail page under Admin → Class Catalog.
2Find the student in the Waitlisted section and click Promote.
3Confirm the promotion. For a paid class, a pending charge is automatically added to the family's ledger.
4The family is notified and the charge appears in their Payments page.
Note: Seats never auto-promote when a student drops. This is intentional. A freed seat could go to either the next waitlisted student or to a completely different family you want to offer it to. The admin decides who gets it and when.
Note: In rare cases a class fills while a family is mid-checkout: they pay, but the last seat is gone by the time the payment confirms. When that happens, the student is placed on the waitlist, that seat's share of the payment is refunded automatically, and both the family and your co-op's admins get an email that explains what happened. You don't need to do anything.
Tip: When a family with a staff exemption is promoted from the waitlist, the system checks their exemption status automatically. No manual charge adjustment needed.

Tracking pending balances

Any class fee created by flexible-mode enrollment or waitlist promotion shows up as a pending charge in the family's ledger. You can see all families with outstanding balances from Admin → Billing.

Recording an offline payment

1Go to Admin → Billing and find the family.
2Open their ledger and locate the pending charge.
3Click Record payment and choose the method: cash, check, money order, or scholarship.
4Save. The charge is marked paid and the family's balance clears.

Families paying online

Families with a pending balance see a notice on their dashboard. From their Payments page they can click Pay balance to go through Stripe Checkout for the outstanding amount. Once paid, the charge is marked settled automatically.

Tip: Use the pending-charges filter in Admin → Billing to see everyone who owes money at a glance. It's the fastest way to follow up at the end of a term.

Still have a question? Head back to the Help & Support page or reach out to your co-op admin directly from the dashboard.