Domain: SPMB (Seleksi Penerimaan Murid Baru)¶
SSOT untuk modul penerimaan peserta didik baru Scola — pendaftaran, seleksi, daftar ulang.
Last verified: 2026-03-31
1. Visi & Best Practice¶
1.1 Regulasi Acuan¶
| Regulasi | Relevansi |
|---|---|
| Permendikdasmen No. 3/2025 | SPMB terbaru: domisili, afirmasi, prestasi, mutasi; prinsip objektif, transparan, akuntabel, berkeadilan, tanpa diskriminasi |
| Permendikbud No. 1/2021 | PPDB: jalur, kuota, jadwal, transparansi |
| Perpres tentang DAK Pendidikan | Standar fasilitas yang mempengaruhi daya tampung |
| Perda masing-masing daerah | Aturan PPDB daerah bisa lebih spesifik |
1.2 Kondisi Ideal¶
Konfigurasi Periode Penerimaan: - Admin set periode SPMB (buka/tutup pendaftaran) - Jalur penerimaan configurable: reguler, prestasi, afirmasi, pindahan - Jenjang pendidikan: SD, SMP, SMA (multi-level) - Biaya pendaftaran per jalur - Kuota per jalur per jenjang
Portal Pendaftar (Public-Facing): - Landing page informasi SPMB - Registrasi akun pendaftar (orang tua) - Form pendaftaran multi-step: 1. Data pribadi calon siswa 2. Data orang tua/wali 3. Upload dokumen persyaratan 4. Pencapaian/prestasi akademik/non-akademik 5. Review & submit - Cek status pendaftaran (no. registrasi) - Pengumuman hasil seleksi - Statistik publik agregat per gelombang/jalur tanpa membuka data pribadi
Seleksi: - CBT online untuk tes masuk (integrasi domain CBT, context=admission) - Jadwal tes per gelombang - Scoring criteria configurable (bobot per komponen) - Ranking otomatis berdasarkan skor total - Keputusan: diterima, cadangan, tidak diterima
Daftar Ulang: - Siswa diterima → alur daftar ulang online - Upload dokumen tambahan - Pembayaran uang pangkal (integrasi domain keuangan) - NIS (Nomor Induk Siswa) management
Complaint & Transparansi: - Mekanisme pengaduan/keluhan - Pengaduan mendukung lampiran bukti - Transparansi proses (audit trail) - Dokumen & hasil dapat diakses pendaftar
2. Arsitektur & Data Model¶
2.1 Backend Module: scola_admission¶
| Model | Deskripsi |
|---|---|
op.admission |
Pendaftaran (data calon siswa) |
op.admission.register |
Periode penerimaan (gelombang) |
scola.admission.config |
Konfigurasi umum SPMB |
scola.education.level |
Jenjang pendidikan |
scola.admission.pathway |
Jalur penerimaan |
scola.document.type |
Jenis dokumen persyaratan |
scola.scholarship.type |
Jenis beasiswa pendaftaran |
scola.parent.relationship |
Jenis hubungan wali |
scola.sic.config |
Konfigurasi NIS |
2.2 Frontend Structure¶
src/views/AdmissionManagement/
├── Public/ # Portal pendaftar (public-facing)
│ ├── SPMBLanding.vue # Landing page info SPMB
│ ├── SPMBStatusCheck.vue # Cek status (no. registrasi)
│ ├── SPMBRegister.vue # Registrasi akun
│ ├── SPMBLogin.vue # Login pendaftar
│ ├── SPMBDashboard.vue # Dashboard pendaftar
│ ├── SPMBRegisterList.vue # Daftar periode terbuka
│ ├── SPMBAdmissionCreate.vue # Form pendaftaran multi-step
│ ├── SPMBAdmissionDetail.vue # Detail pendaftaran
│ ├── SPMBDocuments.vue # Upload dokumen
│ ├── SPMBAchievements.vue # Input prestasi
│ ├── SPMBTestSchedule.vue # Jadwal tes
│ ├── SPMBCBTStart.vue # CBT exam lobby
│ ├── SPMBComplaint.vue # Pengaduan
│ └── SPMBDaftarUlang.vue # Daftar ulang
├── AdmissionApplicationList.vue # Admin: daftar pendaftar
├── AdmissionDetail.vue # Admin: detail pendaftar
├── AdmissionConfig.vue # Admin: konfigurasi SPMB
└── Config/ # Sub-konfigurasi
├── EducationLevelList.vue # Jenjang pendidikan
├── PathwayList.vue # Jalur penerimaan
├── DocumentTypeList.vue # Jenis dokumen
├── SICConfig.vue # NIS configuration
├── ScholarshipTypeList.vue # Jenis beasiswa
└── ParentRelationshipList.vue # Hubungan wali
2.3 Route Design¶
Public Routes (no auth):
- /spmb — Landing page
- /spmb/status — Cek status
- /spmb/register — Registrasi akun
- /spmb/login — Login
Authenticated Routes (parent role):
- /spmb/dashboard — Dashboard pendaftar
- /spmb/registers — Pilih periode
- /spmb/admission/create/:registerId — Form pendaftaran
- /spmb/admission/:id — Detail pendaftaran
- /spmb/admission/:id/documents — Upload dokumen
- /spmb/admission/:id/achievements — Prestasi
- /spmb/admission/:id/tests — Jadwal tes
- /spmb/admission/:id/complaints — Pengaduan
- /spmb/admission/:id/enrollment — Daftar ulang
- /spmb/cbt/start — CBT lobby
- /spmb/cbt/runner/:exam_id — CBT runner (full-screen)
Admin Routes:
- /admin/spmb/periode — Kelola periode
- /admin/spmb/periode/applications — Daftar pendaftar
- /admin/spmb/periode/admission/:id — Detail pendaftar
- /admin/spmb-config — Konfigurasi umum
- /admin/spmb-config/* — Sub-konfigurasi
3. Fitur & Status Implementasi¶
| Fitur | Status | Catatan |
|---|---|---|
| Konfigurasi periode SPMB | ✅ Done | Buka/tutup, gelombang |
| Jalur penerimaan (pathway) | ✅ Done | Configurable |
| Jenjang pendidikan | ✅ Done | Multi-level support |
| Jenis dokumen persyaratan | ✅ Done | Configurable per jalur |
| Landing page SPMB (public) | ✅ Done | Informasi sekolah + jalur |
| Registrasi akun pendaftar | ✅ Done | Via SPMBRegister |
| Login pendaftar | ✅ Done | Separate flow from main login |
| Cek status pendaftaran | ✅ Done | By registration number; status publik kini memuat enrollment_deadline aktual saat daftar ulang aktif |
| Form pendaftaran multi-step | ✅ Done | Data siswa → ortu → dokumen → prestasi |
| Upload dokumen | ✅ Done | |
| Input prestasi | ✅ Done | |
| CBT tes masuk (admission context) | ✅ Done | Integrasi CBT module |
| Jadwal tes | ✅ Done | |
| Daftar ulang online | ✅ Done | Konfirmasi enrollment sekarang mewajibkan dokumen daftar ulang lengkap dan pembayaran lunas bila biaya daftar ulang berlaku |
| Pengaduan/complaint | ✅ Done | |
| Admin: daftar pendaftar | ✅ Done | |
| Admin: detail + review | ✅ Done | |
| NIS configuration | ✅ Done | |
| Beasiswa pendaftaran | ✅ Done | |
| Ranking otomatis | ✅ Done | Ranking list admin + re-calculate per gelombang + ranking tampil di status publik |
| Pengumuman hasil (public) | ✅ Done | Status publik memuat hasil seleksi, ranking, dan next step |
| Payment integration (uang pangkal) | ✅ Done | Daftar ulang terhubung ke invoice, pembayaran, dan cetak invoice parent; invoice hanya dapat dibuat setelah status admission/done, dan FE/BE sama-sama memblokir enrollment sebelum pembayaran lunas bila biaya daftar ulang berlaku |
| Email/WA notifikasi status | ✅ Done | Dikirim lewat portal notification channel config; email/WA mengikuti preferensi dan provider sekolah |
| Multi-gelombang comparison | ✅ Done | Dashboard admin membandingkan volume pendaftar, status seleksi, dan publication rate antar gelombang aktif |
| Public statistics page | ✅ Done | Halaman publik menampilkan kuota, pendaftar, diterima, sisa kuota, dan rincian jalur |
| Domisili integration | ✅ Done | Jalur domisili memakai geolocation, radius sekolah, dan quota per jalur; alias legacy zonasi tetap dibaca untuk kompatibilitas |
4. Gap Analysis & Backlog¶
P1 — Important¶
| Gap | Dampak | Solusi |
|---|---|---|
| ~~Auto-publish pengumuman hasil~~ | ~~Admin harus kirim manual per pendaftar~~ | Status publik + CTA portal SPMB sudah aktif |
| ~~Notifikasi otomatis ke pendaftar via channel eksternal~~ | ~~Pendaftar tidak tahu progress tanpa buka portal~~ | Portal notification + email/WA + quiet-hours aware delivery |
| ~~Payment flow daftar ulang seamless~~ | ~~Ortu redirect manual ke pembayaran~~ | Bridge invoice → payment detail → print invoice sudah aktif |
P2 — Nice to Have¶
| Gap | Dampak | Solusi |
|---|---|---|
| Advanced multi-gelombang analytics | Sekolah ingin analisis lintas gelombang lebih dalam | Benchmark tren per jenjang, funnel, dan conversion antar gelombang |
5. File References¶
Frontend¶
src/router/spmbRoutes.js— Public SPMB routes (109 lines)src/router/adminRoutes.js— Admin SPMB routes (line ~3440-3563)src/views/AdmissionManagement/— All SPMB viewsdocs/qa/spmb-end-to-end-uat.md— UAT lengkap workflow SPMB end-to-end
Backend¶
scola_admission/— Admission modulescola_admission/SIMULASI_ADMISSION_LENGKAP.md— Simulation guide (reference)
7. Panduan Konfigurasi Implementor¶
8. Panduan End User¶
- Admin: head-admin.md, admin-staff.md
- Pendaftar: alur di
/spmb— lihat spmb-manual-uat.md