π©Ί Probetes System Plan
Dari Manual ke Digital β Roadmap Membangun Ekosistem Kesehatan Diabetes
Tentang Saya
Faisol Dwiki Amrizal β Backend Developer & Fullstack Developer
π§ faisaldwiki69@gmail.com | π± +62 812 4910 1538
Proyek yang Paling Saya Banggakan
Sistem E-Commerce Terpadu β PT. Naisha Inspirasi Muslimah (3.5 tahun, 2021β2024)
Di perusahaan ini, saya membangun backend system e-commerce dari nol yang menangani seluruh operasional penjualan online β dari pengelolaan order, kontrol inventaris, hingga manajemen pengguna.
Apa yang dibangun:
- Sistem backend scalable yang menjadi tulang punggung operasional e-commerce perusahaan
- Integrasi langsung dengan 4 marketplace besar: Shopee, Tokopedia, TikTok Shop, dan Lazada β sinkronisasi produk, order, dan status pembayaran secara otomatis
- Sistem keamanan data dengan enkripsi dan autentikasi untuk data transaksi sensitif
- Optimasi performa database (SQL + Redis caching) yang memangkas response time hingga 40%
Untuk siapa:
- Brand fashion Muslim dengan volume transaksi tinggi dari berbagai channel penjualan
Hasilnya:
- Tim operasional tidak perlu lagi input manual dari marketplace β semua otomatis tersinkronisasi
- Response time sistem 40% lebih cepat setelah optimasi
- Data penjualan terpusat dari semua channel dalam satu dashboard
Pengalaman ini sangat relevan dengan kebutuhan Probetes β karena tantangannya identik: menyatukan data dari berbagai channel (WhatsApp, marketplace, web) ke dalam satu sistem terpusat.
Pengalaman Integrasi yang Relevan
| Kategori | Platform/Teknologi | Pengalaman |
|---|---|---|
| Marketplace | Shopee, Tokopedia, TikTok Shop, Lazada | Integrasi API penuh β sync produk, order, pembayaran, stok |
| Payment Gateway | PayPal, Stripe, RazorPay, Midtrans | Integrasi pembayaran internasional & domestik |
| Crypto Payment | Crypto payment gateway | Integrasi pembayaran cryptocurrency |
| Real-time | WebSocket + Banking API | Komunikasi data real-time & tracking transaksi |
Riwayat Kerja Singkat
| Periode | Perusahaan | Peran | Highlight |
|---|---|---|---|
| 2025β2026 | PT Coding Collectif Indonesia | Fullstack Developer (Lead) | Arsitektur proyek, WebSocket + Banking API, deployment pipeline |
| 2021β2024 | PT Naisha Inspirasi Muslimah | Backend Developer | E-commerce system, integrasi 4 marketplace, Redis caching |
| 2021β2023 | DV9 International PTE LTD (Singapore) | Website Developer | Multi-platform e-commerce, payment integration (PayPal, Stripe, RazorPay) |
| 2019βSekarang | Freelance | Web Developer | Custom web apps, end-to-end project delivery |
Pendidikan: S1 Teknik Informatika β Universitas PGRI Madiun (2016β2020)
Tech Skills: JavaScript, Node.js, Golang, SQL, Git, Laravel, HTML/CSS, Flutter
Daftar Isi
1. Ringkasan Eksekutif
Probetes saat ini beroperasi dengan sistem yang terfragmentasi β data penjualan tersebar di WhatsApp, marketplace, dan spreadsheet. Ini menciptakan tiga masalah utama:
| Masalah | Dampak |
|---|---|
| Data sales tidak real-time | Keputusan bisnis terlambat |
| Tidak ada profil member terpusat | Sulit melacak journey kesehatan member |
| Proses manual berulang | Tim CS & operasional kewalahan seiring pertumbuhan |
Solusi yang diusulkan: Membangun ekosistem digital terpadu yang terdiri dari 4 pilar:
2. Prioritasi: Apa yang Dibangun Duluan?
Prinsip utama: Bangun fondasi dulu, baru gedungnya.
Urutan Prioritas
Mengapa Urutan Ini?
π₯ Prioritas 1: ERP Terpusat + Website (Paralel)
Alasan sederhana: Anda tidak bisa membangun rumah tanpa pondasi.
ERP adalah otak dari seluruh sistem. Semua data β siapa yang beli, kapan, produk apa, dari channel mana β harus punya satu "sumber kebenaran" (single source of truth). Tanpa ini:
- Website tidak tahu stok produk
- Aplikasi mobile tidak tahu riwayat pembelian member
- Laporan tetap manual dan tidak akurat
Website dibangun paralel karena:
- Langsung menghasilkan revenue (transaksi online)
- Menjadi "wajah digital" brand Probetes
- Menjadi channel penjualan yang bisa dikontrol penuh (tidak bergantung marketplace)
π₯ Prioritas 2: Mobile App + Integrasi Marketplace
Mobile app dibangun setelah ada data member yang rapi di ERP, karena:
- App butuh data profil, riwayat pembelian, dan progress kesehatan β semua ada di ERP
- Membangun app tanpa backend yang solid = membuang waktu
Integrasi marketplace otomatis menarik data penjualan dari Tokopedia, Shopee, TikTok Shop ke ERP β menghilangkan input manual.
π₯ Prioritas 3: Sistem Kasir + Health Tracking
Ini fitur penambah nilai yang masuk akal setelah sistem inti sudah stabil.
3. Arsitektur Sistem & Tech Stack
Gambaran Besar Arsitektur
Tokped / Shopee / TikTok"] POS["πͺ Kasir Toko/Klinik"] APP["π± Mobile App"] end subgraph "Backend Layer" API["π§ API Server
(Golang + Gin/Fiber)"] AUTH["π Auth Service
(Firebase Auth)"] QUEUE["π¨ Message Queue
(Bull / Redis)"] end subgraph "Data Layer" DB["ποΈ PostgreSQL
(Database Utama)"] CACHE["β‘ Redis
(Cache & Session)"] STORAGE["π Cloud Storage
(File & Gambar)"] end subgraph "Reporting & Analytics" STUDIO["π Google Data Studio
(Existing)"] METABASE["π Metabase
(Internal Dashboard)"] end WA --> API WEB --> API MP --> QUEUE POS --> API APP --> API API --> AUTH API --> DB API --> CACHE API --> STORAGE QUEUE --> API DB --> STUDIO DB --> METABASE style API fill:#0d1117,stroke:#58a6ff,color:#fff style DB fill:#0d1117,stroke:#3fb950,color:#fff style AUTH fill:#0d1117,stroke:#f0883e,color:#fff style QUEUE fill:#0d1117,stroke:#bc8cff,color:#fff
Tech Stack β Penjelasan Non-Teknis
| Komponen | Teknologi | Analogi Sederhana |
|---|---|---|
| Backend (Server) | Golang (Go + Gin/Fiber) | "Otak" yang memproses semua permintaan. Dipilih karena sangat cepat β bisa menangani ribuan permintaan bersamaan dengan penggunaan memori yang minimal |
| Database | PostgreSQL | "Lemari arsip digital" yang menyimpan semua data. Gratis, sangat handal, dan dipakai oleh perusahaan besar dunia |
| Website | Next.js (React) | "Toko online" yang cepat dan SEO-friendly, sehingga mudah ditemukan di Google |
| Mobile App | Flutter | Satu kali coding, jadi di Android dan iPhone. Seperti menulis satu surat yang otomatis diterjemahkan ke dua bahasa |
| Autentikasi | Firebase Auth | "Satpam digital" yang memastikan hanya member terdaftar yang bisa masuk |
| File Storage | Google Cloud Storage | "Google Drive untuk sistem" β menyimpan foto produk, dokumen resep, dll |
| Cache | Redis | "Catatan tempel" yang menyimpan data sering diakses agar sistem lebih cepat |
| Antrian Pesan | Golang Worker + Redis | "Antrian loket" β goroutine membuat antrian sangat efisien |
| Reporting | Google Data Studio + Metabase | Tetap pakai Data Studio. Tambah Metabase (gratis) untuk dashboard internal |
| Payment Gateway | Midtrans / Xendit | "Kasir digital" β transfer bank, e-wallet, QRIS, kartu kredit |
Mengapa Pilihan Ini?
- Golang (Go) β Dipilih karena:
- Performa sangat tinggi β Go di-compile menjadi binary, bukan interpreted seperti Node.js/Python. Response time lebih cepat, memori lebih hemat
- Concurrency bawaan β goroutine bisa menangani ribuan proses bersamaan tanpa membebani server
- Cocok untuk microservices β ideal jika Probetes perlu dipecah jadi layanan-layanan kecil
- Sudah terbukti β Dipakai oleh Tokopedia, Gojek, Google
- Analogi: Jika Node.js seperti mobil sedan yang nyaman, Go seperti mobil balap β lebih cepat dan efisien untuk beban berat
- PostgreSQL, bukan MongoDB β Data Probetes sangat relasional. PostgreSQL jauh lebih cocok untuk data terstruktur.
- Flutter, bukan React Native β Performa lebih baik, UI lebih konsisten, satu codebase untuk Android + iOS.
- Firebase Auth β Sudah di ekosistem Google. Gratis untuk volume wajar, mendukung login via Google/phone number.
- Google Cloud Platform β Konsistensi ekosistem. Sudah pakai Google Data Studio dan Apps Script.
4. Alur Data: Dari Penjualan ke Laporan
Contoh: CS WhatsApp Menerima Order
Berikut alur lengkap dari saat customer pesan via WhatsApp sampai muncul di laporan:
1. Nama/HP
2. Produk
3. Alamat
4. Pembayaran ERP->>API: Submit order data API->>API: Validasi data & cek stok API->>DB: Simpan order + update stok API-->>ERP: β Order #PRB-20260606-001 dibuat Note over ERP: Status: PENDING PAYMENT C->>CS: "Sudah transfer ya mba" + bukti transfer CS->>ERP: Update status β PAID ERP->>API: Konfirmasi pembayaran API->>DB: Update order status API->>API: Trigger: buat label pengiriman Note over DB: Data tersimpan real-time DB-->>DS: Sync otomatis (scheduled) Note over DS: Dashboard ter-update:
β Revenue hari ini
β Produk terlaris
β Cohort analysis
Alur untuk Channel Lain
| Channel | Cara Data Masuk | Otomatis? |
|---|---|---|
| WhatsApp CS | CS input manual via ERP Admin Panel | Semi-otomatis (CS input, sistem proses) |
| Website | Customer checkout sendiri β langsung masuk ERP | β Fully otomatis |
| Marketplace | API sync setiap 15 menit menarik order baru | β Fully otomatis |
| Toko Fisik | Kasir scan/input β langsung masuk ERP | β Fully otomatis |
| Mobile App | Customer checkout di app β langsung masuk ERP | β Fully otomatis |
Alur Data Agregat (Semua Channel ke Laporan)
(Marketplace Sync)"] end subgraph Storage H["ποΈ PostgreSQL"] end subgraph Output I["π Google Data Studio"] J["π Metabase Dashboard"] K["π Export CSV/Excel"] L["π Notifikasi
(Telegram/Email)"] end A --> F B --> F C --> G --> F D --> F E --> F F --> H H --> I H --> J H --> K H --> L style F fill:#1a1a2e,stroke:#e94560,color:#fff style H fill:#1a1a2e,stroke:#3fb950,color:#fff
5. Desain Database
Entity Relationship β Inti Sistem
Tabel Pendukung Penting
| Tabel | Fungsi |
|---|---|
marketplace_sync_log |
Mencatat setiap sinkronisasi data dari Tokopedia/Shopee/TikTok β kapan, berapa order baru, error apa |
inventory_movement |
Jejak audit setiap perubahan stok (masuk, keluar, adjustment) |
member_activity |
Log aktivitas member di app/web untuk analytics |
notification |
Antrian notifikasi ke member (promo, reminder cek gula darah, dll) |
staff |
Data karyawan (CS, dokter, admin) dengan role & permission |
6. Detail Per Modul
6A. ERP Terpusat (Admin Panel)
Fungsi: Dashboard internal untuk tim operasional.
Fitur Utama:
- π¦ Manajemen Order β Input, edit, tracking status order dari semua channel
- π Manajemen Produk β CRUD produk, stok, kategori, harga
- π₯ Manajemen Member β Profil, riwayat pembelian, health log, segmentasi
- π Dashboard Analytics β Revenue harian/mingguan/bulanan, produk terlaris, cohort retention
- π€ Manajemen Staff β Role-based access (admin, CS, finance, dokter)
- π Notifikasi β Alert stok rendah, order baru, payment pending
Tampilan yang Diharapkan:
- Sidebar navigation dengan menu utama
- Dashboard utama menampilkan KPI cards (total revenue, order hari ini, member baru)
- Tabel data dengan search, filter, dan pagination
- Form input yang clean dan validasi real-time
6B. Website Probetes
Fungsi: Etalase digital + platform transaksi untuk customer.
Fitur Utama:
- π Landing Page β Edukasi tentang remisi diabetes, testimonial, social proof
- π Toko Online β Katalog produk, keranjang belanja, checkout dengan payment gateway
- π€ Member Area β Login, profil, riwayat order, tracking pengiriman
- π Konten Edukasi β Artikel, video, panduan diet (SEO-friendly, untuk acquisition)
- π¬ Live Chat β Integrasi dengan WhatsApp Business atau chat widget
- π± Responsive β Optimal di HP karena mayoritas traffic dari mobile
SEO Strategy:
- Artikel blog dengan keyword "cara menurunkan gula darah", "diet diabetes", "remisi diabetes"
- Setiap produk punya halaman SEO-optimized
- Schema markup untuk produk dan artikel
6C. Mobile App (Probetes Member App)
Fungsi: "Strava untuk diabetesi" β engagement & health tracking.
Fitur Utama:
- π Health Dashboard β Input & visualisasi gula darah, HbA1c, berat badan, tekanan darah
- π Gamification β Streak harian, badge pencapaian, leaderboard komunitas
- π Shop β Belanja produk Probetes langsung dari app
- π¨ββοΈ Konsultasi β Booking & chat dengan dokter/coach
- π Konten β Resep makanan, panduan olahraga, artikel edukasi
- π Reminder β Pengingat cek gula darah, minum obat/herbal, olahraga
- π Progress Report β Laporan mingguan/bulanan progress kesehatan
Fitur "Strava-like":
- Share progress ke komunitas
- Challenge mingguan (misal: "7 Hari Tanpa Gula Tambahan")
- Celebrate milestones (misal: "3 bulan HbA1c normal!")
6D. Integrasi Marketplace
Cara Kerja:
Open API"] S["π Shopee
Open Platform"] TT["β« TikTok Shop
Open API"] L["π΅ Lazada
Open Platform"] end subgraph "Sync Engine (Golang Workers)" Q["π¨ Queue Worker
(Goroutine Pool)"] M["π Mapper
(Standarisasi Format)"] end subgraph "ERP" O["π¦ Order Management"] ST["π Stok"] P["π° Payment"] end T -->|"Webhook / Polling
setiap 15 menit"| Q S -->|"Push Notification
+ Polling"| Q TT -->|"Webhook"| Q L -->|"Push / Polling"| Q Q --> M M --> O M --> ST M --> P ST -->|"Update stok balik"| T ST -->|"Update stok balik"| S ST -->|"Update stok balik"| TT ST -->|"Update stok balik"| L
- Tokopedia Open API dan Shopee Open Platform membutuhkan status partner/brand resmi untuk akses penuh
- Proses approval bisa memakan waktu 2-4 minggu
- TikTok Shop API relatif lebih baru dan dokumentasinya masih berkembang
- Lazada Open Platform cukup mature, dokumentasi lengkap
- Plan B: Jika API tidak bisa diakses, gunakan export CSV otomatis + parser sebagai solusi sementara
6E. Sistem Kasir (POS) untuk Klinik/Toko Fisik
Fitur Utama:
- π³ Scan barcode/QR produk
- π§Ύ Cetak struk (thermal printer)
- π° Terima pembayaran QRIS, cash, debit
- π¦ Stok otomatis berkurang di ERP
- π€ Link ke profil member (jika ada)
Hardware yang Dibutuhkan:
- Tablet Android (sebagai layar kasir)
- Printer thermal Bluetooth
- Barcode scanner (opsional)
7. Risiko & Mitigasi
Matriks Risiko
Detail Risiko & Mitigasi
| # | Risiko | Dampak | Mitigasi |
|---|---|---|---|
| 1 | Scope Creep β "Tambah fitur ini dong" terus-menerus sehingga MVP tidak pernah selesai | Proyek molor berbulan-bulan, budget membengkak | Freeze scope per fase. Semua request baru masuk backlog. Stakeholder wajib approve scope sebelum mulai. |
| 2 | Tim CS menolak sistem baru β "Ribet, lebih enak pakai WhatsApp langsung" | Sistem tidak terpakai, data tetap manual | Libatkan CS sejak awal (co-design). Buat UX yang lebih cepat dari cara manual. Training bertahap. |
| 3 | Marketplace API tidak disetujui | Tidak bisa sync otomatis | Plan B: Export CSV dari seller center + auto-parser. Bisa juga gunakan Jubelio atau Ginee sebagai jembatan sementara. |
| 4 | Data migrasi dari sistem lama tidak bersih | Laporan tidak akurat di awal | Data cleaning sprint sebelum go-live. Validasi manual 100 data pertama. Periode paralel 2 minggu. |
| 5 | Payment gateway gagal / timeout | Customer tidak bisa bayar, revenue hilang | Integrasikan 2 payment gateway (Midtrans + Xendit) sebagai fallback. Monitoring uptime real-time. |
| 6 | Data breach / kebocoran data kesehatan | Reputasi hancur, potensi tuntutan hukum | Enkripsi data sensitif. HTTPS everywhere. Audit keamanan setiap 3 bulan. Comply UU PDP. |
8. Timeline & Fase Pengembangan
Fase 1: Fondasi (Bulan 1-3)
Target: ERP bisa dipakai tim CS + Website bisa terima order
Bulan 1:
βββ Minggu 1-2: Setup infrastruktur (server, database, CI/CD)
βββ Minggu 2-3: Backend API core (auth, member, product, order)
βββ Minggu 3-4: Admin Panel β Manajemen Produk & Order
Bulan 2:
βββ Minggu 1-2: Admin Panel β Dashboard Analytics & Member Management
βββ Minggu 2-3: Website β Landing page, katalog produk, keranjang
βββ Minggu 3-4: Website β Checkout + integrasi payment gateway
Bulan 3:
βββ Minggu 1-2: Website β Member area (login, profil, riwayat order)
βββ Minggu 2-3: Testing, bug fixing, data migration
βββ Minggu 4: π SOFT LAUNCH (internal + 50 member pilot)
Deliverable Fase 1:
- ERP Admin Panel untuk input & tracking order
- Website dengan fitur belanja online
- Payment gateway terintegrasi
- Dashboard penjualan real-time
Fase 2: Ekspansi (Bulan 4-6)
Target: Mobile app live + marketplace tersinkronisasi
Bulan 4:
βββ Minggu 1-2: Mobile App β Setup + Auth + Onboarding
βββ Minggu 2-3: Mobile App β Health Dashboard (input & visualisasi)
βββ Minggu 3-4: Mobile App β Shop (katalog + checkout)
Bulan 5:
βββ Minggu 1-2: Mobile App β Konsultasi + Konten edukasi
βββ Minggu 2-3: Marketplace API Integration (Tokopedia)
βββ Minggu 3-4: Marketplace API Integration (Shopee)
Bulan 6:
βββ Minggu 1-2: Mobile App β Gamification & reminders
βββ Minggu 2-3: TikTok Shop integration + testing
βββ Minggu 4: π APP LAUNCH di Play Store & App Store
Deliverable Fase 2:
- Probetes App di Android & iOS
- Health tracking dengan grafik progress
- Auto-sync order dari marketplace
- Gamification dasar (streak, badges)
Fase 3: Maturity (Bulan 7-9)
Target: Sistem lengkap & terintegrasi penuh
Bulan 7:
βββ Sistem POS untuk klinik/toko fisik
βββ Integrasi stok cross-channel
Bulan 8:
βββ Advanced analytics & cohort reporting
βββ Push notification engine
βββ Referral & loyalty program
Bulan 9:
βββ Performance optimization
βββ Security audit
βββ Dokumentasi & training tim
Timeline Visual
9. Metrik Keberhasilan
Bagaimana Tahu Sistem Ini Berhasil?
| Fase | Metrik | Target |
|---|---|---|
| Fase 1 | Waktu input order oleh CS | < 2 menit per order (dari ~5-10 menit manual) |
| Fase 1 | Order via website | Minimal 10% dari total order di bulan ke-3 |
| Fase 1 | Akurasi data penjualan | 99%+ (vs manual yang sering selisih) |
| Fase 2 | Download app | 500+ di bulan pertama launch |
| Fase 2 | Daily Active Users (app) | 30% dari total member |
| Fase 2 | Order manual dari marketplace | Turun 90% (diganti auto-sync) |
| Fase 3 | Revenue via digital channel | Minimal 40% dari total revenue |
| Fase 3 | Member retention (3 bulan) | > 60% |
Catatan Penutup
- Disiplin scope β jangan tambah fitur sebelum fase selesai
- User testing sejak awal β libatkan CS dan member pilot dari Bulan 1
- Iterasi cepat β launch versi sederhana, perbaiki berdasarkan feedback, ulangi
- Data-driven decision β setiap keputusan fitur harus didukung data penggunaan
Sistem ini dirancang untuk tumbuh bersama Probetes. Arsitekturnya modular β setiap komponen bisa di-upgrade atau diganti tanpa merusak yang lain. Mulai kecil, validasi, lalu scale.
Dokumen ini adalah versi 1.0. Akan diperbarui seiring diskusi dan feedback dari tim Probetes.