Welcome to EnrollmentHive!
This documentation serves a deep reference to everything about EnrollmentHive.
This documentation is under construction and will be built out over the next several weeks. Let us know if you have any feedback or topics you would like to see covered deeper.
Classes and Sections
EnrollmentHive structures its classes as two separate parts called classes and sections.
A class has a generic description and age requirement given to a something that is taught multiple times. For example, “1st Grade Ballet” or “9-10 year old Tap”. These alone do not tell you when or where the class is, but they will stay the same year after year of teaching them at your studio.
A section belongs to a class and has the remaining information such as when it is taught, by whom, and how much it costs.
We think of this distinction like college classes. You might have taken “Psychology 101” (a class), but when you took it, or with whom, depends on which section you took.
By separating classes and sections in this way you can keep your offerings consistent year over year, and give yourself better reporting down the road, as EnrollmentHive can easily compare two sections that are the same class.
Learn more about:
Classes
A class is a reusable description that groups related sections over time. Students do not enroll in a class directly—they enroll in a section. Creating a class first gives you a stable place to attach sections season after season, which keeps year-over-year reporting and comparisons consistent.
Class Details
| Field | Required | Details |
|---|---|---|
| Banner Image | No | Upload or drag and drop an image for the class. Maximum size: 8MB. |
| Status | Yes | Defaults to Active. • Active — available when creating sections • Archived — hidden from day-to-day use, kept for history |
| Name | Yes | Use a clear, durable name (for example, 1st Grade Ballet or Advanced Jazz). Use names that still make sense next year. |
| Description | No | Short description of the class displayed on the registration page. |
| Minimum age | No | Youngest age the class is intended for. Leave blank if there is no minimum. |
| Maximum age | No | Oldest age the class is intended for. Leave blank if there is no maximum. If both ages are blank, the class list shows All ages. |
| Grades | No | Multi-select list of grade levels the class covers. Typical options: Pre-School, Kindergarten, 1st–12th Grade, and Adult. Select every grade that applies (for example, both 1st and 2nd Grade for a combined level). |
| Tags | No | Organize classes for filtering and display (for example, Ballet or Hip Hop). 1. Select a tag category 2. Choose tags within that category Categories are configured under organization setup. |
| Custom fields | Varies | Organization-specific fields. Fill these in as needed for your studio. |
Create a New Class
- From the “Classes” tab, click the green + New Class button in the upper right. That opens the Create new class dialog.
-
Provide as much information as you can about your class. This will help parents filter and find your classes on the registration page.
-
Click Save Class at the bottom of the dialog. The new class appears on the Classes page and can be opened to add sections. To discard without saving, close the dialog with the X (or press Escape).
Edit a Class
- From the “Classes” tab, click on the class you want to edit.
- Click the blue “Edit” button in the top right corner.
- Edit the fields you would like to change. You can reference the options in the table above.
- Click “Save Class” when you are done, or press “Cancel” in the top right corner.
Sections
A section is the concrete offering families register for—an instance of a class with its own schedule, capacity, registration window, and pricing. In your day-to-day language, you will likely refer to sections in EnrollmentHive as “classes”, and that is perfectly fine. See Classes vs Sections for a deeper explanation of our choice to call them sections.
Create New or Edit a Section
From the Sections page, click the green + New Section button. You can also start a new section from a class detail page with New Section there.
Either path opens the full New Section page. The form is organized into four blocks:
General Information
To start, you will enter basic information about your section.
| Field | Required | Details |
|---|---|---|
| Section Name | Yes | Display name for this section (for example, 1st Grade Ballet | 2026-27 or Ballet Camp (June 2-5)). |
| Registration Type | Yes | Controls how students enroll in the section. Series — enroll for the full run of sessions Drop-in only — pay per session; no full-series enrollment Series with drop-ins — series enrollment plus optional per-session drop-ins |
| Status | Yes | Defaults to Active. Draft — not ready for public use Active — available according to registration settings Archived — retained for history |
| Notes | No | External notes displayed on registration page for this section. |
| Class | Yes | The class this section belongs to. |
| Location | No | Where the section meets. |
| Instructors | No | Primary instructors assigned to the section. |
| Assistants | No | Assistant instructors. |
| Capacity | Yes | Maximum number of students allowed to enroll. |
| Enrollment Target | No | Goal for how many students you want enrolled. Appears as a marker on the enrollment progress bar so you can see when you hit the goal (separate from hard capacity). |
| Tags | No | Organize and filter sections. Select a tag category, then choose tags. |
Days and Times
Next, configure how you will schedule this section.
Schedule Type
| Option | When to use | What you set on this form |
|---|---|---|
| Recurring schedule (same days of week and times) | Weekly classes that repeat on fixed days/times | Start/end dates, start/end times, and days of week. Sessions are generated from that pattern. |
| Specific days and times | Camps, intensives, or irregular calendars | You do not enter the full calendar here. After saving, add individual days on the section’s Schedule tab. Optionally enter a Schedule Summary for Registration Page (for example, Mondays 2-3pm, Fridays 4-5pm) so families see a readable summary while registering. |
Recurring schedule fields
| Field | Required | Details |
|---|---|---|
| Start Date | Yes | First day of the section. |
| End Date | No | Last day of the section. |
| Start Time | Yes | Session start time. |
| End Time | Yes | Session end time. |
| Days Of Week | No | Days the section meets (for example, Mon and Wed). |
Specific days and times fields
| Field | Required | Details |
|---|---|---|
| Schedule Summary for Registration Page | No | Summary shown on the public registration page. For example, Mondays 2-3pm, Fridays 4-5pm. |
Registration
Controls when and how families can sign up.
| Field | Required | Details |
|---|---|---|
| Visible on registration page | No | When enabled, the section can appear on the public registration page (subject to open/close dates). |
| Registration Open Date | Yes | First day families can register. |
| Registration Open Time | No | Time of day registration opens on the open date. Defaults to midnight. |
| Registration Close Date | No | Last day families can register. Leave blank if registration stays open. |
| Registration Close Time | No | Time of day registration closes on the close date. Defaults to midnight. |
| URL Slug | No | Optional slug for a nicer registration link. For example, enter ballet-2026 for http://yourstudio.enrollmenthive.app/register/section/ballet-2026. |
| How many days before are drop-ins available? | No | Shown for Drop-in only and Series with drop-ins. Limits how far ahead drop-in spots can be purchased. Enter 0 for no restriction. |
| Require any of these tags to register | No | Require students to have at least one of the selected tags to register. |
Billing
Billing configuration options change based on Registration Type and, for series sections, the selected payment plan.
For a deeper walkthrough of pricing choices, see Pricing a Section.
Series Billing
Choose one payment plan:
| Payment plan | Best for | How charging works |
|---|---|---|
| One-time Payment | Camps and short runs | Single tuition amount (plus optional registration fee) charged up front. |
| Seasonal Billing Plan | Full seasons with installment plans | Tuition is split across the billing cycles on the selected season/billing plan. Registration fee can be charged once at checkout. |
| Global Tuition | Studios using studio-wide tuition rules | Section is billed by your organization’s Global Tuition rules. Tuition Price still applies when Global Tuition is configured to use individual section pricing. |
Fields that change with the payment plan:
| Field | One-time | Seasonal | Global |
|---|---|---|---|
| Season / Billing Plan | Optional — for organization and reporting only | Used to generate tuition from the season’s billing periods | Optional — for organization and reporting only |
| Tuition Price | Amount charged for the section | Used with the billing plan | Used when Global Tuition is set to individual section pricing |
| Tuition Payment Category | Optional, but recommended | Optional, but recommended | Optional, but recommended |
| Prorate after the section starts | Available — reduces tuition for late enrollments based on remaining days | Not shown | Not shown |
| Collect first payment at checkout | Not shown | Optional — charge the first billing-cycle payment immediately at registration instead of waiting for the plan’s normal post date | Not shown |
Use Preview earnings to estimate revenue from the current billing setup before you save.
Drop-in Billing
Shown for Drop-in only and Series with drop-ins.
| Field | Required | Details |
|---|---|---|
| Drop-in Price | Yes | Price charged for a single drop-in session. |
| Payment category | No | Payment category for drop-in charges. |
Save
Click Save Section at the bottom of the form (or Save in the header).
If required fields are missing (for example, Class or Capacity), the form highlights them and does not save.
After you create the section, open the section to review enrollments, edit details, and manage the Schedule tab (especially if you chose Specific days and times). You can adjust pricing later if needed — see Pricing a Section.
Structuring Your Sections
Here are a few scenarios you might find in your studio and how we recommend structuring your classes and sections for them.
You offer “1st Grade Ballet” at two different times during the week. Students enroll in one or the other, and their roster is tracked separately.
We would recommend creating a “1st Grade Ballet” class, and then creating two sections, one for each day, and adding the day of week to the name for it to be clearer to you and your parents. For example, “Monday 1st Grade Ballet | 2026-27” and “Thursday 1st Grade Ballet | 2026-27”.
You offer ballet intensives taught by guest instructors throughout the year.
You could have only one class for all Ballet Intensives. However, remember to keep the description generic enough for all sections. You can always add specifics in the notes area of each section. So your class would be “Ballet Intensive”, and your sections could be “Rachel Hansen Ballet Intensive” and “Brendan Hansen Ballet Intensive”.
You could create separate classes for ballet intensives if they have different descriptions or qualifications, such as different age or grade requirements. For example, you might have a “Junior Ballet Intensive” as well as a “Advanced Ballet Intensive”. Then, you can create sections of each of them so users can easily filter down to based on ages and/or grades for their students.
You can also always add a new session to a section if you want to keep enrollment separate for each time/day but still organize it under one section. This is great if you are keeping all details the same, other than time/day.
You only offer on section of “11th Grade Tap” but it is the same every year.
You would have a class called “11th Grade Tap”, and each year you would create a section for it, including the year in the name so it is clear to everyone which year that section is for, For example, “11th Grade Tap | 2026-27”.
Pricing Your Sections
There are a variety of ways to price your sections in EnrollmentHive to suite your business needs. You select how you want to price your sections on a section-by-section basis. This guide will walk you through the different ways and when you would want to use them.
One-time Payment
The simplest way to charge for your sections is through a one-time payment. This payment is due when the student enrolls in the class and is either paid at checkout or is placed on the responsible account’s balance when enrolled from the admin portal.
This pricing mode is best for camps or short duration classes where charging multiple times does not make sense.
To charge a one-time payment, set the Series Billing mode to “One-time Payment” when editing or creating a section. Then enter the total amount you want to collect in the “Tuition Price” field. You can optionally select “Prorate after the section starts” to automatically lower the price if someone signs up part way into the section. In addition to the tuition, you can also collect a “Registration Fee”. This may be useful if you have a policy of non-refundable registration fees, but you do refund tuition.
Global Tuition
To charge a recurring tuition amount every month, the easiest way is to use the Global Tuition pricing mode.
You will need to configure your global tuition settings in your Organization Setup under “Tuition”.
The most important setting here is the “Calculation Mode”. It tells the system how to calculate tuition for the sections using Global Tuition. There are three options:
| Mode | Description |
|---|---|
| Set prices on each section | System totals the “Tuition Price” of every section the account is responsible for. |
| By Number of Classes Per Week | System calculates the total tuition cost for an account by totaling the number of times all the enrollments it is responsible for meet in a week. Allows you to specify the pricing curve for how much a given number of classes is per month. Does not use the “Tuition Price” of the section. |
| By Number of Hours Per Week | System calculates the total tuition cost for an account by totaling the amount of time all the enrollments it is responsible for meet in a week. Allows you to specify the pricing curve for how much a given amount of time is per month. Does not use the “Tuition Price” of the section. |
In addition to setting up the calculation mode, you also set up when your billing cycles are. You set the start day of the billing cycle, the day the tuition posts, and the day the tuition is due.
For example, a start day of 1, a post day of 21, and a due day of 5 would mean: “Tuition runs from the 1st of one month, to the 1st of the next. Tuition is posted the 21st before the tuition start date, and is due the 5th of the month after it is posted”. For example, September tuition would run from September 1st to October 1st, would post on August 21st, and be due September 5th.
Global tuition only support monthly billing periods; if you need a more flexible solution, use Seasonal Billing Plans.
Finally, you can enable certain discounts to apply to global tuition, if your tuition is calculated by “Set prices on each section”. You cannot use discounts with the other calculation modes currently; we recommend building the discount into your pricing curve.
Seasonal Billing Plans
Seasonal billing plans are much like Global Tuition, but they give you more control over billing periods and allow you to offer multiple way to pay for a section.
To use seasonal billing plans, you will first have to create a “Season”. Go to the “Seasons” tab, then “+ New Sesaon”.
The only required field is the Season Name. All other fields are for your reference (when the season is and what kinds of sections it contains).
From within your new season, click the “+ Add Plan” button on the Billing Plans area.
Give your billing plan a short descriptive name, like “Monthly” or “One-time”. You can also choose if you want this plan to be offered at checkout to customers. This allows you to offer your customers a way to choose how they want to be billed for their classes, whether it be monthly, one-time, or even 3 equal payments throughout the year.
Just like the Global Tuition, you can configure how you want this billing plan to calculate the total tuition. See the section above for more details.
Finally, you configure your billing periods. You can either type these manually, or use the Generate Periods button to quick generate a full year’s worth of monthly tuition from which you can adjust.
Because you are directly creating these billing periods, you have more control than you do with Global Tuition. You can choose to prorate the amount if a student enrolls part way through a period. You can also choose a multiplier that is applied to the tuition to adjust for partial months or collecting multiple months at once.
This is best explained through examples. Here are a couple billing period configurations we have seen some of our studios using.
![]()
In this example, the students start halfway through August and the studio decided to reduce August’s tuition to compensate for that. They set the multiplier to 0.5 (or 50%) to multiply the calculated tuition by 50% for that period.
![]()
In this example, the studio is charging a one-time payment for the entire section. They have the due date as the first day of classes, but the post date as January 1st. This guarantees that when enrolling the first period will be posted and collected at checkout. They also set the multiplier to 8.5, which is for the 8 and a half months of class the payment is covering.
To use these billing plans, a section must use “Seasonal Billing Plans” for its series billing, and be part of the configured season.
Seasonal Billing Plans give you the most control over tuition pricing, but it is always a good idea to use the “Preview Earnings” button when configuring a section to make sure the total and billing periods are correct.
Drop-ins
If your section allows for drop-ins (has a registration type of “Drop-in only” or “Series with drop-ins”), then you can charge per session a student attends.
To charge a drop-in fee, go to the Drop-in Billing area in you section, and set the “Drop-in Price” to the amount desired. This payment is due when the student enrolls in the session and is either paid at checkout or is placed on the responsible account’s balance when enrolled from the admin portal.
Subscriptions and Punchcards
“Subscriptions and Punchcards” are available as an add-on feature that is included in the Plus plan and above.
Punchcards allow your customers to buy a pass that gets them:
- A certain number of drop-ins punches
- Unlimited drop-ins for a certain amount of time
- A combination of the two: limited punchces with a time limit.
A punchcard does not use the drop-in price of the section. Instead, it allows for your customer to drop-in to any applicable section and use their punchcard as payment. You can restrict which sections a punchcard applies to when configuring the punchcard.
Subscriptions are much like punchcards, but they are renewed automatically while the customer has an active subscription. You can similarly restrict which sections are applicable to a subscription when configuring it.
Subscriptions allow you to offer “memberships”, where the customer can drop-in to unlimited classes a month and simply pay a month fee. Great for workout or technique classes.
You can configure Subscriptions and Punchcards in the “Passes” tab, or by searching for “Passes”.
Responsible Accounts
Every enrollment has a responsible-account, which is the account that is responsible for paying for the enrollment, and any other charges incurred for that enrollment (costume charges, late fees, etc).
By default, the responsible account is the account that went through the checkout process and enrolled the student. If the student was enrolled from the admin portal, it will be the primary account on the student’s household.
You can change the responsible account by going to the Enrollments tab on the student, clicking the three dots on the right side, and selecting “Edit Responsible Account”. In the pop-up, you can select the household and the account that is going to be responsible. The system will then move any unposted ledger items to the new account automatically. Any posted items will not be moved automatically and will need to be deleted and re-added to the new account.
The responsible-account system is very flexible and allows for complicated billing situations without any hassle. For example, a student might have a scholarship for a particular section they are in. In this case, you can create a household and account that represent the scholarship, and then change the responsible account of the student’s enrollment to be the scholarship account. The system will automatically bill the scholarship account for just that enrollment.
Day to Day Operations
This chapter covers some of the common things you will do day-to-day in EnrollmentHive.
Taking Attendance
Taking attendance is very easy in EnrollmentHive.
To view the attendance sheet for a session, there are three places you can go:
- The Schedule tab
- Your Dashboard
- The section’s schedule tab
The easiest place to go is the Schedule tab. This tab gives you a weekly view of everything going on at the studio. To find the class you want to take attendance for, you might need to click “Only Me” to filter down the entries if you have a lot of them. When you found the session you want to take attendance for, simply click it.
The Attendance Page
On this page, you can easily click or tap the buttons to mark each student as present, late, absent, or excused.
You can also make any notes about their attendance, though that textbox usually gets filled out by the parent when they report an absence.
If all students are present, you can simply click the “Mark all students present” button and every student will be marked as present.
You can make any notes on this page for lesson plans, or substitute notes if you are going to be absent.
You can also quickly take any notes on any of the students by using the three dots on the student line, and clicking “View Notes”. From here you can make and view notes in any of your preconfigured note categories.
Handling a Walk-in
If your studio allows for walk-ins, you can use the “+ Enroll Student” button in the top right corner to enroll a student as drop-in for this session.
In the pop-up, you can select the student from your existing list of students. Alternatively, if they are a friend/relative of one your students you can select “Visiting Student” and log the information about the student. This will create a “Visitor Student” profile under the selected household and bill the primary account on the selected household.
Once you’ve chosen the student, you can choose how/if to bill for this drop-in/trial.
You can override the session price, change which household/account is being billed, or even remove the drop-in charge entirely.
When ready, click the “Enroll students” button to enroll them for this session.
As a note, you can do this “drop-in” enrollment even on sections that do not have drop-ins enabled.