Bukujanji
ExploreEventsOrganizerBlogFor business
Bukujanji

Bukujanji

  • About Us
  • Blog
  • Events
  • Booking System for Business
  • Become a Merchant

Popular Categories

  • Salon
  • Sports Courts
  • Massage
  • Spa
  • Eyebrows & Lashes
  • Barbershop
  • Kids Learning Center

Legal & policies

  • Terms of Service
  • Privacy Policy
  • Refund & Cancellation Policy
  • Organizer Guidelines
  • Cookie Policy
  • Seller Agreement

GET IT ON

Google Play

Download on the

App Store

Book on

WhatsApp

GET IT ON

Google Play

Download on the

App Store

Book on

WhatsApp

Registered with the Ministry of Communication and DigitalRegistered Electronic System Provider (PSE)

PT. Kreatif Sistem Teknologi · Dipo Tower 16th Floor Unit E, Jl. Gatot Subroto Kav. 51, Central Jakarta, DKI Jakarta · support@bukujanji.com · Registered PSE Komdigi · © 2026 Bukujanji. All Rights Reserved

HomeBooking SystemSports Academies

FOR SPORTS ACADEMY & CLUB OPERATORS

Sports Academy Management Software for Football, Tennis, and Swim Clubs

Bukujanji is sports academy management software for the people running football schools (SSB), tennis and badminton academies, basketball, futsal, padel, swim clubs, and martial arts — karate dojos and taekwondo dojangs alike. Here is what sets it apart from court-finder apps: the age group is the scheduling unit. U-8, U-10, right through U-17 each stand as their own class — with their own weekly schedule, quota, participant roster, and assigned coach, and an age range set per class. Parents register their child along with a date of birth, pay fees via QRIS or bank transfer, and can join a waitlist when the group they want is full. Attendance is recorded per participant per session. One subscription per outlet from Rp 249,000/month, with no per-transaction fees and no per-student fees — the roster grows, the bill doesn't.

  • U-8 through U-17 as separate classes: own schedule, quota, roster, and coach
  • A waitlist when a training group is full, convertible into an enrollment
  • Attendance per participant per session, plus QR check-in at the venue
  • One subscription per outlet, no per-transaction fees, no per-student fee

What Leaks When an Academy Runs on a Whiteboard and a WhatsApp Group

One pitch, six age groups

U-8 finishes at 16.30, U-12 starts at 16.30, and private sessions squeeze into the gaps — all written on one board or in one chat group. The moment the schedule shifts because of rain, a tournament, or an unavailable coach, nobody knows which version applies, and two groups can show up on the same pitch.

Enrollment and the queue scattered across chat

Forms arrive as photos, each child's details get retyped into a spreadsheet, and prospects who missed a seat exist only in the admin's memory. When someone drops out, there is no clear queue order — that empty seat usually goes to waste, even though a queue did exist.

Fees chased by hand, attendance never recorded

Transfer receipts scatter across phone galleries and the payment recap never matches the student list. It gets worse when a parent asks "how many of the 8 sessions has my child actually used?" — and there is no attendance record to answer with.

What changes after you switch

The right column isn't a roadmap promise — every line is a feature that exists today.

The old way

After moving to Bukujanji

New-student registration over chat and paper forms.

Parents register their child online — the child's name and date of birth go on record as the participant.

Age-group training schedules re-posted to WhatsApp groups every week.

A weekly timetable per age group, checkable anytime.

A child in the wrong age group is only caught on the pitch.

Each class's age limit is checked automatically against the date of birth at registration.

Session load uncontrolled — one session overcrowded, another empty.

Capacity per session per group; a full session opens a waitlist.

Training attendance scribbled on paper, gone by recap time.

QR check-in, attendance per child per session, exportable attendance reports.

Training packages billed and tracked by hand.

N-session quota packages with a validity period, bought and paid online.

The Features Academies Use Every Day

Weekly schedule per age group

Every group — U-8, U-10, U-12, or your beginner and intermediate classes — is built as its own class with a recurring weekly training pattern, times, pitch or room, and coach. Set it once and sessions publish automatically each week; change the pattern and the change can cascade to the sessions that follow.

Participant roster, quota, and waitlist

Each session carries its own capacity, so a group never gets overloaded. Once it fills up, prospects join a waitlist and your admin can follow up as soon as a seat frees — that queue converts straight into an enrollment. The roster for any session is one click away instead of a manual recap.

Fees via memberships & session packs

Package fees as a monthly plan or a quota pack — 8 sessions with a validity window, for instance. Parents buy and renew on their own via QRIS, GoPay, or bank transfer through BCA, BNI, BRI, Mandiri, and Permata. Specific classes can be locked to active pack holders, and reminders go out automatically when a pack is nearly used up.

Multiple training locations & a free academy profile page

Run several training locations from one account, with enrollment and payment recaps per location. Every academy also gets a free profile page on bukujanji.com — carrying the class schedule, packages, and reviews from parents — shareable as a single link.

Per-session attendance & exportable reports

Attendance is recorded per participant per session, and a class check-in QR can be displayed at the venue for participants to scan on arrival. The class attendance report filters by class, by coach, and by date range, then exports. One honest note: that report counts participants training on a pack or membership.

Schedule reminders & Q&A on WhatsApp (add-on)

Two optional add-ons cover the communication side: WhatsApp Reminder sends automatic training-schedule reminders to parents, and Easy Booking by WhatsApp gives you an official WhatsApp Business number in the academy's name plus an AI assistant that answers schedule questions from your own academy data.

Your age-group training schedule fits here

One row per age group — U-8, U-10, U-12 — with capacity counted per session. A full session opens a waitlist, so interest that arrives when you're full isn't lost.

Mon
Tue
Wed
Thu
Fri
Sat
Sun
U-8

16.00

quota 10/14

16.00

quota 12/14

08.00

FULL — waitlist 3

U-10

17.30

quota 9/16

16.00

quota 14/16

09.30

quota 11/16

U-12

16.00

quota 13/18

17.30

quota 8/18

08.00

quota 16/18

An illustration of a weekly schedule pattern — not live data from any academy. Groups, times, and quotas are examples only.

Get Started in Minutes

1

Schedule a demo

Book a 30-minute demo with our team at merchant.bukujanji.com/demo. After the demo, your academy account is created the same day — just bring your list of age groups and training schedules.

2

Create one class per age group

One class per group: the name (U-10, say), the age range, capacity, coach, then its weekly training pattern. The age range can be entered in years for U-8 through U-17, or in months for early-years classes.

3

Set up fee packages

Define a monthly plan or a session-quota pack with its validity window, then switch on online payments. If it helps, lock specific classes to active pack holders only.

4

Share the link, then keep watch

Send your academy page link over WhatsApp. Enrollments, waitlist entries, and payments arrive on their own; per-session attendance and the attendance report are there in your dashboard.

Pricing: One Subscription per Outlet, No Per-Student Fee

Bukujanji's core system — age-group schedules, enrollment, waitlists, per-session attendance, memberships, the student database, and the dashboard — comes in one subscription per outlet: Starter at Rp 249,000/month for a single training location, or Rp 199,000/month billed yearly. Nothing is skimmed from your transactions and there is no per-student fee, so a busy enrollment season never inflates your bill. Academies with several locations use Pro at Rp 549,000/month per outlet, with no limit on outlets, and subscriptions start with a demo with our team.

  • Starter at Rp 249,000/month per outlet — Rp 199,000/month billed yearly
  • No per-transaction fees, whatever your fee income
  • No per-student fee — your roster can grow without growing fixed costs
  • Bukukasir mobile POS included at no extra cost
  • Free academy profile page on bukujanji.com
  • Prices exclude VAT — while bukujanji is not VAT-registered (non-PKP), no VAT is charged

Optional Premium Add-ons

Everything below is strictly optional and priced outside the plan. A website on your own domain is already part of the subscription, so what remains is all about WhatsApp: switch on only what your academy needs, such as automatic training-schedule reminders on WhatsApp for parents.

WhatsApp Reminder — prepaid tokens

Automatic training-schedule reminders sent to parents on WhatsApp, running on prepaid tokens you top up as needed, priced outside the plan.

WhatsApp Blast — from Rp75,000

Announce a new enrollment intake, tournament dates, or a training break to many parents at once in a single campaign.

Easy Booking by WhatsApp — Rp249,000/mo, every plan

An official WhatsApp Business number in your academy's name, plus an AI assistant that replies 24/7 from that number. The questions that normally flood your coaches' phones — what time U-10 trains, which pitch, the price of a monthly pack, which classes are pack-holders only — get answered from your own academy data, and the AI then shows a button that walks the parent through completing the enrollment inside the same chat. Schedule-change announcements and training reminders also go out from that number via Meta's official API. AI replies are paid per message with Kreatif AI credits. The add-on is Rp199,000/mo billed yearly. Available on every plan, including Starter.

Why a Sports Academy Needs Management Software of Its Own

Coaching is only part of the job. The rest: new intakes arriving over chat, age-group schedules shifting because of rain or a tournament, fees chased family by family, and parent questions arriving every single day. As your participant count grows, that administrative load grows faster than the hours you have — and it is usually the head coach doing it late at night, after the last session.

Most sports apps in Indonesia are built for players hunting an empty court, not for the people running player development. Bukujanji takes the opposite side: enrollment, scheduling, payments, and attendance for operators. The pattern holds across sports — football schools (SSB) and football academies, tennis academies, badminton academies, basketball, futsal, padel, swim clubs, and martial arts: in a karate dojo or a taekwondo dojang, belt levels simply become class names and the scheduling works exactly the same way.

The Age Group Is the Scheduling Unit, Not a Note in the Margin

A small academy typically has one or two pitches but five to eight age groups. U-8 and U-10 share the same pitch at different hours, U-15 and U-17 split the evening session, and private classes squeeze into the gaps. As long as all of that lives on a whiteboard and in a WhatsApp group, three things leak routinely: two groups collide on the same hour, one group grows past a healthy coach-to-player ratio, and a child too young for the group trains anyway because nobody checked.

In Bukujanji, each age group stands as its own class. U-8 gets its own weekly training pattern — Mondays and Wednesdays, 16.00 to 17.30, say — along with a per-session quota, a participant roster, and an assigned coach; U-12 gets its own. Because the quota sits on the session, a group stops accepting participants the moment it fills. Because coaches are assigned per class, you can see who handles what without asking. That is what lets one system run six age groups at once without their schedules overwriting each other.

The age range is set on the class itself, and participants are registered with a date of birth — not just a name on a list. You can enter that range in years for U-8 through U-17, or in months for early-years classes where a few months matter. When the schedule shifts because the pitch is booked for a tournament or a coach is unavailable, the session can be rescheduled, the coach swapped, or the location moved — and parents see the latest version on the same page, not in a follow-up message that is easy to miss.

When the Group Is Set by Ability, Not by Age

Not every academy sorts its students by year of birth. In a swim club a single class can hold a six-year-old and a ten-year-old who are both still unwilling to let go of the wall, while a classmate of the same age who can already cross the pool moves up a level. Martial arts work the same way through belt grades, and basketball academies usually keep a fundamentals class separate from the squad being prepared to compete. For academies like these, age is only a secondary filter — ability is what defines the group.

Setting that up is just as straightforward: make every level a class of its own and put the level in the class name, exactly the way a dojo does with belts. There is also a built-in difficulty field on a fixed scale running from beginner to master; where the naming your discipline uses does not map onto that scale, such as the level ladder of a swim school, the class name is what carries it. Quota per session keeps the ratio of coaches to students honest — at a pool that is a safety question, not a comfort one. Age limits still work as a filter, expressed in years or in months for the youngest classes.

The limit worth knowing before you commit: Bukujanji does not track level progression for each child and does not issue level certificates. When a student moves up, their registration moves to the next class, but the history of when they went from which level to which is not kept as a record of its own. What the system records is attendance per session. If your swim school issues level certificates, plan a separate route for that.

A Full Group Should Not Cost You the Prospect: Waitlists

The popular training hours always fill first — weekday evenings and Saturday mornings. Without a real queue, a prospect who arrives after the seats are gone usually just hears "we'll let you know", then disappears. Yet cancellations keep happening: a child falls ill, a family moves, a pack goes unrenewed.

Bukujanji keeps that queue as a waitlist on the full session. Its status moves from waiting to notified, and your admin can follow up from the merchant side — including adding a parent who called in to the same queue. As soon as a seat frees up, someone in the queue converts into an enrollment without retyping the child's details. The effect is simple: seats that normally go to waste get filled.

Per-Session Attendance: Who Actually Turned Up to Train

This is our most practical difference and the one most often misread, so let us separate it cleanly. Attendance in Bukujanji is recorded per participant per session — not per month, not per class. A class check-in QR can be displayed at the training venue and scanned by participants on arrival, so recording it adds no work for the coach at the touchline.

From those records you get a class attendance report that filters by class, by coach, and by date range — with attended, no-show, and cancelled counts — and then exports for sharing or archiving. One limit worth knowing before you decide: that report counts attendance for participants training on a pack or membership. Participants paying per session (drop-in) are not yet included in it.

What does not exist — and we will not pretend otherwise: progress reports, grades, and per-child skill or milestone tracking. Bukujanji records attendance; it does not assess a player's technical progress. If a per-player technical report card is your main requirement, plan a separate tool for it.

Monthly Fees: Memberships and Session-Quota Packs

Fees are an academy's financial lifeblood, yet chasing them one chat at a time strains the relationship with parents. In Bukujanji, fees are packaged as memberships or quota packs: a monthly training plan, or a fixed number of sessions with a validity window — 8 sessions to be used within two months, for example. Parents buy and renew online themselves, and the remaining quota drops with each session used, so "how many sessions are left?" finally has an answer.

The honest limit: this is not a subscription that pulls money automatically on a due date, and there is no arrears ledger running by itself. What does exist is an automatic reminder over WhatsApp, email, or app notification when someone's pack is nearly used up or close to expiring — a renewal nudge, not forced collection. For cash paid at the training ground, Bukukasir, included at no extra cost, records the transaction straight from your phone, keeping the daily recap in one place alongside online payments.

Cost Models: Per-Transaction Fee, Per-Student Fees, or a Subscription per Outlet

What makes a small academy fragile is rarely its student count — it is costs you cannot predict. Three cost models are common in academy management software, and the difference shows up most once the academy gets busy. A per-transaction fee: the provider takes a percentage of every payment that comes in — light at first, but it grows precisely when enrollment finally takes off, and you never know next month's bill.

Per-student fees: the easiest to predict per head, yet they penalise growth — every new child adds to the monthly bill, and it bites hardest at academies with many students on low fees. A subscription per outlet: you pay the same amount whether you have 20 or 120 active participants, so the system's cost goes into the budget once and never needs recalculating each time a new age group opens.

Bukujanji uses the third model: one subscription per outlet from Rp 249,000/month (Rp 199,000/month billed yearly), with no cut per transaction and no per-student fee — the roster grows, the bill doesn't. We will state the consequence plainly: an academy that has just opened with no students yet pays the same figure as one that is full, so do the maths on a realistic first-year headcount. Academies with several locations use Pro at Rp 549,000/month per outlet, with no limit on outlets. The add-on that genuinely is a subscription (Easy Booking by WhatsApp, available on every plan) stays optional and can be switched on later; a website on your own domain is already included.

One Academy, Several Training Locations

When an academy adds a second or third training location, multi-branch support keeps it all under one roof: schedules, the student database, and enrollment and payments per location are visible from a single dashboard, and the same pack can be valid across locations so participants may train anywhere. For a tennis school with two venues, this is the foundation of a tennis school management system that does not fracture the day the second venue opens.

Parents' trust is an academy's greatest asset. The free profile page on bukujanji.com carries your class schedule, packages, and reviews from students' parents — a storefront you can share as a single link whenever someone asks. If you want your own identity online, the Outlet Website add-on gives your academy a dedicated website and domain, and as swim club, tennis academy, or football school management software, the same system keeps running behind it.

A roster per age group

One parent account, several kids — each child lands on the roster of their own age group.

1

Register the child + date of birth

Parents use their own account and save each child as a participant; registration can require a date of birth.

2

Age limits checked automatically

Each age group carries an age limit (counted down to the month). At registration, the child's date of birth is matched against it.

3

Attendance & quota per child

Attendance is recorded per child per session — including QR check-in — and session capacity counts each child, not each account.

One limit worth knowing: Bukujanji records attendance and quotas — not report cards or grades. Assessing a child's progress stays in your coaches' hands.

Frequently Asked Questions

How much does Bukujanji's sports academy management software cost?+
One subscription per outlet, with no cut per transaction and no per-student fee. Starter at Rp 249,000/month (Rp 199,000/month billed yearly) includes age-group schedules, enrollment, waitlists, per-session attendance, the database, the dashboard, a website on your own domain, and Bukukasir. Academies with more than one location use Pro at Rp 549,000/month per outlet, with no limit on outlets. Subscriptions start with a demo with our team.
Does it fit football schools, tennis, badminton, swimming, or martial arts?+
It does. The pattern is the same everywhere: recurring weekly sessions per group and level, with a quota and a coach per session. Football schools (SSB) use it for U-8 through U-17, tennis and badminton academies for beginner through advanced classes, basketball, futsal, and padel for age-group sessions, swim clubs for ability levels, and martial arts — karate dojos and taekwondo dojangs — simply use belt levels as class names.
Does it work for a swim club or swim school whose classes are split by ability level?+
Yes, and at a pool this is the most common pattern of all. Each level becomes a class of its own — the level written into the class name — carrying its own weekly schedule, per-session quota, and assigned coach. That quota is what keeps the ratio of coaches to beginner swimmers sensible. Age limits can be entered in months for the youngest classes, and parents register the child together with a date of birth. When the pool closes for maintenance, those sessions are rescheduled and parents see the current version on the same page. What is not there: level progression tracking and per-child certificates — the system records attendance, not technical achievement.
What about a basketball academy running regular classes and a competition squad at once?+
Both are built as separate classes, each with its own weekly schedule, quota, and coach — age-group fundamentals on one side, the competition squad on the other. A squad that is not open to everyone can be locked as a members-only class, so only holders of a particular package or membership are able to register. Training attendance is recorded per participant per session, and can be filtered by coach when you need to total it up. One note: if you also rent the court out to the public by the hour outside academy hours, that is a different product — the hourly rental calendar lives in the court booking system.
Several age groups share our one pitch. How does the system hold that together?+
Each age group is built as a separate class, not a line in one big schedule. U-8 has its own weekly pattern (days, times, pitch or room, coach) and U-12 has its own, each with a per-session quota. Because the hours are explicit per class, groups stop colliding on the whiteboard and every coach knows which sessions are theirs. Change one schedule pattern and the change can cascade to the sessions that follow.
How do parents enroll their child into the training schedule?+
Parents open your academy page, choose the right age-group class, and register their child as a participant during booking — the account belongs to the parent, the participant is the child, along with a date of birth when the class asks for one. The age range you set on the class defines the group, and it can be entered in years for U-8 through U-17 or in months for early-years classes. Payment happens online via QRIS, GoPay, or bank transfer.
What happens when a training group is already full?+
A full session stops taking enrollments and prospects join a waitlist. The status moves from waiting to notified, your admin can add parents who called in to that same queue, and as soon as there is a cancellation, someone from the queue converts into an enrollment without retyping the child's details. Cancelled seats stop going to waste, and you get real data on which group needs an extra session.
Is there participant attendance or progress reporting?+
These two get treated as one package, so let us separate them. Attendance: YES, and it is part of the core system — attendance is recorded per participant per session (attended, no-show, cancelled), there is a class check-in QR you display at the venue for participants to scan on arrival, and there is a class attendance report that filters by class, by coach, and by date range, then exports. One limit worth knowing: that report counts participants training on a pack or membership, while participants paying per session (drop-in) are not yet included there. Progress reports: NO. No grades, no per-child skill or milestone tracking. We record attendance; we do not assess technical progress.
Can parents get automatic training-schedule reminders?+
Yes, through the WhatsApp Reminder add-on, which runs on prepaid tokens you top up as needed, priced outside the plan. Schedule reminders go out automatically to parents on WhatsApp, keeping attendance steadier while sparing your coaches from answering schedule questions one by one. The add-on is optional: the core system runs in full without it.
Can monthly fees be billed automatically with due dates and arrears tracking?+
Not yet, and this is an important limit before you decide. Bukujanji does not pull funds automatically on a due date, does not renew packs by itself, and does not maintain a running arrears ledger. What it does have: fees packaged as monthly plans or session-quota packs that parents buy and renew online themselves, plus automatic reminders over WhatsApp, email, or app notification when someone's pack is nearly used up or close to expiring. In practice it is reminder-driven renewal, not a subscription that charges on its own.
How is coach pay calculated in this system?+
Coach commission is calculated from the transactions recorded under that coach's name, at a value or percentage you define. What does not exist yet: a flat per-session fee that stays the same regardless of how many students turn up. If your pay scheme really is per session, the class attendance report can be filtered by coach and exported to use as the basis for calculating pay outside the system.
Our academy trains at several locations. Is that supported?+
Yes. Bukujanji supports multiple branches under one account: schedules, the student database, and enrollment and payments stay separate per location yet visible from a single dashboard. Memberships and session packs can also be valid across locations, so participants may train at any venue.

Bukujanji for Other Business Types

Online Booking System for Every Business

Salons, spas, gyms, yoga & pilates studios, learning centers, and other service businesses — one booking platform.

Class Booking System for Learning Centers

Weekly class schedules, capacity control, parents register their kids & pay online.

Sports Court & Venue Booking System

Per-court hourly calendar, online deposits via QRIS, zero double bookings.

Tennis Tournament App

Run internal or inter-academy tournaments — point-by-point scoring, age groups, and red & orange ball categories.

Build Your First Age Group Today

Book a 30-minute demo with our team at merchant.bukujanji.com/demo — we set up a sample of your age groups and training schedules, and your account is created the same day. Create your first U-8 class, set its age range and quota, lay out its weekly pattern, then start accepting online enrollments. Bukujanji is built by PT Kreatif Sistem Teknologi, Jakarta.