Ringkasan
Kalkulator margin bersih untuk penjual Shopee Indonesia (UMKM) yang sebentar lagi ke-squeeze potongan-potongan baru 2026 yang menumpuk: kenaikan biaya admin per Januari (sampai 10%), biaya Gratis Ongkir Ekstra (berlaku 2 Mei 2026), dan biaya retur yang kini ikut ditanggung penjual mulai 1 Juni 2026 (sampai Rp10.000 pulang-pergi, bahkan untuk pembeli yang cuma berubah pikiran). Yang terakhir ini paling sering kelewat.
Masalahnya, banyak produk yang kelihatannya untung sebenarnya diam-diam jadi rugi begitu semua itu dihitung, dan kebanyakan penjual nggak pernah tahu produk mana. Tinggal upload katalog (CSV atau Excel), tool ini menghitung margin bersih asli per SKU setelah semua potongan 2026, menandai produk rugi dengan warna merah, menunjukkan total rupiah yang bocor tiap bulan, dan memberi saran harga biar balik untung. Untuk barang impor, tool ini juga mensimulasikan dampak pelemahan Rupiah ke margin tersebut.
UI-nya Bahasa Indonesia (sesuai audiens); kode dan dokumentasi dalam bahasa Inggris.
Tantangan
Tumpukan biaya 2026 ini benar-benar membingungkan. Tarifnya datang dari berbagai sumber berita dengan tanggal berlaku dan tier kategori yang beda-beda, dan penjual pada umumnya menghitung “margin” sebagai harga dikurangi modal, melewatkan biaya platform dan eksposur biaya retur yang baru sama sekali.
Tool ini harus:
- Memodelkan setiap tarif 2026 dari satu konfigurasi bersumber: biaya admin per kategori, biaya proses pesanan, Gratis Ongkir Ekstra (dengan batas), tambahan pre-order, dan bagian biaya retur baru, masing-masing dengan tanggal berlakunya.
- Membaca katalog penjual nyata dari CSV atau Excel, menerima header kolom Indonesia maupun Inggris.
- Menyelesaikan harga break-even dan harga target margin secara numerik, karena batas (cap) Gratis Ongkir Ekstra membuat margin bersih jadi non-linear, jadi rumus tertutup yang naif akan salah justru saat cap-nya aktif.
- Tampil sebagai web app yang bisa dibagikan dan benar-benar bisa dipakai penjual non-teknis, lalu hasilnya bisa diekspor.
Solusi
Model biaya sebagai sumber kebenaran tunggal
Semua tarif 2026 ada di satu config bersumber (fee_config.yaml), masing-masing dikutip dengan sumber dan tanggal berlakunya di FEE_MODEL.md pendamping. Engine memuat ulang tarif saat runtime, jadi saat Shopee mengubah biaya cukup edit satu baris config, bukan ubah kode atau redeploy logika. Tarif yang belum bisa diverifikasi penuh ditandai eksplisit UNVERIFIED dengan placeholder konservatif, jadi modelnya jujur soal mana yang sudah pasti versus masih asumsi.
Engine margin-nya
Untuk tiap SKU dihitung harga bersih setelah voucher yang ditanggung penjual, dikurangi seluruh tumpukan biaya Shopee (biaya admin kategori, proses pesanan, Gratis Ongkir Ekstra kalau ikut, tambahan pre-order), dikurangi modal, lalu dikurangi perkiraan biaya retur (tingkat retur dikali eksposur per unit yang di-cap). Untuk barang impor, modal dihitung ulang dari harga USD dan kurs, dengan tabel sensitivitas pada kurs sekarang, +5%, dan +10%. Harga break-even dan target margin diselesaikan dengan bisection, yang tetap benar bahkan saat cap Gratis Ongkir Ekstra aktif.
Pure-Python, bisa deploy di mana saja
Ingestion pakai modul csv standard-library plus openpyxl, jadi tanpa pandas dan tanpa build C. Semuanya disajikan dengan Waitress dan dilengkapi Dockerfile serta Procfile, jadi bisa deploy di tier gratis Render, Railway, atau Fly. State-nya per-sesi browser, jadi beberapa penjual bisa pakai satu link demo bersama tanpa saling menimpa.
Alur kerja
Kamu atur asumsi (target margin, tingkat retur default, dan kurs yang diambil live otomatis), muat katalog (upload sendiri, atau coba sampel bawaan 8 SKU), lalu dapat dashboard berisi analisa otomatis berbahasa awam soal apa yang bocor dan kenapa, skor kesehatan margin 0 sampai 100, chart margin per produk, buku besar per-SKU yang bisa disortir dengan produk rugi berwarna merah (klik baris untuk rincian biaya dan tabel kurs), tampilan saran harga, dan ekspor CSV atau HTML siap cetak (ke PDF).
Hasil
- 32 test, termasuk 4 contoh hitung manual. Aritmetikanya diverifikasi terhadap skenario pena-dan-kertas, bukan diasumsikan. Matematika lengkapnya ada di
WORKED_EXAMPLES.md. - Siap deploy. Dockerfile, Procfile, dan Waitress; penjual non-teknis tinggal dikirimi link dan pencet Jalankan.
- Didesain untuk di-update. Saat Shopee mengubah tarif (dan itu sering), perbaikannya cukup edit config plus update kutipan sumbernya, tanpa menyentuh logika perhitungan.
- Jujur soal batasannya. Ada bagian red-team / self-review yang mencatat asumsi (retur bisa di-restock, tier biaya admin dari sumber jurnalistik) dan beberapa tarif
UNVERIFIED, masing-masing dengan default konservatif dan TODO.
Cara margin dihitung (intinya)
harga bersih = harga_jual × (1 − voucher%)
margin bersih (Rp) = harga bersih − biaya Shopee − modal − perkiraan biaya retur
margin bersih (%) = margin bersih / harga_jual × 100
Di mana biaya Shopee = biaya admin kategori (atas harga bersih) + proses pesanan + Gratis Ongkir Ekstra (kalau ikut, di-cap) + tambahan pre-order, perkiraan biaya retur = tingkat_retur% × eksposur retur per unit yang di-cap, dan modal impor = USD × kurs × (1 + overhead impor). Harga break-even dan target margin diselesaikan secara numerik, bukan rumus tertutup, karena cap Gratis Ongkir Ekstra membuat hubungannya non-linear.
Kenapa pilihan ini
- Pure Python, tanpa pandas. Bisa deploy di tier gratis tanpa build native, dan permukaan dependensinya kecil.
- Tarif di config, bukan di kode. Shopee sering ubah biaya, dan menaruh semua tarif di satu YAML bersumber bikin logikanya nggak perlu ikut berubah.
- Bisection untuk harga. Cap Gratis Ongkir Ekstra membuat margin bersih non-linear, jadi rumus tertutup akan salah justru saat cap aktif. Penyelesaian numerik tetap benar di semua kasus.