Gambaran Umum

Manajemen staf dan pengguna adalah pondasi utama dalam menjaga keamanan serta kelancaran operasional harian sebuah bisnis. Modul Manajemen Staff di Temuya POS memberikan kendali penuh kepada pemilik usaha untuk mengelola siapa saja yang dapat mengakses sistem, apa yang bisa mereka lakukan di dalamnya, dan melacak seluruh aktivitas mereka secara transparan.

Bayangkan sebuah skenario bisnis di kedai kopi yang sedang berkembang pesat. Sang pemilik tidak lagi bisa berjaga di kasir setiap hari. Ia mempekerjakan seorang manajer operasional untuk mengurus persediaan bahan baku, dua orang kasir yang bekerja dalam sistem shift, dan seorang akuntan yang membutuhkan akses hanya ke laporan keuangan. Tanpa sistem manajemen pengguna yang baik, sang pemilik terpaksa membagikan kata sandi akun utamanya, yang tentu saja membuka celah keamanan serius.

Dengan modul ini, sang pemilik cukup mengirimkan undangan melalui email kepada masing-masing karyawannya. Ia bisa menetapkan peran (role) yang spesifik: manajer mendapat akses untuk mengubah stok dan menu, kasir hanya bisa melakukan transaksi penjualan dan membuka/menutup shift, sementara akuntan diberikan peran admin yang terbatas pada pelaporan. Jika ada staf yang mengundurkan diri, akses mereka dapat dicabut dalam hitungan detik tanpa mengganggu operasional staf lainnya.

Pendekatan ini tidak hanya mengamankan data rahasia bisnis (seperti margin keuntungan atau kontak pemasok), tetapi juga menanamkan budaya akuntabilitas. Setiap transaksi atau perubahan data yang terjadi dalam sistem selalu direkam atas nama pengguna tertentu. Jika terjadi selisih uang di laci kasir atau stok barang yang hilang, pemilik dapat dengan mudah menelusuri siapa yang bertanggung jawab berdasarkan riwayat aktivitas.

Alur Kerja

Proses penambahan staf baru dirancang agar aman, efisien, dan meminimalkan kesalahan input data oleh staf. Semuanya berpusat pada sistem undangan berbasis email.

sequenceDiagram
    participant O as Owner/Manager
    participant S as Sistem Temuya
    participant E as Email Karyawan
    participant K as Karyawan Baru

    O->>S: Masukkan email & pilih Role (mis: Kasir)
    S->>S: Validasi format email & cek ketersediaan
    S->>E: Kirim email undangan dengan link unik
    E-->>K: Terima notifikasi email undangan
    K->>S: Klik link aktivasi undangan
    S-->>K: Tampilkan form registrasi profil
    K->>S: Buat kata sandi & lengkapi data diri
    S->>S: Simpan data kredensial (enkripsi)
    S-->>K: Redirect ke halaman Login
    K->>S: Login menggunakan email & kata sandi baru
    S->>S: Verifikasi kredensial & otorisasi Role
    S-->>K: Masuk ke dashboard sesuai Role

Langkah-langkah terperinci dalam alur kerja ini meliputi:

  1. Pemilik atau manajer toko masuk ke menu Manajemen Staff.
  2. Mereka menekan tombol β€œTambah Staff”, kemudian memasukkan alamat email aktif dari karyawan yang bersangkutan.
  3. Mereka memilih peran yang sesuai dari daftar yang tersedia.
  4. Sistem kemudian mengirimkan tautan undangan aman yang memiliki batas waktu kedaluwarsa.
  5. Karyawan yang menerima email tersebut akan mengklik tautan, lalu mengatur kata sandi pribadi mereka.
  6. Setelah berhasil mendaftar, akun tersebut resmi terhubung dengan toko tersebut sesuai batas wewenangnya.

Teknologi & Infrastruktur

Modul ini didukung oleh infrastruktur autentikasi dan otorisasi yang tangguh untuk memastikan data tidak jatuh ke tangan yang salah. Manajemen peran diatur menggunakan sistem akses berbasis peran yang memastikan hierarki pengguna tetap terjaga.

Peran (Role)Hak Akses UtamaBatasan Utama
OwnerAkses penuh ke seluruh fitur dan pengaturan toko, termasuk menghapus toko.Tidak ada batasan.
AdminMengakses laporan, manajemen menu, dan pengaturan dasar.Tidak dapat menghapus toko atau mengelola akun Owner.
ManagerMengatur stok, jadwal staf, dan melihat transaksi harian.Tidak dapat mengakses laporan laba rugi.
KasirMelakukan transaksi penjualan, cetak struk, dan buka tutup shift.Tidak dapat menambah/menghapus produk atau mengubah pengaturan.

Berikut adalah struktur entitas data yang menggerakkan fitur ini:

Entitas Basis DataDeskripsi FungsiAtribut Penting
UsersTabel pusat otentikasi global.email, hashed_password, created_at, status
Store_MembersTabel penghubung (pivot) antara toko dan pengguna, mendefinisikan peran.user_id, store_id, role_id, is_active
RolesDefinisi jenis peran dan nama yang ditampilkan.role_name, description, hierarchy_level
PermissionsDaftar izin tindakan spesifik dalam sistem (misalnya: delete_product, view_reports).permission_code, module
Role_PermissionsPenghubung antara peran dan daftar izin yang dipegangnya.role_id, permission_code
InvitationsMelacak tautan undangan yang dikirimkan.email, token, role_id, expires_at, status

Keterkaitan dengan Fitur Lain

Manajemen Staff adalah fitur inti (core feature) yang menyentuh hampir seluruh aspek dalam ekosistem Temuya POS:

  • Jadwal Kerja Karyawan: Akun staf yang telah aktif dapat dimasukkan ke dalam jadwal shift operasional harian.
  • Transaksi Kasir: Setiap pesanan, diskon manual, atau pengembalian dana (refund) yang diproses akan mencatat ID kasir yang bertugas, memudahkan audit.
  • Laporan Kinerja Kasir: Sistem secara otomatis menghasilkan laporan tentang total penjualan, selisih uang, atau jumlah transaksi yang ditangani oleh masing-masing kasir.
  • Manajemen Inventaris: Jika terjadi penyesuaian stok manual (stock opname) karena barang rusak atau hilang, nama staf yang melakukan perubahan akan dicatat di buku besar inventaris.
  • Pengaturan Toko: Otorisasi tingkat tinggi diperlukan untuk mengubah parameter dasar toko seperti identitas merek, pengaturan pajak, atau perubahan layanan pembayaran.

Hal Penting yang Perlu Diketahui

  1. Hierarki Penonaktifan: Seseorang dengan peran Manajer dapat mengundang atau menonaktifkan akun Kasir, tetapi tidak dapat mengubah status akun Admin atau Owner. Sistem akan menolak upaya perubahan hak akses lintas hierarki ke atas (upward privilege escalation).
  2. Keamanan Undangan: Tautan undangan yang dikirimkan melalui email memiliki batas waktu (misalnya 48 jam). Jika tautan tersebut belum diklik dan sudah kedaluwarsa, pihak manajer harus mengirimkan ulang undangan tersebut.
  3. Akun Multi-Toko: Jika karyawan yang sama dipekerjakan di dua cabang toko yang berbeda (di bawah manajemen yang sama), mereka tidak perlu mendaftar dengan email baru. Email yang sama dapat diundang ke toko cabang, dan mereka bisa berganti antarmuka toko dari satu akun yang sama.
  4. Pembekuan Akun: Menghapus staf tidak berarti riwayat transaksi mereka hilang. Sistem menggunakan pendekatan β€œsoft delete” (penonaktifan) sehingga semua jejak audit tetap terjaga demi kepentingan pelaporan.

Dengan arsitektur dan sistem kontrol yang mendetail, modul ini memberikan keseimbangan antara operasional yang lincah dan pengawasan yang ketat.