Arsitektur sistem

Satu basis kode melayani semua tenant. Setiap permintaan dikenali tenant dan unitnya di lapisan akses, lalu diteruskan ke modul yang memakai data dan layanan bersama.

KanalTempat pengguna masuk
OTARA SekolahWeb admin yayasan & sekolah
Web guru & siswaLMS, nilai, jadwal
Aplikasi OTARAOrang tua, siswa, guru ยท Android & iOS
Halaman PPDB publikFormulir calon murid
OTARA KonsolSuper Admin
AksesSiapa, tenant mana, boleh apa
Resolusi tenantSubdomain / kode sekolah
LoginEmail/HP, OTP WhatsApp/SMS
Peran per unitRBAC + izin per modul
API gatewayVersi API, batas laju
Log auditSiapa mengubah apa
ModulAktif sesuai paket tenant
SIAKADSiswa, kelas, jadwal, absensi
e-RaporNilai, capaian, rapor
HRISPegawai, cuti, gaji
ERP SekolahKas, anggaran, aset
LMSMateri, tugas, ujian
PortalOrang tua & siswa
PPDBPendaftaran, seleksi, daftar ulang
KepesantrenanAsrama, tahfidz, uang saku
Layanan bersamaDipakai semua modul
Tagihan & pembayaranQRIS dinamis, rekonsiliasi
NotifikasiPush, WhatsApp, email
Dokumen PDFRapor, kuitansi, slip gaji
Antrian & penjadwalTagihan massal, pengingat
Laporan & eksporExcel, PDF, dasbor
DataTerpisah per tenant
Database multi-tenantID tenant + row-level security
Penyimpanan berkasFolder per tenant
CacheSesi, jadwal, menu
BackupHarian, pulih per tenant
Usulan teknologi (bisa disesuaikan): Laravel โ€” API & web admin PostgreSQL Redis โ€” cache & antrian Flutter โ€” Android & iOS Object storage (S3-compatible)