Dokumentasi
Referensi & kebijakan sistem: status akun, langganan, data, domain, peran, dan notifikasi. Untuk cara kerja langkah-demi-langkah buka Panduan; pertanyaan cepat di FAQ.
Mode Persiapan (sebelum toko dibuka)
Setiap toko baru otomatis berada di Mode Persiapan: pemilik bebas berlatih (menambah produk, menguji stok, mencoba pesanan & checkout) sementara storefront belum dibuka untuk publik — pengunjung umum melihat halaman "Segera Dibuka".
Masa Onboarding (paket berbayar). Saat berlangganan paket berbayar pertama, masa berbayar langganan dipause selama Mode Persiapan — maksimal 30 hari (bulanan) / 90 hari (tahunan). Jam berbayar mulai saat Go-Live ("Siap Beroperasi") atau otomatis di akhir masa onboarding, sehingga masa berbayar yang dibayar tidak terpakai selama persiapan. Tagihan berikutnya memakai tanggal kalender (mis. mulai tanggal 31 → tagih tanggal 31 tiap bulan; bila bulan tak punya tanggal itu, dikunci ke hari terakhir bulan). Paket Gratis: Mode Persiapan biasa tanpa jam berbayar.
Menguji toko sebelum dibuka: pada banner Mode Persiapan di dashboard, klik "Pratinjau & Uji Toko" — tautan pratinjau membuka storefront versi pemilik (lewat token rahasia) sehingga Anda bisa menjalankan seluruh alur checkout. Pelanggan biasa tetap tak bisa mengakses toko.
Mulai beroperasi (go-live): saat sudah siap (produk, pengiriman/Biteship, & pembayaran terpasang), klik "Siap Beroperasi" lalu konfirmasi. Sistem membersihkan seluruh data latihan agar mulai dari nol, lalu membuka storefront untuk publik.
- Tetap aman (tidak dihapus): produk & varian, kategori, supplier, gudang, promo, pengaturan, staf, & langganan.
- Dinolkan: pesanan, lalu lintas stok, batch, penerimaan, PO, pengeluaran, sesi POS, voucher terpakai; stok produk kembali 0.
- Tindakan satu arah — setelah go-live tak bisa kembali ke Mode Persiapan.
Dashboard Utama
Halaman awal dashboard menampilkan ringkasan toko sekilas. Isinya menyesuaikan paket Anda.
Kartu ringkasan (baris atas)
- Total Produk — jumlah produk terdaftar (semua paket).
- Starter+: Total Pesanan, Total Pelanggan, Total Pendapatan (dari pesanan selesai).
- Gratis: karena belum ada checkout lengkap, kartu order diganti metrik stok — Stok Menipis, Stok Habis, Nilai Berisiko Kedaluwarsa.
Kartu perhatian pesanan (Starter+, bisa diklik)
Tiga kartu ini menyoroti pesanan yang butuh tindakan. Klik untuk langsung membuka halaman Pesanan pada tab terkait. Angkanya otomatis menjadi 0 saat pesanan beranjak status.
| Kartu | Berisi | Menjadi 0 saat |
|---|---|---|
| Pesanan Perlu Diproses | Pesanan sudah dibayar tapi belum dikirim (perlu dikemas & diproses). | Pesanan dikirim (Atur Pickup / Kirim) → pindah ke Dikirim. |
| Pesanan Telah Diproses | Sedang disiapkan/menunggu kurir. | Pesanan ditandai dikirim. |
| Pengembalian/Pembatalan | Pembatalan/retur yang baru masuk & perlu tindakan. Bukan total keseluruhan. | Retur/refund selesai diproses. |
Seksi Performa Toko
Ringkasan performa hari ini dengan pembanding kemarin pada periode jam yang sama (mis. pukul 10.00: hari ini 00.00–10.00 vs kemarin 00.00–10.00) agar persentase naik/turun adil — bukan membandingkan hari berjalan dengan kemarin penuh.
| Metrik | Definisi |
|---|---|
| Penjualan | Nilai pesanan yang DIBAYAR hari ini dari semua kanal (storefront, POS Kasir, marketplace) — termasuk diskon, voucher, & ongkir yang dibayar pembeli. Pesanan yang kemudian dibatalkan/di-refund tetap terhitung. |
| Total Pengunjung | Pengunjung unik storefront hari ini. Satu orang yang membuka beberapa halaman (atau berkunjung berkali-kali) dihitung 1 pengunjung. |
| Jumlah Produk Diklik | Berapa kali halaman detail produk di storefront dibuka hari ini (semua perangkat). |
| Pesanan | Jumlah pesanan yang dibayar hari ini dari semua kanal (termasuk transfer manual saat ditandai Lunas, transaksi POS, & pesanan marketplace). |
| Tingkat Konversi Pesanan | Jumlah pesanan ÷ jumlah produk diklik hari ini — mengukur seberapa efektif halaman produk mengubah kunjungan menjadi pesanan. |
- Delta ▲/▼ = perubahan relatif vs kemarin (jendela sama); “— baru” berarti kemarin belum ada data pembanding (wajar di hari-hari awal fitur aktif).
- Pengunjung & klik dihitung dari storefront saja — penjualan POS/marketplace menambah Penjualan & Pesanan, tetapi tidak menambah pengunjung.
- Angka menyegar otomatis setiap menit; batas hari mengikuti zona waktu toko (diatur di Pengaturan → Umum).
Status Akun Toko
Toko Anda dapat berada pada salah satu status berikut. Status menentukan akses dashboard, storefront publik, bisa atau tidaknya login, dan keberadaan data.
| Status | Kapan terjadi | Dashboard | Storefront publik | Login pemilik | Data |
|---|---|---|---|---|---|
| Menunggu Aktivasi | Baru daftar paket berbayar, tagihan aktivasi belum dibayar | Terbatas (hanya Tagihan) | Aktif | Bisa | Tersimpan |
| Aktif | Langganan berjalan | Penuh | Aktif | Bisa | Tersimpan |
| Masa Tenggang | Langganan berbayar lewat tanggal berakhir, masih dalam tenggang (default 7 hari) | Terbatas (Tagihan) | Aktif | Bisa | Tersimpan |
| Free (otomatis) | Langganan berbayar habis & lewat tenggang → turun ke paket Free | Penuh (fitur Free) | Aktif | Bisa | Tersimpan |
| Dibatalkan | Tenant membatalkan langganan berbayar | Penuh s/d berakhir | Aktif s/d berakhir | Bisa | Tersimpan |
| Nonaktif (idle) | Paket Free tanpa aktivitas login lebih dari 12 bulan (ada pengingat H-30) | Bisa | Nonaktif | Bisa (aktif lagi saat login) | Tersimpan |
| Ditangguhkan | Ditangguhkan oleh Admin StepyStore | Tidak bisa | Nonaktif | Tidak bisa | Tersimpan |
| Dihapus permanen | Akun ditutup oleh Admin StepyStore | — | — | — | Dihapus |
Langganan & Masa Berlaku
- Paket & siklus: tiap toko berlangganan satu paket dengan siklus bulanan atau tahunan.
- Masa berlaku (kedaluwarsa) ditampilkan di menu Tagihan beserta sisa hari.
- Mulai masa berbayar (paket berbayar baru): jam berbayar mulai saat Go-Live (“Siap Beroperasi”), bukan saat bayar — selama Masa Onboarding (maks 30 hari bulanan / 90 hari tahunan) jam berbayar dipause. Lihat seksi Mode Persiapan.
- Tanggal tagihan berbasis kalender: tagihan mengikuti tanggal mulai (Go-Live untuk paket baru, atau tanggal upgrade) di tiap bulan/tahun. Bila bulan tujuan tak punya tanggal itu (mis. tanggal 31 di Februari), dikunci ke hari terakhir bulan.
- Perpanjangan: membayar tagihan perpanjangan menambah masa aktif dari tanggal kedaluwarsa saat ini (bukan dari tanggal bayar) — perpanjang lebih awal tidak hangus.
- Ubah paket (upgrade): naik ke paket lebih mahal lewat tombol Ubah Paket — bayar sekarang, langsung aktif setelah dikonfirmasi, dengan periode baru + sisa hari paket lama (tak hangus); tanggal tagih berikutnya mengikuti tanggal kalender.
- Ubah paket (downgrade): turun ke paket berbayar lebih murah bersifat terjadwal di akhir periode — tidak ditagih sekarang; paket sekarang tetap jalan hingga habis, lalu perpanjangan memakai harga paket baru. Bisa dibatalkan sebelum berlaku.
- Pembatalan: bersifat berlaku hingga akhir periode — toko tetap aktif sampai masa berlaku habis, lalu turun ke paket Gratis (tidak diperpanjang otomatis).
- Satu tagihan terbuka pada satu waktu: bila masih ada tagihan belum dibayar, sistem tidak membuat tagihan baru.
- Tagihan upgrade tak dibayar: bila tagihan upgrade tidak dibayar sampai lewat jatuh tempo + masa tenggang, tagihan dibatalkan otomatis dan toko tetap di paket saat ini (mis. Gratis) — tidak ada perubahan akses. Anda bisa mengajukan upgrade lagi kapan saja.
Tentang Paket Gratis — tanpa jebakan
Paket Gratis berlaku selama toko Anda aktif — bukan masa coba yang diam-diam dibatasi waktu. Yang membedakan antar-paket adalah kapasitas & fitur (mis. 50 SKU, 1 staf, 1 lokasi gudang, 3 artikel blog, 100 foto produk), bukan batas waktu pemakaian.
- Berlaku selama toko Anda aktif — tidak ada batas waktu pemakaian dan tidak perlu kartu kredit. Toko yang aktif tetap online tanpa biaya.
- Pembeli memesan lewat checkout WhatsApp (tanpa perlu membuat akun), dan stok diperbarui manual lewat Koreksi Stok setelah penjualan. Pencatatan pesanan & pengurangan stok otomatis tersedia mulai paket Starter.
- Hanya toko yang tidak login lebih dari 12 bulan yang storefront-nya dinonaktifkan sementara (setelah pengingat) — data tetap aman dan toko aktif kembali begitu Anda login.
Saat Langganan Berakhir
Bila langganan berbayar berakhir tanpa diperpanjang, sistem mengikuti urutan berikut:
- Masa tenggang (default 7 hari sejak kedaluwarsa): toko tetap aktif penuh untuk pelanggan; dashboard dibatasi ke Tagihan; email pengingat dikirim.
- Setelah masa tenggang: toko otomatis turun ke paket Free — tetap online untuk pelanggan, dengan fitur sesuai paket Free. Tagihan perpanjangan yang belum dibayar ikut dibatalkan. Email pemberitahuan dikirim. Tidak ada data yang dihapus.
- Berhenti sukarela (tombol Berhenti): tanpa masa tenggang & tanpa penguncian — begitu masa berlaku habis, toko langsung turun ke paket Free sesuai janji saat pembatalan.
- Upgrade kembali: gunakan tombol Upgrade Paket di menu Tagihan untuk kembali ke paket berbayar dan membuka fitur lengkap (mandiri, tanpa perlu menghubungi admin).
Penonaktifan karena tidak aktif
- Toko paket Free yang tidak ada aktivitas login (oleh pemilik atau staf) selama lebih dari 12 bulan akan dinonaktifkan storefront-nya (pelanggan melihat “Toko Sedang Tidak Aktif”).
- Pengingat H-30: ±30 hari sebelum dinonaktifkan, kami kirim email pengingat — cukup login sekali untuk tetap aktif.
- Aktif kembali otomatis begitu Anda login ke dashboard — tanpa kehilangan data.
Data & Penyimpanan
- Data toko (produk, kategori, stok & batch, pesanan, pelanggan & alamat, pengaturan, staf, log aktivitas) disimpan di database dan terisolasi per toko.
- Gambar (foto produk, hero/banner, logo, favicon, bukti bayar) disimpan di cloud storage (Cloudflare R2) via CDN, pada folder khusus tiap toko.
- Tagihan & langganan dikelola di sistem billing StepyStore (terpisah dari data operasional toko).
- Retensi: data dipertahankan selama akun ada — termasuk saat langganan nonaktif.
- Pembersihan otomatis: gambar yang diunggah tapi tidak lagi dipakai pengaturan dibersihkan secara berkala agar penyimpanan tetap rapi.
Domain Toko
- Subdomain otomatis: tiap toko mendapat alamat
namatoko.stepystore.comsaat pendaftaran, sudah ber-SSL. Alamat ini selalu aktif sebagai cadangan. - Custom domain (opsional, paket Growth ke atas): domain milik sendiri (mis.
tokosaya.com). Untuk mengaktifkannya, hubungi Admin StepyStore — kami bantu proses verifikasi; di sisi Anda tampil read-only di Pengaturan → Domain. - Setelah custom domain aktif, akses ke subdomain otomatis diarahkan ke custom domain Anda — jadi alamat toko konsisten.
Toko tetap online, apa pun yang terjadi. Bila custom domain Anda bermasalah (mis. DNS/SSL putus atau domain kedaluwarsa di registrar), toko otomatis kembali dilayani lewat subdomain namatoko.stepystore.com, dan aktif lagi otomatis saat domain sehat kembali.
Custom domain adalah fitur paket Growth+. Bila paket turun ke Free/Starter, custom domain dinonaktifkan otomatis dan toko kembali memakai subdomain (data & toko tetap aman); aktif lagi bila Anda upgrade ke Growth+.
Peran Penggunamulai Starter
| Peran | Hak akses |
|---|---|
| Admin | Akses penuh termasuk Pengaturan, Tagihan, dan kelola Staf. |
| Staf | Operasional: produk, stok, pesanan, pembelian/penerimaan, laporan. Tanpa Pengaturan/Tagihan/Staf. |
| Kasir | Terbatas: Dashboard, Produk, Stok, Kedaluwarsa, Pesanan (fokus jualan & pemenuhan). |
Storefront Publik & SEO
- Storefront publik per toko (di subdomain/custom domain) untuk pelanggan berbelanja: katalog produk, keranjang, checkout, akun pelanggan.
- Tema: tema default yang dapat dikonfigurasi (warna aksen, slideshow hero, banner, gambar halaman login pelanggan) lewat Pengaturan → Tampilan Publik. Tema custom dibuatkan tim StepyStore bila diminta.
- SEO otomatis per toko: judul & deskripsi (meta) yang dapat diatur,
robots.txt&sitemap.xmldinamis, kartu pratinjau sosial (OG image), serta data terstruktur (JSON-LD) agar mudah terindeks mesin pencari. - Google Search Console: tiap toko dapat diverifikasi di akun Google milik toko sendiri (metode Tag HTML). Tempel token verifikasi di Pengaturan → Website → bagian SEO; storefront otomatis merender meta tag verifikasinya. Langkah lengkap ada di Panduan → SEO & Google Search Console.
Checkout & Pemesanan
Cara pelanggan menyelesaikan pesanan diatur di Pengaturan → Checkout (satu mode per toko), plus tombol marketplace per-produk:
- Checkout via WhatsApp (semua paket) — tombol beli menyusun pesan berisi rincian pesanan lalu membuka WhatsApp toko Anda (nomor dari tab Kontak). Pembayaran & ongkir dinegosiasi di WhatsApp; pesanan tidak otomatis tercatat di dashboard, dan stok tidak berkurang otomatis — perbarui manual lewat Manajemen Stok → Koreksi Stok setelah penjualan.
- Checkout Lengkap (mulai Starter) — alur penuh di storefront: akun pelanggan → alamat → ongkir → pembayaran. Metode pembayaran di paket Starter hanya Transfer Manual (pelanggan transfer ke rekening toko, lalu Anda tandai lunas). Pembayaran Online otomatis (Midtrans/Tripay — VA/QRIS/e-wallet/kartu, langsung terkonfirmasi) tersedia mulai Growth+. Pesanan tercatat otomatis & stok terkelola. Harga tiap item dihitung ulang di server (harga/diskon terkini) dan pesanan ditolak bila stok tidak mencukupi — anti-overselling. Akun pelanggan (daftar/login) juga hanya tersedia mulai paket Starter.
- Tombol Checkout Marketplace (mulai Starter) — isi tautan produk di Shopee/Tokopedia/TikTok/Blibli pada form produk; storefront menampilkan tombol “Beli di …” yang langsung menuju produk di marketplace tersebut.
Alur lengkap paket Gratis (checkout WhatsApp)
- Pembeli menelusuri katalog & menambah produk ke keranjang — tanpa perlu membuat akun.
- Klik Pesan via WhatsApp → sistem menyusun pesan otomatis (rincian item + total) lalu membuka WhatsApp toko Anda.
- Negosiasi, ongkir, & pembayaran terjadi di WhatsApp — di luar sistem StepyStore. Pesanan tidak tercatat di dashboard.
- Setelah memesan, pembeli boleh mengosongkan keranjang (opsional) — keranjang tersimpan di browser-nya sampai ia ubah sendiri.
- Perbarui stok manual: setelah barang terjual, buka Manajemen Stok → Koreksi Stok → pilih produk → tipe Penyesuaian/Keluar → isi jumlah terjual. Stok sistem & badge ketersediaan di storefront ikut akurat.
Setelah pelanggan checkout (Checkout Lengkap)
- Tanpa wajib daftar akun (guest checkout). Pesanan langsung tercatat di Pesanan & pelanggannya muncul di Pelanggan. Bila pelanggan kemudian mendaftar/login dengan email yang sama, pesanan tamu lamanya otomatis tergabung ke akun & tampil di Riwayat Pesanan-nya.
- Selesai checkout, pelanggan diarahkan ke halaman konfirmasi pesanan (berisi nomor pesanan, rincian, & status). Tautannya permanen — aman dibuka ulang.
- Lacak pesanan kapan saja: pelanggan buka menu Lacak Pesanan (footer storefront, URL
/lacak) → masukkan nomor pesanan + nomor HP → status pesanan & pembayaran tampil.
Pembayaran transfer manual — konfirmasi
- Halaman pesanan menampilkan rekening toko + nominal dan tombol “Konfirmasi & Kirim Bukti via WhatsApp”.
- Pelanggan transfer lalu klik tombol itu → terbuka WhatsApp toko berisi nomor pesanan & nominal, pelanggan melampirkan bukti.
- Anda verifikasi bukti, lalu tandai pesanan Lunas di Pesanan. Status di halaman lacak pelanggan otomatis berubah jadi Lunas.
Pusat Promosi (Diskon & Voucher)mulai Starter
Pusat Promosi (mulai Starter) adalah tempat terpusat mengelola promosi toko. Saat ini tersedia dua menu: Diskon Toko dan Voucher Toko Saya (menu di seksi Pusat Promosi pada sidebar).
Diskon Toko
Satu promo diskon dapat memuat banyak produk sekaligus, dan tiap produk diatur diskonnya sendiri. Cocok untuk toko dengan banyak SKU. Langkahnya:
- Buat Diskon → isi Nama & jadwal (Mulai–Berakhir; boleh dikosongkan agar terus berlaku selama aktif).
- Tambah Produk → pilih produk secara massal lewat pencarian & filter kategori, centang banyak produk (atau “pilih semua hasil filter”) sekaligus.
- Atur diskon tiap produk: persentase (%) atau nominal (Rp). Pakai Perubahan massal untuk menerapkan satu nilai diskon ke produk terpilih / semua produk dalam sekali klik, lalu sesuaikan per produk bila perlu.
- Tiap produk punya tombol Aktif/Nonaktif sendiri; Harga Diskon tampil otomatis. Klik Konfirmasi untuk menyimpan.
- Harga diskon diterapkan otomatis — tampil sebagai harga coret di storefront, keranjang, checkout, & laporan tanpa langkah tambahan.
- Kolom Harga Diskon di form produk bersifat read-only (seperti stok) — ubahlah lewat Diskon Toko, bukan di halaman produk.
- Satu produk = satu diskon aktif: produk yang sudah ada di diskon aktif/terjadwal akan terkunci saat memilih produk untuk diskon baru. Hapus dari diskon lama (atau tunggu berakhir) bila ingin memindahkannya.
- Penjadwalan otomatis: promo terjadwal aktif & berakhir sendiri tepat waktu.
- Status: Aktif, Terjadwal (belum mulai), Berakhir, atau Nonaktif.
Voucher Toko Saya
Pilih salah satu dari 3 jenis voucher saat membuat:
- Voucher Toko — berlaku untuk semua produk toko.
- Voucher Produk — berlaku untuk produk terpilih saja (pilih produknya saat membuat).
- Voucher Terbatas — tidak ditampilkan di storefront; hanya bisa dipakai lewat kode yang Anda bagikan. Cakupannya bisa semua produk atau produk tertentu.
Tiap voucher dikonfigurasi dalam 3 bagian: Rincian Dasar (kode, nama, jadwal), Pengaturan Bonus (tipe %/nominal, nilai, min. belanja, maks. potongan, kuota total, batas per pelanggan), dan Tampilan Voucher & Produk.
- Pengaturan Tampilan: Tampilkan di semua halaman (muncul di halaman depan toko, halaman produk, & checkout) atau Tidak ditampilkan (otomatis jadi kategori Voucher Terbatas — hanya via kode).
- Potongan dihitung dari produk yang berlaku: untuk Voucher Produk / Terbatas-spesifik, potongan & minimal belanja dihitung dari subtotal produk yang masuk daftar voucher saja (bukan seluruh keranjang).
- Syarat & batas: minimal belanja, maksimal potongan (untuk tipe persentase), kuota total, dan batas per pelanggan (berdasarkan nomor HP). Kosongkan untuk tak terbatas.
- Jadwal mulai–berakhir & status (termasuk Kuota Habis). Voucher nonaktif tak bisa dipakai.
- Di storefront/checkout: voucher yang ditampilkan bisa diklik Salin (atau Pakai di checkout). Pelanggan juga bisa mengetik kode. Potongan tampil di ringkasan; total = subtotal − potongan + ongkir. Kuota berkurang saat pesanan dibuat, dikembalikan otomatis bila dibatalkan/refund.
Pengiriman & Ongkirmulai Starter
Untuk Checkout Lengkap (Starter+), atur ongkir otomatis di Pengaturan → Pengiriman. Provider yang dipakai adalah Biteship — satu integrasi untuk hitung ongkir + buat pengiriman + nomor resi (AWB) + lacak otomatis. (RajaOngkir tidak lagi digunakan.)
Semua aksi memproses & mengirim pesanan kini ada di halaman Pesanan (bukan lagi di detail pesanan) — lihat bagian Alur Pesanan & Pemenuhan. Ringkasnya: kurir reguler pakai tombol “Kirim” (booking Biteship otomatis atau input resi manual); kurir instan pakai “Atur Pickup”. Status perjalanan paket diperbarui otomatis (sampai Terkirim) lewat webhook.
Menyiapkan Biteship (cukup sekali simpan)
- Daftar di biteship.com, lalu aktifkan kurir yang ingin dipakai di dashboard Biteship (menu Shipping → Configuration) dan ambil API Key (menu Integrasi → Kunci API).
- Pengaturan → Pengiriman → tempel API Key Biteship. Begitu API Key terisi, field Kota Asal & daftar kurir langsung aktif — tak perlu menyimpan dulu.
- Pilih Kota Asal (gudang) & kurir yang ingin ditawarkan (cari & tambah).
- Lengkapi Info Pengirim (nama, no. HP, alamat lengkap, kode pos asal) — wajib untuk membuat order pengiriman.
- Titik Lokasi Gudang (di Info Pengirim): tandai lokasi toko/gudang di peta. Wajib bila ingin menawarkan kurir instan (Grab/Gojek); kurir reguler tak memerlukannya.
- Salin URL Webhook yang tampil, tempel di dashboard Biteship (Integrasi → Webhook) agar status & resi auto-update.
- Klik Simpan sekali. Uji checkout: pelanggan memilih kurir; Anda proses di halaman Pesanan (Kirim / Atur Pickup).
POS Kasir (Penjualan Offline)mulai Starter
POS Kasir (mulai Starter) memfasilitasi penjualan offline/toko fisik dari dashboard: menu POS Kasir membuka layar kasir fullscreen — cari/scan produk, keranjang, bayar, cetak struk. Transaksi tercatat sebagai pesanan bertipe Offline, langsung Selesai & Lunas, dan stok terpotong otomatis.
Shift kasir (wajib)
- Setiap transaksi kasir berada dalam shift — dialog Buka Shift muncul otomatis saat masuk POS (isi modal awal laci, boleh 0; pilih gudang bila multi-gudang).
- Satu shift aktif per kasir — akuntabilitas uang laci per orang.
- Tutup Shift: hitung uang fisik → sistem membandingkan dengan kas seharusnya (modal awal + penjualan tunai) dan mencatat selisihnya + rekap per metode bayar.
- Riwayat & rekap semua shift ada di menu Sesi Kasir (Admin/Staf).
Transaksi & stok
- Scan barcode (scanner USB/keyboard-wedge) atau ketik nama/SKU — Enter langsung menambah item. Hanya produk published yang bisa dijual.
- Harga mengikuti harga efektif (termasuk Diskon Toko); kasir boleh override harga per item (harga nego). Voucher & diskon nominal bisa diisi di dialog pembayaran.
- Metode bayar: Tunai (kembalian dihitung otomatis), Transfer, E-Wallet/QRIS, Kartu — dicatat manual tanpa gateway.
- Produk ber-batch dipotong otomatis mengikuti FEFO dari gudang shift — layar kasir menampilkan batch mana yang harus diambil (kode + exp) agar fisik sesuai sistem. Transaksi ditolak bila stok batch tidak mencukupi.
- Mode FEFO Ketat (opsional, diaktifkan Admin di halaman Sesi Kasir): kasir wajib memindai barcode batch di dus/karton yang diambil sebelum pembayaran — sistem menolak batch yang bukan urutan FEFO (termasuk split antar-batch). Menjamin barang fisik yang keluar benar-benar batch kedaluwarsa terdekat.
- Kuota pesanan bulanan paket ikut menghitung transaksi POS.
Struk & koreksi
- Struk dicetak ke printer thermal 58mm (auto-print; bisa cetak ulang dari Sesi Kasir).
- Void (khusus Admin, hari yang sama): membatalkan transaksi salah input — stok, batch, dan kuota voucher dikembalikan otomatis; wajib isi alasan. Retur lintas-hari dicatat lewat proses barang masuk terpisah.
Integrasi Marketplace (TikTok Shop, Tokopedia, Shopee & Blibli)
Integrasi Marketplace menghubungkan toko marketplace Anda — TikTok Shop, Shopee, dan Blibli — ke StepyStore agar stok, pesanan, & omzet tersinkron otomatis. Satu integrasi TikTok Shop sudah mencakup Tokopedia untuk pasar Indonesia (lewat TikTok Shop Partner). Semua kanal dikelola dari satu dashboard dengan alur yang sama.
Ketersediaan & masa uji coba
- Penuh mulai paket Growth (Growth, Professional, Enterprise).
- Paket Starter dapat mencoba 90 hari (dihitung sejak tanggal daftar toko). Setelah masa uji habis, upgrade ke Growth+ untuk melanjutkan.
- Paket Gratis tidak termasuk uji coba Integrasi Marketplace — paket Gratis belum memiliki modul Pesanan & checkout lengkap yang menjadi prasyarat sinkronisasi pesanan marketplace.
Prinsip: StepyStore = sumber kebenaran stok
- Master SKU jadi pengikat: tiap SKU di marketplace diikat ke produk/varian StepyStore. Setelah terikat, stok & pesanan tersambung otomatis.
- Sinkron stok real-time: setiap perubahan stok di StepyStore (penjualan, koreksi, penerimaan) otomatis dikirim ke marketplace — tanpa perlu membuka dashboard. Tombol Sinkronkan Stok hanya untuk rekonsiliasi manual sesekali.
- Stok yang dikirim = total tersedia lintas semua gudang; pengurangan pesanan marketplace diambil dari gudang pemenuhan yang Anda pilih saat menghubungkan toko.
Impor Katalog dari Marketplace (migrasi produk)
Sudah berjualan di Shopee atau TikTok Shop dan ingin memindahkan katalognya ke StepyStore? Pada halaman koneksi, klik Impor Katalog — sistem menarik produk dari kanal (nama, deskripsi, harga, foto, & varian) lalu membuat produk StepyStore otomatis sekaligus mengikatnya ke kanal. Tinggal pilih produk di pratinjau, lalu Impor.
- Hanya produk aktif/tayang yang ditarik (produk nonaktif/draf/dihapus di kanal dilewati).
- Produk baru dibuat berstatus Draft — Anda tinjau (nama/kategori/foto) lalu Publish. Foto disimpan di server Anda (dikompres otomatis).
- SKU yang sudah ada (cocok Master SKU) tidak dibuat ulang — hanya ditautkan ke kanal; data produk Anda tidak diubah. Pratinjau otomatis mencentang hanya yang belum ada.
- Produk bervarian (mis. ukuran/warna) menjadi satu produk dengan beberapa varian, masing-masing punya SKU & harga sendiri.
- Stok tidak diimpor — produk hasil impor berstok 0; isi stok lewat Stok Opname / Stok Masuk (Batch) setelahnya. Impor juga mematuhi kuota produk paket.
Push ke Marketplace (buat listing dari produk StepyStore)
Kebalikan dari Impor Katalog: sudah punya produk di StepyStore dan ingin menjualnya di marketplace? Di halaman Produk, centang produk lalu klik Push ke Marketplace — StepyStore membuat listing di kanal sebagai draf (tidak langsung tayang) lengkap dengan nama, deskripsi, harga, foto, & berat, sekaligus mengikat SKU-nya ke kanal.
- Selalu dibuat sebagai draf. StepyStore tidak menayangkan listing secara langsung — Anda meninjau & menayangkannya sendiri di Seller Center kanal. Ini disengaja agar aman dari salah tayang dan Anda bisa melengkapi detail khas kanal (kategori/atribut) sebelum tayang.
- Hanya produk aktif (Published) yang lengkap — punya nama, harga, berat, & minimal satu foto — yang diproses; produk yang belum lengkap dilewati dengan keterangan.
- SKU otomatis tertaut. Begitu Anda tayangkan draf di Seller Center, sinkron stok & pesanan langsung aktif — tanpa perlu mengikat SKU manual lagi.
- Anti-ganda. Produk yang sudah terhubung ke kanal tujuan otomatis dilewati (tidak dibuat listing kembar). Dialog menampilkan di depan berapa produk yang akan dibuat dan berapa yang dilewati.
- Ketersediaan: mulai paket Growth. Saat ini mendukung TikTok Shop untuk produk tunggal (kanal & produk bervarian menyusul).
Naikkan Produk (Boost) — Shopee
Di halaman koneksi Shopee, tab Naikkan Produk: pilih hingga 5 SKU yang ingin “dijaga selalu naik” ke atas hasil pencarian toko (fitur organik gratis Shopee, berlaku ~4 jam per boost).
- Naik ulang otomatis tiap 4 jam. Anda cukup memilih produknya sekali — sistem menaikkannya kembali secara berkala tanpa perlu Anda ulang manual.
- Maksimum 5 produk aktif sekaligus (batas kanal). Hapus salah satu untuk mengganti.
- Hanya SKU yang sudah terikat ke Shopee yang bisa dinaikkan. Status & hitung mundur boost berikutnya tampil per produk.
Sinkronisasi stok yang aman saat pertama menghubungkan
- Pesanan lama tidak mengubah stok. Saat toko pertama terhubung, pesanan yang dibuat di marketplace sebelum toko terhubung hanya dicatat untuk laporan & omzet — tidak mengurangi stok. Barangnya sudah keluar (atau tidak pernah keluar, mis. dibatalkan) sebelum sinkronisasi dimulai, sehingga memotong stoknya akan keliru. Pesanan seperti ini diberi catatan penanda “pesanan historis sebelum integrasi”.
- Hanya pesanan baru yang menyesuaikan stok. Pesanan yang masuk setelah toko terhubung otomatis mengurangi stok sesuai jumlahnya.
- Pesanan batal tidak mengurangi stok. Pesanan yang dibatalkan — termasuk yang belum dibayar lalu dibatalkan otomatis oleh marketplace — tidak memotong stok. Bila sebuah pesanan sempat mengurangi stok lalu dibatalkan, stoknya dikembalikan otomatis (sekali, tidak dobel).
SOP agar stok tetap rapi
- Samakan stok sebelum menghubungkan. Pastikan stok di StepyStore sudah sesuai hitungan fisik (lakukan Stok Opname bila perlu) sebelum menghubungkan marketplace. Sejak terhubung, StepyStore menjadi acuan stok untuk semua kanal.
- Kelola stok dari satu tempat. Setelah terhubung, ubah stok hanya dari StepyStore (penjualan, penerimaan, koreksi, opname). Hindari mengubah stok secara manual di Seller Center agar tidak terjadi selisih.
- Bila stok fisik berbeda dari sistem, samakan lewat Stok Opname ke hitungan fisik — bukan menebak. Telusuri penyebabnya di Laporan → Lalu Lintas Stok: filter per SKU, per staf pada kolom Oleh, dan ringkasan Koreksi Stok per Alasan. Selisih umumnya berasal dari operasional harian (mis. penjualan kasir/offline yang belum diinput), bukan dari sinkronisasi.
Pesanan & omzet
- Pesanan marketplace masuk otomatis (webhook) & tercatat di halaman Pesanan dengan badge kanal, serta di Laporan → Penjualan (omzet per kanal).
- Omzet bersih (settlement) — nilai yang benar-benar Anda terima setelah dipotong komisi platform & biaya transaksi — terisi otomatis setelah pesanan settle (pasca-kirim/selesai).
Pemenuhan terpusat di halaman Pesanan
Seluruh pemenuhan pesanan marketplace dilakukan dari StepyStore — bukan dari Seller Center. Di halaman Pesanan, kartu pesanan berbadge kanal menyediakan Atur Pengiriman (Jemput/Drop-off), Cetak Label, dan Lacak Pesanan (di detail pesanan). Seller Center kanal cukup Anda buka untuk tarik dana, iklan, & promosi.
- Status pesanan mengikuti lifecycle kanal: Belum Bayar → Ditahan → Siap Kirim → Menunggu Kurir → Dikirim → Terkirim → Selesai. Status diperbarui otomatis lewat webhook.
- Tombol Atur Pengiriman hanya muncul saat status Siap Kirim (paket sudah terbit). Saat masih Ditahan/Belum Bayar, muncul penanda “Belum siap dikirim”.
- Cetak Label: untuk pengiriman Instan/SPX (Shopee) label bisa dicetak lebih awal; untuk pengiriman reguler label tersedia setelah atur kirim & sebelum kurir menjemput — di luar rentang itu label memang tidak bisa dicetak (aturan kanal). Label Shopee tersedia dalam format A6 thermal.
Data pelanggan per kanal
Pelanggan dari pesanan marketplace muncul di halaman Pelanggan pada tab tiap kanal — TikTok Shop & Tokopedia, Shopee, dan Blibli (terpisah dari tab Storefront). Demi privasi, marketplace menyamarkan nama & kontak pembeli; StepyStore mengelompokkannya otomatis per akun pembeli (ID unik) sehingga Anda tetap dapat melihat jumlah pesanan & total belanja tiap pelanggan.
Langkah menghubungkan & mengikat SKU ada di Panduan → Integrasi Marketplace.
Portal Direct Salesmulai Professional
Definisi. Modul untuk toko dengan tim direct sales (tenaga penjualan lapangan). Tiap sales punya akun login & portal sendiri untuk meng-input pesanan atas nama pelanggan; pesanan masuk ke alur Pesanan/Gudang yang sama seperti pesanan biasa. Tersedia mulai paket Professional.
- Sakelar aktif/nonaktif. Modul bisa dinyalakan/dimatikan per-toko di Pengaturan → tab Umum → “Modul Direct Sales” (default aktif). Saat Nonaktif, menu Direct Sales disembunyikan dan seluruh akses portal/aksi sales ditolak — berguna bagi toko yang tak memakai tim direct sales. Sakelar hanya muncul pada paket yang memiliki fiturnya (Professional+).
- Akun sales = pengguna dengan peran direct sales + profil (ID DS acak berupa kombinasi huruf & angka, mis. DS-K7MP9Q — bukan nomor urut, agar jumlah tim tak mudah ditebak; area, supervisor, target bulanan). Dibuat oleh Admin/Pemilik di menu Direct Sales → Tim Direct Sales. Saat login, akun ini hanya melihat portal sales (Beranda, Buat Pesanan, Pesanan Saya) — bukan menu operasional toko.
- Atribusi pesanan. Pesanan yang dibuat sales ditandai kanal Direct Sales dan tertaut ke ID sales pembuatnya, sehingga performanya terhitung. Pesanan tetap tampil di menu Pesanan untuk diproses Gudang seperti biasa.
- Kontrol stok. Sales hanya bisa memesan sesuai stok tersedia di gudang; jumlah melebihi stok ditolak. Stok dipotong saat pesanan dibuat (mekanisme sama dengan pesanan manual/storefront, anti-oversell).
- Dasar performa. Omzet sales dihitung dari pesanan berstatus Selesai (sampai ke pelanggan). Metrik: omzet terealisasi, pesanan berjalan, nilai rata-rata (AOV), dan % pencapaian target bulanan. Supervisor/Pemilik melihat leaderboard seluruh tim di Direct Sales → Performa Tim.
- Siklus akun. Menonaktifkan akun sales (status Nonaktif) mencabut sesinya (logout paksa) & memblokir input pesanan. Menghapus akun tidak menghapus riwayat pesanannya (atribusi dilepas) agar omzet toko tetap utuh. Reset kata sandi juga memaksa sales login ulang.
Modul Curah & Repack (Add-on)
Modul untuk toko yang membeli komoditas dalam kemasan besar (beras karungan 50kg, gula, minyak, pakan) lalu menjualnya kembali sebagai kemasan eceran (kg/liter) dan eceran timbang dari bak. Semua lalu lintas stok, HPP, dan selisih (susut) tercatat otomatis.
Ketersediaan (add-on berbayar)
- Dibeli terpisah di menu Add-on — langganan bulanan/tahunan sendiri, di luar paket utama. Minimal paket Starter.
- Aktif otomatis setelah pembayaran terkonfirmasi (maksimal ±5 menit). Menu Curah & Repack lalu muncul di sidebar.
- Saat masa add-on habis: menu & fitur nonaktif, tetapi seluruh data tetap tersimpan — aktif kembali begitu diperpanjang. Perpanjangan menumpuk sisa hari.
Konsep: induk & turunan
- Produk induk curah = produk kemasan besar (karung 50kg). Modelkan per JENIS/GRADE yang Anda pajang ke pelanggan (mis. Beras Medium / Super / Premium 50kg), bukan per merek. Merek yang berbeda-beda tiap belanja diisi di kolom “Merek” saat penerimaan (khusus produk curah) — harga modal grade otomatis dirata-rata, dan rekapnya tampil di Riwayat Pembelian per Merek. Karung utuh juga bisa dijual.
- Produk turunan = produk kemasan eceran hasil kemas ulang (2,5kg, 5kg, 10 liter, dst.) — masing-masing produk berdiri sendiri dengan SKU, harga, foto, dan halaman storefront sendiri, sehingga bisa dijual online maupun offline (POS).
- Bak eceran = turunan khusus untuk jual timbang per kg di POS Kasir (pembeli bisa beli 1,5 kg). Maksimal satu bak per induk.
- Kemasan literan dikonversi otomatis ke kg memakai rasio kg/liter yang Anda atur per induk (beras ±0,80 kg/L).
Aturan sistem
- Induk & turunan wajib produk tanpa varian; turunan tidak memakai batch — jejak batch ada di sesi repack & riwayat mutasi.
- Stok & harga modal induk diisi lewat penerimaan: Penerimaan Barang (paket Growth+) atau Stok Masuk (Batch) di menu Produk. Induk menjadi ber-batch (FEFO) bila saat terima diisi Nomor Batch atau tanggal kedaluwarsa; jika tidak, non-batch (rata-rata saja).
- Wajib isi harga beli saat penerimaan. HPP/kg induk baru terisi setelah barang masuk berharga. Membongkar sebelum itu membuat HPP kemasan Rp0 & laba tidak akurat — sistem memberi banner peringatan di draft.
- Stok turunan hanya bertambah lewat Sesi Repack (bukan pembelian). Bongkar butuh stok induk mencukupi — posting ditolak bila kurang.
- HPP turunan dihitung otomatis: isi kg kemasan × HPP/kg induk (harga modal karung ÷ isi kg), digabung rata-rata bergerak bila sudah ada stok lama. Riwayatnya tercatat di Laporan Harga Modal (sumber repack).
- Produk turunan lahir berstatus Draft — tidak muncul di storefront maupun POS Kasir sampai diubah ke Aktif (termasuk bak eceran).
- Susut = selisih input − output saat bongkar + penyesuaian minus dari Stok Opname pada keluarga curah. Lihat Laporan → Susut (kg & rupiah).
- Sesi yang sudah diposting tidak bisa diubah. Koreksi: Void (hanya hari yang sama, oleh Admin, dan selama hasil repack belum terjual) atau Stok Opname.
Add-on & masa langganan paket
- Add-on Curah & Repack berjalan mandiri dengan masa berlakunya sendiri, terpisah dari paket langganan (Starter/Growth/dst).
- Saat masa tenggang paket (langganan berakhir, belum diperpanjang): dashboard dikunci ke halaman Tagihan, jadi semua modul—termasuk Curah & Repack—tak bisa dibuka sementara. Storefront tetap online. Perpanjang paket untuk memulihkan akses.
- Bila paket turun ke Gratis (tenggang lewat): add-on tetap aktif sampai masa add-on-nya sendiri habis — modul Curah & Repack tetap bisa dipakai walau di paket Gratis. Terima stok tetap bisa lewat Stok Masuk (Batch) (isi kolom Merek). Yang hilang adalah fitur paket-nya (mis. Penerimaan Barang/Pembelian di Growth, atau modul Pesanan di Starter).
- Saat add-on-nya sendiri habis: menu Curah & Repack nonaktif (maks 5 menit), data tetap aman. Untuk beli/perpanjang add-on lagi, paket harus minimal Starter — bila sedang di Gratis, upgrade paket dulu baru perpanjang add-on.
Langkah pemakaian ada di Panduan → Curah & Repack.
Impor & Ekspor Produk (CSV/Excel)
Kelola banyak produk sekaligus lewat berkas: Produk → Import (unggah) dan tombol Export CSV (unduh). Mendukung CSV & Excel (.xlsx), maksimal 5 MB dan 2.000 baris per unggahan (katalog lebih besar → pecah menjadi beberapa berkas).
Export CSV (unduh katalog)
Tombol Export CSV di halaman Produk mengunduh seluruh produk dengan kolom yang sama persis dengan format impor. Gunanya: cadangan (backup) dan edit massal — unduh, ubah di Excel, lalu impor lagi dengan mode update. Berkas memakai BOM UTF-8 agar aksara Indonesia tampil benar di Excel.
Kolom berkas
| Kolom | Wajib? | Keterangan |
|---|---|---|
| name | Wajib | Nama produk. |
| price | Wajib | Harga jual (angka). |
| sku | Opsional | Master SKU. Kosongkan → dibuat otomatis (unik). Tidak bisa diubah setelah dibuat. |
| barcode | Opsional | Kode barcode (EAN/UPC). Dilewati bila sudah dipakai produk lain (tak memblokir baris). |
| brand | Opsional | Merek produk. |
| unit | Opsional | Satuan (pcs, dus, kg, …). Default: pcs. |
| cost_price | Opsional | Harga modal awal. Selanjutnya diperbarui otomatis (rata-rata bergerak) saat barang masuk. |
| category_name | Opsional | Nama kategori. DIBUAT OTOMATIS bila belum ada. |
| status | Opsional | draft atau published (default draft). |
| description, tags | Opsional | Deskripsi & tag (tags dipisah koma). |
| weight, length, width, height | Opsional | Berat (gram) & dimensi (cm) untuk ongkir. |
| image_url_1..3 | Opsional | Link foto utama (1) & tambahan (2,3). |
Yang TIDAK diimpor (dikelola modul lain)
- Stok — tambahkan lewat Stok Masuk (Batch) / Penerimaan Barang agar batch & kedaluwarsa tercatat.
- Harga diskon (sale_price) — diatur lewat Pusat Promosi → Diskon Toko (otomatis diterapkan ke produk).
- Varian — produk varian diimpor sebagai produk biasa dulu, lalu atur opsi & varian-nya di Tabel Varian (Edit Produk).
Mode “Update produk jika SKU sudah ada”
Aktifkan toggle ini agar baris dengan SKU yang sudah ada memperbarui produk tersebut (bukan ditolak). SKU sendiri tidak berubah. Bila kolom cost_price diisi, harga modal diperbarui & tercatat di Laporan → Harga Modal (sumber “Import CSV”); bila dikosongkan, harga modal lama dipertahankan.
Koreksi Stok & Terima Retur
Ada empat jalur mengubah stok di Manajemen Stok, masing-masing untuk kondisi berbeda:
- Stok Masuk (Batch) — barang masuk baru (beli dari supplier). Wajib lewat sini agar batch & kedaluwarsa tercatat (dipakai FEFO).
- Terima Retur — barang dikembalikan pelanggan. Pilih Kondisi tiap barang: Layak Jual (masuk kembali jadi stok) atau Rusak/Tak Layak (dicatat sebagai kerugian retur, stok jual tak bertambah). Tidak mengubah Harga Modal. (khusus Admin/Super Admin)
- Koreksi Stok — hanya mengurangi stok karena kejadian di dalam gudang (bukan retur): barang rusak/pecah saat penyimpanan (mis. terkena rayap/lembap), hilang/susut, kedaluwarsa dibuang, koreksi selisih hitung, atau sampel/pemakaian internal. Wajib pilih alasan (tercatat siapa·kapan·alasan). (khusus Admin/Super Admin)
- Stok Opname — hitung fisik banyak produk terstruktur → posting selisih (naik/turun). (mulai Starter)
Status Stok: Menipis & Habis
Sistem menandai produk yang perlu perhatian agar Anda cepat restok:
- Habis — stok produk 0.
- Menipis — stok masih ada tetapi sudah menyentuh/di bawah ambang minimum.
Penanda ini muncul di beberapa tempat:
- Dashboard — kartu Total Produk menampilkan chip “N menipis”/“N habis” (paket berbayar); pada paket Gratis jadi kartu Stok Menipis & Stok Habis tersendiri. Klik menuju daftar produk terkait.
- Daftar Produk — badge Stok Menipis/Habis di bawah angka stok, dan kartu ringkasan Stok Habis bisa diklik untuk memfilter.
- Manajemen Stok — status per produk (Menipis/Habis) beserta filternya.
Penerimaan Barang: Dua Jalur
Ada dua jalur mencatat barang masuk baru (menambah stok sekaligus membuat batch & barcode). Keduanya menulis ke data inti yang sama (stok, batch, kedaluwarsa/FEFO, riwayat mutasi), jadi hasilnya setara & saling kompatibel — yang berbeda hanya kelengkapan proses & metadata asal barang.
- Stok Masuk (Batch) (semua paket) — jalur cepat tanpa dokumen. Buka Manajemen Stok → Stok Masuk (Batch), pilih banyak produk sekaligus, isi jumlah + tanggal kedaluwarsa, simpan. Stok & batch langsung jadi.
- Penerimaan Barang (mulai Growth) — jalur lengkap berdokumen. Buat dokumen penerimaan (Draft) dengan data supplier, no. invoice, upload file invoice/surat jalan, bisa dari Purchase Order; baru Selesaikan untuk menambah stok.
Persamaan
- Sama-sama menambah stok jual dan membuat batch (nomor batch, barcode, sisa qty, gudang).
- Sama-sama mengisi Kedaluwarsa/FEFO, Lihat Batch, dan Riwayat Mutasi (tercatat sebagai “Masuk”).
- Sama-sama mendukung varian dan multi-gudang (pilih gudang tujuan).
- Sama-sama memperbarui harga modal (rata-rata bergerak) bila harga beli/unit diisi saat barang masuk.
Perbedaan
| Aspek | Stok Masuk (Batch) | Penerimaan Barang |
|---|---|---|
| Nomor batch/lot | Otomatis (LOT-…) | Bisa ketik nomor lot asli dari supplier (lebih akurat untuk FEFO & penarikan) |
| Barcode | Barcode batch selalu dibuat | Generate opsional; bisa disimpan ke barcode master produk saat Selesaikan |
| Data supplier & dokumen | Hanya catatan teks | Supplier, no. invoice, upload file invoice/surat jalan |
| Tahap koreksi | Langsung jadi saat Simpan | Draft dulu (edit/koreksi) → stok bertambah saat Selesaikan |
| Purchase Order | Tidak terhubung PO | Bisa dari PO → update qty diterima & status PO (terima sebagian) |
| Cetak label | Tidak ada cetak per-dokumen | Halaman Cetak Label barcode semua item (A4) |
| Ketersediaan | Semua paket | Mulai paket Growth |
Harga Modal & HPP
Ada dua jenis angka biaya yang sering tertukar. Memahami bedanya penting agar laporan laba akurat.
- Harga Modal (produk) — di form Tambah/Edit Produk (“Harga Modal”). Ini angka acuan per produk yang dipakai menghitung HPP & laba di Laporan Keuangan.
- Harga Satuan / Harga Modal per unit (saat barang masuk) — di Stok Masuk (Batch), Penerimaan Barang, dan Purchase Order. Ini harga beli pada kedatangan itu (boleh beda tiap kali belanja).
Bagaimana keduanya tersambung (rata-rata bergerak)
Setiap kali Anda memasukkan barang dengan harga beli terisi (lewat Stok Masuk Batch atau Penerimaan Barang), sistem otomatis memperbarui Harga Modal produk memakai metode rata-rata bergerak (weighted moving average):
- Cocok saat harga beli supplier sering naik: biaya stok lama (yang dibeli lebih murah) & barang baru dibaurkan, sehingga laba mencerminkan biaya rata-rata stok yang benar-benar Anda pegang.
- Anda tidak perlu mengisi Harga Modal produk manual lagi — cukup isi harga beli saat barang masuk, sistem yang menghitung.
Melacak perubahan harga (Laporan → tab Harga Modal)
Setiap perubahan harga modal dicatat dan bisa dilacak di Laporan → tab Harga Modal, lengkap dengan kolom: Sumber, Qty Masuk, Harga Beli (harga kedatangan itu), Modal Sebelum, Modal Sesudah (rata-rata yang dipakai laporan), dan Δ Modal (% naik/turun). Bisa dicari per produk, difilter periode, dan diekspor CSV. Sumber perubahan bisa berupa:
- Stok Masuk (Batch) & Penerimaan Barang — saat barang masuk dengan harga beli terisi.
- Edit Manual — saat Anda mengubah Harga Modal sendiri di form produk (lihat di bawah).
Mengubah harga modal manual (mis. supplier umumkan kenaikan sebelum Anda beli)
Di Edit Produk, field Harga Modal kini dikelola otomatis (read-only). Untuk menyetel sendiri — misalnya supplier memberi tahu kenaikan harga lebih awal sebelum Anda membeli — aktifkan toggle “Ubah manual”, isi nilainya, lalu simpan. Perubahan itu langsung berlaku & tercatat di Laporan Harga Modal sebagai sumber “Edit Manual”.
Pembelian: Supplier, Penerimaan Barang & Hutang Dagang
Modul Pembelian mencatat pengadaan barang dari supplier secara menyeluruh — mulai dari data pemasok, pesanan pembelian, penerimaan barang beserta faktur, hingga hutang dagang yang terbentuk otomatis. Tersedia mulai paket Growth.
Alur singkat
Supplier (data pemasok) → Purchase Order (pesanan, opsional) → Penerimaan Barang (barang datang + faktur) → Hutang Dagang (tagihan yang harus dibayar) → Pembayaran (lunas / cicil).
1. Supplier & Termin Pembayaran
Di menu Supplier, simpan data tiap pemasok (nama, kontak, alamat) beserta Termin Pembayaran:
- Tunai / COD — dibayar saat barang diterima. Hutang dagang yang terbentuk otomatis berstatus Lunas pada hari itu.
- Tempo (kredit N hari) — dibayar belakangan. Sistem menghitung tanggal jatuh tempo = tanggal terima + jumlah hari yang Anda tetapkan.
2. Penerimaan Barang & Rincian Faktur
Di halaman Penerimaan Barang, buat dokumen penerimaan (isi supplier & no. faktur), tambahkan produk yang datang, lalu Selesaikan. Saat menambah tiap produk, tersedia isian yang membuat pencatatan sesuai faktur asli:
- Qty Dibayar — jumlah unit yang Anda bayar.
- Harga Kotor / Unit — harga satuan di faktur (menerima 2 angka desimal, mis. 44.504,50).
- Diskon % — potongan harga untuk produk itu (dari faktur). Menentukan harga bersih (net) per unit.
- Qty Bonus (produk sama) — unit gratis dari produk yang sama (mis. beli 60 gratis 4). Menambah stok dan menurunkan harga modal karena total biaya dibagi ke lebih banyak unit.
- Centang “Bonus” — untuk produk gratis yang beda jenis/ukuran (mis. beli air 330ml dapat bonus 600ml). Barang masuk stok tanpa biaya, dan harga modal rata-rata produk bonus itu ikut turun.
3. Rincian Keuangan Faktur (PPN, diskon, cashback, total)
Pada kartu Rincian Invoice Supplier, lengkapi angka di level faktur:
- PPN (%) — tarif pajak di faktur (mis. 11). Untuk toko non-PKP (tidak mengkreditkan PPN), PPN otomatis masuk ke harga modal. Untuk toko PKP, centang “Toko PKP” agar PPN tidak masuk harga modal (karena bisa dikreditkan).
- Diskon Invoice (Rp) — potongan di level faktur yang tidak terikat produk tertentu (mis. diskon global/pembulatan). Mengurangi total tagihan, tidak mengubah harga modal.
- Cashback / Rebate (Rp) — potongan dari supplier (mis. karena mencapai target penjualan). Mengurangi total tagihan, tidak mengubah harga modal.
- Total Invoice (Rp) — dihitung otomatis (Subtotal − Diskon + PPN − Cashback). Kosongkan untuk memakai hitungan otomatis; isi hanya bila ingin menyamakan persis dengan total di faktur fisik (mis. pembulatan).
4. Harga Modal Otomatis (rata-rata bergerak)
Saat penerimaan Diselesaikan, harga modal tiap produk diperbarui otomatis dengan metode rata-rata bergerak — memperhitungkan harga beli net, PPN (bila non-PKP), serta unit bonus/gratis (yang menurunkan modal). Perubahan ini langsung tercermin di:
- Harga & Profitabilitas → kolom Harga Modal & margin per SKU.
- Harga & Profitabilitas → Riwayat Harga Modal → jejak tiap perubahan (Harga Beli, Modal Sebelum/Sesudah, Δ Modal), dengan sumber “Penerimaan Barang”.
- Laporan laba (HPP) — sehingga laba tetap akurat di semua kanal (Toko, POS, Marketplace).
5. Hutang Dagang Otomatis
Begitu penerimaan Diselesaikan dan supplier terisi, sistem otomatis membuat Hutang Dagang senilai Total Invoice, mengikuti termin supplier:
- Tunai / COD → langsung berstatus Lunas.
- Tempo → berstatus Belum Bayar dengan tanggal jatuh tempo; bisa dibayar penuh atau dicicil, dan riwayat pembayaran tercatat.
Di halaman Hutang Dagang, empat kartu ringkasan memudahkan pemantauan:
- Sisa Hutang = yang masih harus dibayar (total − sudah dibayar). Rp0 berarti tidak ada hutang berjalan (mis. semua COD sudah lunas).
- Total Tagihan = seluruh nilai faktur (termasuk yang sudah lunas) — nilai kumulatif, bukan sisa hutang.
- Sudah Dibayar dan Jatuh Tempo (nilai yang lewat tempo & perlu segera dibayar).
Halaman Penerimaan Barang & Hutang Dagang dilengkapi pencarian, filter rentang tanggal, halaman (pagination), dan Export CSV untuk kebutuhan rekap & audit.
Stok Tertaut
Fitur untuk menjual satu stok fisik sebagai beberapa SKU berbeda dengan harga & harga modal masing-masing. Contoh umum depot air galon: satu persediaan galon dijual sebagai “Galon + Isi”(galon baru) dan sebagai “Isi Ulang” (tukar/refill) — keduanya mengambil dari stok fisik yang sama.
Konsep: produk sumber & produk tertaut
- Produk sumber = produk yang memegang stok fisik sebenarnya (mis. Galon + Isi).
- Produk tertaut = SKU lain yang stoknya mengikuti produk sumber (mis. Isi Ulang). Produk tertaut punya harga jual & harga modal sendiri, sehingga margin tiap cara jual tercatat benar.
- Rasio = berapa unit sumber yang terpakai per 1 penjualan produk tertaut (galon = 1).
Cara mengatur
- Buat dua produk terpisah, mis. “Galon 19L + Isi” (sumber) dan “Isi Ulang Galon 19L” (tertaut), masing-masing dengan harga jual & harga modalnya.
- Di halaman Produk, buka menu (⋮) pada produk tertaut → Atur Stok Tertaut → pilih produk sumber & isi rasio → Simpan.
- Produk tertaut lalu diberi badge “Tertaut” pada daftar Produk.
Cara kerja stok
- Menjual produk tertaut otomatis mengurangi stok produk sumber (× rasio) — berlaku di POS Kasir, storefront, dan marketplace, sehingga stok yang tampil selalu sama dengan stok fisik dan aman dari kelebihan jual (oversell).
- Pembatalan/void mengembalikan stok ke produk sumber secara otomatis.
- Stok produk tertaut selalu mencerminkan ketersediaan produk sumber (bukan stok terpisah).
Di mana produk tertaut ditampilkan
- Ditampilkan di: POS Kasir (untuk dijual), halaman Produk (untuk konfigurasi), Harga & Profitabilitas, dan Penerimaan Barang (untuk mencatat harga modal pembelian produk tertaut, mis. isi ulang).
- Disembunyikan dari modul yang mengelola stok fisik — Manajemen Stok, Stok Masuk, Koreksi Stok, Transfer Stok, dan Stok Opname — karena produk tertaut tidak memiliki stok sendiri (semua operasi stok dilakukan pada produk sumber). Ini mencegah kebingungan “stok ganda”.
- Bila produk tertaut hanya dijual offline, gunakan menu (⋮) → Sembunyikan dari Storefront agar tidak muncul di toko online (badge “Offline saja”).
Aturan sistem
- Produk sumber & produk tertaut wajib produk sederhana (tanpa varian) dan tanpa batch.
- Satu produk sumber boleh memiliki beberapa produk tertaut, tetapi tautan tidak boleh berantai (produk tertaut tak boleh menjadi sumber produk lain).
- Menyesuaikan stok (Stok Masuk/Koreksi/Transfer/Opname) dilakukan pada produk sumber.
- Penerimaan Barang produk tertaut: saat menerima produk tertaut (mis. beli isi ulang dari supplier), harga modalnya dicatat pada SKU tertaut itu sendiri, sedangkan stok otomatis dialihkan ke produk sumber. Sehingga harga modal isi ulang benar dan harga modal produk sumber (galon+isi) tidak ikut tercampur.
Langkah pemakaian ada di Panduan → Stok Tertaut.
Harga & Profitabilitas
Tampilan menyeluruh (helicopter view) harga jual & margin nyata tiap SKU di semua kanal — Toko (storefront), Kasir (POS), dan Marketplace — sekaligus melacak perubahan harga modal. Berguna sebagai dasar keputusan harga, promo, dan budget iklan.
Ketersediaan
- Tersedia mulai paket Growth (satu modul dengan Integrasi Marketplace).
Tab per kanal
- Storefront & Offline (POS) — selalu tersedia. Menampilkan harga toko + margin nyata dari pesanan yang sudah dibayar pada kanal itu.
- Shopee, TikTok & Tokopedia — tampil bila kanalnya terhubung. Blibli & Lazada menyusul.
- Riwayat Harga Modal — jejak perubahan harga modal (WAC) tiap produk.
Kolom & artinya
- Harga Modal — dapat diedit langsung (inline) di tabel; tersimpan sebagai sumber tunggal & tercatat di Riwayat Harga Modal.
- Harga Kanal / Harga Toko — harga jual saat ini; bila ada diskon, harga normal tampil dicoret di bawahnya.
- Potongan Kanal — total potongan dari harga jual. Untuk marketplace dapat diklik untuk melihat rincian: Komisi & Biaya Platform (wajib) vs Voucher/Promo (bisa Anda atur — dasar budget promo).
- Est. Nett Diterima — rata-rata nilai bersih nyata per unit dari pesanan yang sudah selesai (settlement aktual per SKU untuk marketplace; realisasi pesanan setelah diskon/voucher untuk Toko/POS). SKU tanpa pesanan yang relevan ditampilkan “—”.
- Margin — Est. Nett Diterima − Harga Modal (rupiah & persen); hijau = untung, merah = rugi.
Aksi (kanal marketplace)
- Sinkron Harga — tarik harga listing terkini dari kanal.
- Edit Harga — ubah harga dasar SKU langsung ke kanal. Khusus Shopee: bila sedang ada diskon/harga coret aktif, perubahan diblokir kanal (nonaktifkan diskonnya dulu di Seller Center) — kebijakan anti-diskon-palsu. TikTok/Tokopedia: instan.
- Diskon (harga coret) — khusus TikTok/Tokopedia: buat harga coret secara instan (harga bruto tercoret, harga promo sebagai harga jual). Shopee tidak menyediakan diskon instan di sini karena kebijakan masa tunggunya.
Langkah pemakaian ada di Panduan → Harga & Profitabilitas.
Stok Opnamemulai Starter
Stok Opname (mulai Starter) adalah sesi hitung fisik terstruktur untuk menyamakan stok sistem dengan jumlah barang sebenarnya — pengganti koreksi satu-per-satu. Buka di Stok Opname (di bawah Manajemen Stok).
- Mulai sesi — pilih cakupan (kategori/cari). Sistem membuat lembar hitung: satu baris per batch (FEFO) untuk produk ber-kedaluwarsa, dan per produk/varian untuk lainnya. Stok sistem saat itu dibekukan sebagai pembanding.
- Isi hitung fisik — masukkan jumlah hasil hitung; selisih tampil otomatis. Simpan kapan saja (status Draft).
- Posting — selisih diterapkan sekaligus ke stok fisik batch dan stok jual sebagai mutasi penyesuaian, lalu sesi terkunci. Selisih muncul di Laporan Lalu Lintas Stok.
Multi-Gudangmulai Professional
Multi-Gudang (mulai Professional) memungkinkan Anda mengelola stok di beberapa lokasi gudang. Paket Professional = hingga 3 gudang, Enterprise = tak terbatas. Paket di bawahnya memakai 1 gudang (Gudang Utama).
- Kelola gudang di menu Gudang (Stok & Gudang): tambah/ubah lokasi, atur alamat & kontak, tandai Gudang Default. Gudang yang masih ada stok tak bisa dihapus.
- Stok per gudang: setiap operasi stok (Stok Masuk Batch, Koreksi) punya pilihan gudang. Total stok per gudang tampil di menu Gudang.
- Transfer Stok: pindahkan stok antar-gudang lewat menu Transfer Stok — stok gudang asal berkurang, tujuan bertambah; total stok toko tidak berubah.
- Pemenuhan pesanan: tiap pesanan punya Gudang Pemenuhan (default = Gudang Utama). Anda bisa mengubahnya di detail pesanan sebelum dikirim — stok dialokasikan ulang dari gudang yang dipilih. Saat scan keluar (FEFO), sistem memandu mengambil batch dari gudang pemenuhan.
Zona Waktu Toko (WIB/WITA/WIT)
Toko Anda bisa memilih zona waktu sesuai domisili: WIB (Waktu Indonesia Barat), WITA (Tengah), atau WIT (Timur). Atur di Pengaturan → Umum → Zona Waktu Toko. Bawaan: WIB.
Apa saja yang mengikuti zona ini?
- Semua tanggal & jam di dashboard: Riwayat Mutasi stok, Stok Opname, Pesanan, POS/Sesi Kasir, laporan, dll.
- Struk & dokumen cetak.
- Tampilan waktu di storefront, portal pelanggan (Akun Saya), dan aplikasi mobile (Pelanggan & Mitra).
- Batas “hari” pada angka harian: kartu Performa Toko (hari ini vs kemarin), “POS hari ini”, tren harian Laporan Penjualan/Keuangan, sisa-hari kedaluwarsa, dan kuota pesanan bulanan.
Contoh: toko di Bali memilih WITA — jam yang tampil menjadi 1 jam lebih cepat dari WIB. Jika saat ini pukul 10.00 WIB (Jakarta), maka tampil 11.00 WITA.
Waktu ditampilkan konsisten untuk semua staf (apa pun zona perangkatnya) dan sama antara penjual & pembeli — memudahkan rujukan waktu saat komunikasi/konfirmasi pesanan.
Catatan: komunikasi dengan tim StepyStore (tiket support, jadwal tagihan/invoice) tetap memakai WIB sebagai acuan pusat. Mengubah zona toko tidak mengubah data yang sudah tercatat — hanya cara menampilkan waktunya.
Notifikasi Email
Pemilik toko menerima email otomatis pada peristiwa berikut:
- Pendaftaran toko (selamat datang + instruksi pembayaran, atau “toko aktif” untuk paket gratis).
- Pesanan baru masuk dari pelanggan.
- Pembayaran online pesanan diterima otomatis (Midtrans/Tripay) — pesanan siap diproses. (Transfer manual tidak mengirim email ini karena Anda sendiri yang menandai lunas.)
- Invoice perpanjangan / upgrade dibuat (nominal, jatuh tempo, tombol bayar).
- Pengingat tagihan akan jatuh tempo (≤2 hari sebelum jatuh tempo).
- Tagihan dibatalkan otomatis bila tak dibayar hingga lewat masa tenggang (toko tetap di paket saat ini).
- Pembayaran dikonfirmasi (toko aktif / paket berbayar aktif).
- Langganan dibatalkan (tetap aktif hingga akhir periode).
- Toko beralih ke paket Gratis saat langganan habis (tetap online, data aman).
- Pengingat tidak aktif (H-30) & storefront dinonaktifkan setelah > 12 bulan tanpa login (aktif lagi saat login).
- Pengingat langganan (H-3 sebelum & saat masa berlaku berakhir).
- Pengingat stok kedaluwarsa (harian, bila ada batch ≤30 hari).
- Reset kata sandi dashboard.
Mengatur SMTP Email Toko (kirim dari alamat Anda sendiri)
Secara default email dikirim dari no-reply@stepy.co.id. Aktifkan SMTP sendiri di Pengaturan → Email agar email keluar dari alamat domain Anda (mis. no-reply@tokoanda.com) — lebih profesional, dipercaya pelanggan, dan tak mudah masuk spam. Fitur ini opsional; bila ragu, biarkan nonaktif (email tetap terkirim normal).
Pengaturan per penyedia (semua pakai port 587):
| Penyedia | Host SMTP | Port |
|---|---|---|
| Gmail / Google Workspace | smtp.gmail.com | 587 |
| Microsoft 365 / Outlook | smtp.office365.com | 587 |
| Zoho Mail | smtp.zoho.com | 587 |
| Email hosting / cPanel | mail.tokoanda.com | 587 / 465 |
Port: gunakan 587 (STARTTLS). Bila penyedia hanya mengizinkan SSL, pakai 465 — keduanya didukung.
Membuat App Password (Gmail / Google Workspace):
- Aktifkan Verifikasi 2 Langkah di akun Google email tersebut (App Password hanya muncul bila 2FA aktif).
- Buka Akun Google → Keamanan → Verifikasi 2 Langkah → Sandi Aplikasi.
- Beri nama (mis. “StepyStore”) → Buat → salin 16 huruf yang muncul.
- Tempel 16 huruf itu ke kolom Password / App Password di StepyStore (boleh tanpa spasi).
Mengisi form (Pengaturan → Email):
- Host SMTP & Port: sesuai tabel di atas.
- Username: alamat email lengkap (mis. no-reply@tokoanda.com).
- Password: App Password (Gmail/M365) atau sandi mailbox (hosting/cPanel).
- Email Pengirim (From): alamat yang tampil sebagai pengirim. Nama Pengirim: nama toko.
- Klik Kirim Uji dahulu untuk memastikan berhasil → baru Simpan Konfigurasi.
Bila gagal:
- “Authentication failed” → kemungkinan memakai sandi login, bukan App Password; atau 2FA belum aktif. Buat ulang App Password.
- Email masuk spam → minta penyedia domain menambah SPF/DKIM (sangat disarankan).
- Timeout/tak terkirim → cek Host & Port (coba 587; bila gagal coba 465).
Notifikasi Pesanan Masuk
Setiap pesanan baru dari semua kanal penjualan (Storefront, serta marketplace seperti Shopee, TikTok, dan Blibli) memberi tahu Anda secara langsung di dashboard. Pesanan POS Kasir dan Manual tidak ikut berbunyi karena dibuat sendiri oleh tim Anda.
Dua lapis notifikasi
- Notifikasi di dalam halaman — saat tab dashboard sedang terbuka: muncul kotak pemberitahuan (toast) disertai bunyi.
- Notifikasi perangkat (Web Push) — muncul sebagai notifikasi sistem komputer walau tab atau browser dashboard tidak sedang dibuka, selama perangkat menyala dan browser pernah dibuka. Cocok untuk admin yang tidak selalu menatap halaman dashboard.
Cara mengaktifkan (sekali saja)
- Buka Pengaturan → Umum → Notifikasi Pesanan (Perangkat Ini).
- Klik Aktifkan Notifikasi Perangkat, lalu pilih Izinkan saat browser meminta izin.
- Selesai — notifikasi berjalan otomatis pada perangkat itu.
Pengaturan ini berlaku per perangkat/browser. Jika Anda login dengan akun yang sama di beberapa perangkat (mis. desktop dan laptop) dan masing-masing mengaktifkannya, semua perangkat akan menerima notifikasi saat ada pesanan.
Notifikasi berhenti pada sebuah perangkat bila Anda: menekan Keluar (Logout), mematikannya lewat tombol Matikan Notifikasi Perangkat, atau mencabut izin notifikasi di setelan browser. Perangkat yang tidak dipakai lebih dari 60 hari juga dilepas otomatis.
Yang perlu diketahui: notifikasi perangkat memerlukan koneksi HTTPS (sudah tersedia) dan izin dari browser. Jika komputer dimatikan/tidur, notifikasi yang terlewat tidak dimunculkan susulan — hanya pesanan berikutnya yang berbunyi saat komputer aktif kembali. Pada iPhone/iPad, notifikasi perangkat hanya berfungsi bila dashboard dipasang sebagai aplikasi (Add to Home Screen).
Menutup browser tanpa Logout tidak mengeluarkan Anda dari akun — sesi & notifikasi tetap aktif. Untuk benar-benar berhenti menerima di sebuah perangkat, gunakan salah satu cara di atas.
Tur Panduan
Tur Panduan adalah panduan interaktif (sorot elemen) yang mengenalkan area utama dashboard saat Anda pertama kali memakainya. Tur juga tersedia di portal pelanggan (halaman Akun Saya) bagi pembeli toko Anda.
- Muncul otomatis sekali saat Anda pertama kali membuka tiap halaman (Dashboard, Produk, Stok, Pesanan, Pengaturan). Begitu Anda selesaikan atau lewati, tur itu tak muncul otomatis lagi.
- Menyesuaikan paket: tur untuk fitur yang tak ada di paket Anda (mis. Pesanan/Stok pada paket tertentu) tidak ditampilkan.
- Bisa diulang kapan saja lewat tombol Tur Panduan di kanan atas — tur halaman yang sedang dibuka diprioritaskan.
- Matikan tur otomatis: di menu tombol Tur Panduan, pilih “Jangan tampilkan tur otomatis” (bisa diaktifkan lagi kapan saja). Tur manual tetap tersedia.