- Docs
- Referensi
- Changelog
Changelog
Riwayat versi Sejoli Commerce — fitur baru, perbaikan, dan catatan penting tiap rilis.
Riwayat versi Sejoli Commerce, terbaru di atas.
Bundle berlangganan:
- Bundle kini bisa berlangganan — aktifkan pengaturan langganan pada produk bundle seperti produk biasa. Pembayaran pertama memakai harga bundle (ditambah Biaya Awal Langganan bila diisi); perpanjangan berjalan atas nama bundle dengan harga langganan reguler.
- Akses seluruh isi bundle mengikuti masa langganan — halaman akses dan file setiap produk di dalam bundle terbuka selama langganan aktif, tertutup saat langganan berakhir, dan terbuka kembali begitu diperpanjang. Pembeli tak perlu memperpanjang produk satu per satu.
- Satu pengingat, satu perpanjangan — pengaturan langganan produk di dalam bundle diabaikan pada transaksi bundle, jadi tidak ada pengingat atau perpanjangan per produk yang berdesakan.
Migrasi produk lama ke bundle:
- Arahkan produk lama berpola gabungan ke bundle baru — di tab Bundle, pilih produk lama lewat pencarian produk. Permalink produk lama otomatis menuju halaman bundle — tetap berlaku meski penjualan produk lama ditutup, bahkan saat produknya di-draft; link affiliate menuju produk lama pun tetap tercatat.
- Produk lama tidak bisa masuk keranjang — percobaan menambahkannya langsung mengantar ke halaman bundle. Semua pembelian baru mengalir lewat bundle, sementara pembeli lama tetap mengakses lewat produk lamanya tanpa perubahan apa pun.
Katalog & halaman detail:
- Kartu katalog menandai bundle — badge [Bundle] pada kartu katalog, dan tombol beli cepat langsung menuju halaman checkout bundle (bukan menambah ke keranjang lalu ditolak).
- Halaman detail bundle menampilkan isinya — barisan pill Berisi N produk di panel beli: komposisi yang dibeli terlihat tanpa membuka detail tiap produk.
- Harga coret bundle bisa dipilih — angka yang dicoret di ringkasan checkout kini bisa diatur per bundle: harga normal sebelum kupon atau harga final setelah kupon.
Developer — filter klaim produk gratis:
- Lima filter baru di halaman detail & offcanvas — ganti label tombol beli, sembunyikan tombol add-to-cart, ganti label harga, serta sembunyikan section pembayaran/kupon offcanvas. Tanpa pemakai filter, perilaku tidak berubah sama sekali.
Perbaikan:
- Menu halaman pagination tidak lagi menambah jarak pada tabel admin Sejoli Commerce, halaman Order member, dan Order Afiliasi.
Dirilis: 22 Oktober 2026
Perubahan besar — bundle kini menjadi bagian dari produk:
- Bundle ditanam di produk, bukan CPT terpisah — CPT Bundle dipensiunkan. Kini cukup buka editor produk sejoli → tab Bundle → centang Aktifkan bundle → pilih produk yang masuk bundle. Tidak ada lagi entitas terpisah yang harus dikelola dua kali.
- Harga produk = harga offer bundle — tidak ada lagi field harga offer terpisah di CPT. Harga produk bundle itu sendiri adalah harga yang dibayar pembeli.
- Tipe pembayaran mengikuti produk — produk bundle bisa one-time atau berlangganan, sesuai pengaturan produknya (bukan dipaksa one-time seperti CPT lama).
- Lisensi bersama dikonfigurasi di produk — tab lisensi native produk (aktif + kuota domain) menjadi sumber kebenaran lisensi bersama. Tidak ada lagi field kuota di CPT yang bisa menimpa.
- Affiliate mengikuti pengaturan produk — tab affiliate native produk (aktif + tier) mengatur komisi transaksi bundle. Tab affiliate CPT dipensiunkan.
- Komposisi bundle via picker di tab Bundle — cari produk via AJAX, atur qty, urutan baris = urutan tampil di keranjang. Pratinjau live menampilkan total normal vs harga offer.
- Tab Commerce otomatis menyembunyikan field yang tidak relevan saat bundle aktif — hanya tab Bundle yang menyala, field commerce lain disembunyikan (kebutuhannya ada di produk anak, bukan di bundle).
- REJECT add-to-cart container — produk bundle tidak bisa ditambahkan ke keranjang sebagai item biasa; semua pintu beli mengarah ke komposisi item anak. Ini mencegah order "kosong" yang tidak membuka akses apa pun.
- Migrasi otomatis — bundle CPT lama dimigrasi ke model baru via perintah migrasi; URL dan link affiliate lama tetap berfungsi.
Perbaikan:
- PPN dihitung di semua jalur Commerce — termasuk bump inline dan order final (sebelumnya PPN hanya terlihat di checkout native).
- Renewal lisensi bersama tidak lagi melahirkan lisensi kedua — guard renewal di issuer; paritas dengan guard core.
- Issuer menghormati setting lisensi produk bundle — bila admin mematikan lisensi pada produk bundle, issuer tidak menerbitkan lisensi paksa.
- Ringkasan satu baris untuk bundle — ringkasan checkout menampilkan bundle sebagai satu baris (bukan N baris anak) dengan total normal dicoret → harga offer.
- Harga coret bundle mencerminkan harga setelah kupon — harga normal yang dicoret pada ringkasan bundle kini memakai harga setelah diskon kupon per item (bukan harga pra-kupon yang tidak pernah dibayar pembeli). Baris Diskon Bundle menampilkan hanya penghematan tambahan dari membeli bundle.
Dirilis: 18 Oktober 2026
Perbaikan — checkout:
- PPN kini dihitung di seluruh checkout Commerce — sebelumnya PPN hanya terlihat di checkout native: begitu bump offer diterima (atau checkout lewat jalur Commerce), baris PPN menghilang dari rincian dan nominalnya tidak ikut dalam total. Kini PPN dihitung ulang dari pengaturan PPN core (aktif per produk) pada semua jalur Commerce — preview, bump inline, dan order final — dengan basis yang sama seperti native (subtotal setelah diskon + ongkir, di luar biaya COD).
- Bump fisik beda origin kini memunculkan grup origin baru di checkout — menerima bump offer yang produknya dikirim dari gudang/origin berbeda kini mengutip ulang paket di semua permukaan checkout (native, offcanvas, /checkout): grup origin tambahan muncul dengan pilihan kurirnya sendiri, dan pilihan per paket ikut dalam order. Sebelumnya di halaman /checkout grup origin baru tidak pernah tampil (daftar paket terkunci dari muat halaman) dan kutipan tidak diperbarui saat bump dicentang/dilepas.
Perbaikan — ringkasan:
- Bundle tampil satu baris di Ringkasan Pesanan, berapa pun isinya — checkout bundle 17 addon tidak lagi memenuhi ringkasan dengan 17 baris harga normal plus satu baris diskon. Kini seluruh isi bundle tampil sebagai satu baris atas nama bundle (total normal dicoret, harga offer di bawahnya) dengan daftar produk terlipat di Berisi N produk — nama dan jumlah saja, tanpa harga, satu klik untuk membuka. Pola yang sama dipakai Shopify dan WooCommerce Product Bundles.
Developer — extension point kursus berkontainer produk:
- Dua filter hook baru untuk integrasi kursus (developer) —
sejoli_commerce/product_detail/sectionsdansejoli_commerce/product_modal/sections: plugin kursus dapat menyisipkan preview silabus (accordion bab/pelajaran) di halaman detail produk mode commerce-detail dan di modal quick-view embed. Hook selalu tersedia walau tanpa pemakai; kontrak return (array section / string HTML) terdokumentasi di Filter & Event. - Filter export JSON kini terbuka untuk plugin kursus (developer) —
sejoli_commerce/export/productdipanggil per produk saat Export JSON dijalankan: data silabus publik (bab/pelajaran: judul, durasi, tipe) ikut dalam file export yang diserahkan ke pembuat storefront.
Dirilis: 17 Oktober 2026
Fitur baru — lisensi bersama untuk Product Bundle:
- Satu kode lisensi untuk seluruh isi bundle — order bundle yang selesai kini menerbitkan satu kode lisensi bersama, bukan satu kode per produk berlisensi. Bundle puluhan addon tidak lagi melahirkan belasan kode yang membingungkan pembeli: aktifkan satu kode, semua addon berlisensi di dalam bundle tercakup. Perpanjangan order mengaktifkan kembali kodenya; pembatalan/refund mematikannya — sekali gerak.
- Kuota aktivasi per bundle — field baru Kuota aktivasi lisensi di editor bundle (tab General): jumlah domain yang dapat didaftarkan pada satu lisensi bersama. Default 1 domain, isi 0 untuk unlimited; kuota ditegakkan mekanisme lisensi standar saat pembeli mendaftarkan domain.
- Container produk dikelola otomatis dari editor bundle — setiap bundle kini memiliki satu produk wadah Sejoli miliknya sendiri (sebelumnya satu container global dipakai bersama): dibuat otomatis saat bundle disimpan, nama mengikuti judul bundle, ikut ter-trash/terhapus, dan selalu tersembunyi dari katalog. Lisensi bersama menunjuk wadah ini sehingga di member area tampil dengan nama bundle — bukan nama teknis. Catatan penting: jangan mengubah pengaturan container secara manual; semuanya dikelola dari editor bundle.
- Catatan upgrade untuk pemilik toko addon — order bundle baru tidak lagi menerbitkan kode lisensi per produk child. Addon di dalam bundle memvalidasi kode bersama lewat API lisensi toko — validasi kini menerima parameter
slugaddon; tanpa parameter, perilaku lama tetap berjalan.
Fitur baru — Export JSON produk:
- Export JSON langsung dari wp-admin — bulk action baru Export JSON (Sejoli Commerce) (plus aksi Export JSON per baris) di daftar produk: centang produk, unduh file JSON berisi data lengkap yang identik dengan API publik Commerce (harga, varian, stok, konten, FAQ — payload buyer-safe, bukan dump database). File-nya self-documenting: disertai URL toko dan panduan integrasi lengkap (script embed, tombol add-to-cart, handoff checkout) — siap diberikan ke siapa pun, termasuk AI, untuk membangun storefront tanpa penjelasan tambahan. Detail di Katalog Produk.
Perbaikan — checkout:
- Email/telepon terdaftar tidak lagi menghalangi checkout — bila pembeli mengisi email atau nomor yang sudah terdaftar, kini hanya muncul pemberitahuan ringan bahwa pesanan akan dikaitkan dengan akun tersebut — checkout tetap berjalan tanpa dipaksa login, dan order otomatis menempel pada akun pemilik email/telepon itu (paritas penuh dengan checkout Sejoli native; akun baru dibuat hanya untuk data yang benar-benar baru).
- Card paket pengiriman fokus pada biaya kirim — kartu paket asal tidak lagi mengulang harga produk (kini hanya nama, jumlah, dan berat), dan baris Subtotal paket + pengiriman diganti Ongkir dengan tarif kurir terpilih. Sebelumnya kartu ini menampilkan harga normal sementara Ringkasan Pesanan menampilkan harga setelah diskon — dua angka yang saling bertentangan di satu layar. Kini Ringkasan Pesanan menjadi satu-satunya sumber angka uang.
Perbaikan — katalog embed & ringkasan:
- Embed tahan tema host di semua ukuran layar — CSS layout embed kini dikunci penuh (box-sizing, lebar, minimum) sehingga toolbar pencarian dan grid katalog tidak bisa lagi meluber melewati viewport di tema host mana pun — kasus nyata: kolom pencarian keluar layar di mobile sehingga tombolnya terpotong.
- Judul item berdiskon tidak lagi tampak pudar di Ringkasan Pesanan — perbaikan selektor warna: sebelumnya baris yang kena kupon ikut warna redup barisnya karena tag kupon membuat judul kehilangan pemulihan warna; kini judul selalu setara dengan item tanpa diskon (harga lama tetap dicoret redup, baris kupon tetap hijau — memang by design).
Fitur baru — embed:
- Tombol kustom kini mendukung produk ber-varian — atribut
data-sjc-variant(formatkunciGrup=kunciOpsi; kunci dari detail produk atau file Export JSON) dan APIsejoliCommerceEmbedCart.add()kini menerima pilihan varian. Tanpa varian untuk grup yang wajib, tombol menolak dengan peringatan memilih varian — bukan menambah item kurang-lengkap. Dokumentasi lengkap di Katalog Embed.
Perbaikan — kompatibilitas & keandalan:
- Atribusi affiliate kini jalan di core Sejoli 1.14 — transaksi checkout Commerce sempat tidak pernah mencatat affiliate di instalasi dengan core versi lama, karena fungsi resolver transaksi baru tersedia di core 1.15. Kini Commerce memakai resolver pengganti berpresedensi identik (permanent affiliate → kupon affiliate → cookie link, tetap menolak self-referral), sehingga link affiliate produk, bundle, maupun site-level kembali tercatat di semua jalur. Sumber resolusinya ikut tercatat di order untuk memudahkan diagnosis.
- Login inline checkout tidak lagi gagal diam-diam di situs ber-cache — sebelumnya, nonce login yang tertanam di halaman checkout bisa kedaluwarsa bila halamannya tersimpan cache, dan endpoint core menolaknya tanpa pesan apa pun sehingga login selalu tampak "kesalahan jaringan". Kini login inline memakai endpoint milik Commerce dengan nonce yang selalu diambil segar tepat sebelum submit — kebal halaman ter-cache — dan pesan kesalahannya jelas (sesi tidak valid, password salah, dsb.). Plugin OTP/2FA yang mengintersep login tetap berjalan normal.
Dirilis: 12 Oktober 2026
Fitur baru — bundle, afiliasi & komisi:
-
Link affiliate khusus bundle — format
{situs}/aff/{id-affiliate}/bundle/{slug}: pembeli tercatat sebagai referrals affiliate lalu mengikuti alur bundle normal. Affiliate mengambil linknya sendiri di halaman member Affiliasi Link — daftar bundle langsung tersedia untuk dipilih (tak perlu menghafal judul), lengkap dengan pencarian dan tombol salin. -
Kebijakan komisi untuk transaksi bundle — tab Affiliasi baru di editor bundle: nonaktifkan affiliasi untuk bundle tertentu (transaksinya tanpa komisi), biarkan mode otomatis (komisi tiap produk mengikuti pengaturan produknya, dihitung dari harga efektif dalam bundle — proporsional terhadap harga offer, jadi margin bundle tidak tergerus diskonnya), atau isi tier komisi manual sebagai override (persentase dihitung dari harga offer bundle; nominal tetap dibulatkan persis).
-
Pratinjau Harga & Komisi di editor bundle — menghitung langsung saat pengaturan diisi: total normal, harga offer, diskon, rasio offer, dan rincian komisi per produk/tier — termasuk penjelasan produk yang tidak menghasilkan komisi.
-
Field Deskripsi singkat untuk pratinjau sosial bundle — pengganti kutipan WordPress yang terpisah dari editor bundle: isi deskripsi langsung di tab General dan pratinjau WhatsApp/Facebook menampilkan teksnya. Kutipan WordPress tidak lagi tampil di editor bundle; kutipan yang sudah tersimpan tetap dipakai sebagai cadangan.
-
Estimasi komisi di detail order — selama order belum dibayar dan baris komisi final belum terbentuk, Informasi Afiliasi menampilkan estimasi komisi (total + rincian per produk) dengan rumus yang sama seperti yang akan dicatat.
-
Keranjang bundle tidak lagi menghapus belanjaan — membuka link bundle kini menyiapkan keranjang bundle terpisah: checkout menampilkan isi bundle, belanjaan lama pembeli tetap utuh dan otomatis "kembali" setelah order bundle selesai. Login di tengah checkout tidak menggabungkan belanjaan akun, dan berbelanja normal kembali memakai keranjang biasa.
-
Harga offer mematikan affiliasi secara default — mengisi harga offer di editor otomatis menandai bundle non-aktif affiliasi (terlihat langsung di pratinjau komisi); bisa dibuka kembali manual bila tetap ingin membayar komisi. Bundle non-aktif tidak muncul di daftar link affiliate member, dan link lamanya tetap mengantar pembeli ke bundle — hanya tanpa atribusi komisi.
Perbaikan — atribusi affiliate di checkout keranjang:
- Link affiliate kini selalu tercatat di checkout keranjang — sebelumnya atribusi cookie affiliate (link produk, link site-level, maupun bundle) tidak pernah terbaca pada alur checkout multi-produk Sejoli Commerce, sehingga transaksi berjalan tanpa referrals. Kini terbaca dengan aturan prioritas yang sama seperti checkout native. Sebagai konfirmasi visual, footer checkout menampilkan "Affiliasi oleh {nama}" saat atribusi aktif (bisa disembunyikan di pengaturan).
Fitur baru — notifikasi WhatsApp:
- Mode struk WhatsApp — rincian pesanan WA tersedia dua gaya: List (default — label bernomor yang rapi di semua lebar layar) dan Receipt (kolom sejajar ala struk kasir dengan lebar karakter yang bisa diatur 20–60). Pengaturannya pindah ke Advanced Settings → Tampilan → Struk WhatsApp, lengkap dengan pratinjau langsung — contoh pesanan dua produk yang ikut berubah saat mode/lebar diganti, tanpa perlu menyimpan.
Dirilis: 11 Oktober 2026
Fitur baru — Product Bundle:
- OG tags untuk permukaan Commerce — halaman produk, katalog, keranjang, dan checkout kini merender Open Graph (judul, deskripsi, gambar; produk memakai gambar produknya, halaman lain memakai site icon). Aktif otomatis bila situs belum memakai plugin SEO (Yoast SEO, Rank Math, All in One SEO, SEOPress) — bila ada, OG diserahkan ke plugin tersebut agar tag tidak dobel.
- Bundle produk dengan halaman kunjungan sendiri — menu baru Bundle di bawah menu Produk: beri nama bundle, susun produk pembentuknya beserta qty masing-masing (urutan baris = urutan di keranjang), lalu bagikan URL
{situs}/checkout/bundle/{slug-bundle}. Kunjungan URL tersebut otomatis mengisi keranjang sesuai definisi dan langsung menuju halaman checkout — tamu maupun member sama-sama jalan. Keranjang diisi ulang secara deterministik setiap kunjungan URL bundle, jadi penerima selalu mendapat set yang persis sama. - Harga offer bundle — isi harga offer dan total checkout menjadi harga tersebut: total normal tampil dicoret di atasnya. Checkbox kebijakan mengatur siapa yang berhak: hanya via link bundle (kombinasi yang sama yang disusun manual tidak mendapat harga), atau kombinasi yang sama manual pun berhak. Selisih harga tampil sebagai baris Diskon Bundle di ringkasan.
Fitur baru — halaman produk & embed:
- Tombol Bagikan di halaman produk — Facebook, WhatsApp, dan Salin Link di kartu pembelian. Pembeli tamu membagikan link murni; user berstatus affiliate otomatis membagikan link affiliasinya (format native
/aff/{user}/{product}/) lengkap dengan penanda "Link affiliasi Anda". Dua pengaturan di Advanced Settings → Katalog: gaya tombol (ikon saja / ikon + teks) dan link yang dibagikan (link produk / utamakan link affiliate — opsi affiliate hanya berlaku untuk pengunjung yang login sebagai affiliate). - Tombol Bagikan di modal katalog embed — Facebook, WhatsApp, dan Salin Link. Link yang dibagikan menunjuk halaman storefront +
?product={slug}(ramah dibaca, mis.?product=addon-sejoli-lms): penerima membukanya dan modal detail produk langsung terbuka otomatis. Nama param bisa diganti lewat atributdata-product-parambila tema sudah memakaiproduct; endpoint detail kini menerima slug maupun ID.
Dirilis: 10 Oktober 2026
Fitur baru — Storefront level situs (embed):
- Satu script untuk seluruh storefront domain lain — script embed kini dipasang sekali di footer tema. Minicart melayang tampil di semua halaman; halaman memilih isinya lewat container: grid katalog (
data-sjc-catalog) atau buy-box satu produk (data-sjc-buybox). Penempatan lama per-halaman tetap didukung, dan kedua pola boleh terpasang bersamaan tanpa bentrok. - Buy-box di halaman salespage — kotak ringkas (gambar opsional, nama, harga promo, pilihan varian dengan harga tambahan, jumlah, tombol tambah) untuk halaman salespage satu produk; produk ber-varian kini bisa dijual dari domain lain tanpa membuka katalog.
- Tombol kustom untuk page builder — tombol apa pun di Elementor/Gutenberg/landing page cukup diberi atribut
data-sjc-add-to-cart="{id}"untuk menjadi tombol tambah-ke-keranjang; isi tombol (ikon/label builder) tidak pernah diubah. Saat item masuk keranjang, widget merespons dengan konfirmasi singkat pada tombol dan bubble minicart berdenyut beserta bertambahnya jumlah item. Tersedia juga API singkatsejoliCommerceEmbedCart.add/count. - Keranjang satu untuk seluruh situs — item dari katalog, buy-box, dan tombol kustom masuk keranjang yang sama, tersinkron antar permukaan dan antar tab. Keranjang pola lama dimigrasi otomatis.
- Checkout tetap di situs Sejoli — tombol checkout minicart memakai mekanisme handoff token sekali pakai yang sama; tidak ada pengaturan tambahan.
- Picker produk di pengaturan — di Advanced Settings → Integrations, ketik nama produk lalu pilih: snippet buy-box terisi ID-nya otomatis, tak perlu membuka tabel produk. Produk yang belum tampil di katalog ditandai.
- Toolbar katalog lebih bersih — tombol keranjang di toolbar katalog hanya tampil bila minicart dimatikan; dengan minicart aktif, bubble menjadi satu-satunya pintu keranjang.
- Modal detail menampilkan deskripsi utama produk — sebelumnya hanya Deskripsi Singkat Katalog; kini isi lengkap produk (konten editor, termasuk heading, daftar, gambar, tabel) tampil di modal dengan tipografi rapi.
Perbaikan — halaman produk:
- Mode Produk Terkait — pengaturan baru di Advanced Settings → Katalog: Isi otomatis (perilaku lama — bila produk tidak di-set manual, section terisi 3 produk terbaru) atau Hanya set manual (section hanya tampil bila produk terkait dipilih manual di produk; kosong = tidak tampil sama sekali). Section kini juga otomatis tersembunyi bila semua kandidat tersaring (produk bump/tertutup/di-luar katalog).
Perbaikan — kupon & pengiriman:
- Kupon gratis ongkir kini berfungsi di checkout keranjang — sebelumnya manfaat free shipping hilang begitu saja di Commerce. Kini tercatat sebagai baris Diskon Pengiriman tersendiri di ringkasan (terpisah dari diskon produk, ongkir tampil pada harga aslinya), tercatat juga di meta order. Keputusannya dihitung server dari kupon yang berlaku — permintaan curangan
free_shippingdari sisi klien tidak lagi berdampak apa pun (celah dibuka-tutup sekaligus). Pemisahan baris ini sekaligus fondasi diskon pengiriman parsial (mis. berkapasitas maksimal) di masa depan.
Perbaikan — checkout:
- Jarak antar baris form dirapikan — label Telepon/WhatsApp dan Alamat Lengkap tidak lagi menempel pada input di atasnya.
- Telepon/WhatsApp naik ke baris pertama saat email tidak diwajibkan — baris pertama kini [Nama Lengkap] [Telepon/WhatsApp]; email opsional turun ke barisnya sendiri di bawah.
- Login inline di checkout — tamu menekan "Sudah punya akun? Masuk" di kartu Informasi Pelanggan dan langsung mengisi email + password di tempat (paritas checkout native); sukses langsung masuk dan halaman memuat data akunnya.
Perbaikan — minicart & tampilan embed:
- Minicart mengikuti perangkat — melayang di desktop, menjadi drawer di dasar layar di mobile; untuk tema yang sudah punya keranjang mobile sendiri, minicart bisa disembunyikan di mobile lewat satu atribut.
Perbaikan — offcanvas beli-sekarang:
- Kartu "Gunakan Wallet" hanya tampil saat benar-benar bisa dipakai — sebelumnya kartu justru muncul berpesan "Pembayaran Wallet tidak tersedia" saat plugin wallet nonaktif. Kini hilang total, paritas dengan halaman checkout.
- Offcanvas mengikuti toggle produk (tab Tampilan) — produk fisik dengan isian email disembunyikan kini memproses order tanpa email (hanya nama + telepon, tanpa membuat akun member), paritas dengan checkout fisik native; tautan login juga mengikuti togglenya.
- Bump bisa di-batal-tandai dan tabel ikut update — checkbox bump tidak lagi terkunci setelah dicentang; melepas tanda kini langsung menghapus barisnya dari tabel Detail Pesanan, termasuk saat bump terakhir dilepas (keranjang kembali bersih seperti semula).
- Nama produk ber-karakter khusus tampil normal di offcanvas (judul tersimpan ber-entity seperti
–kini tampil sebagai tanda pisah, bukan kodenya). - Email tidak lagi diwajibkan secara keliru — keranjang fisik murni yang semua produknya menyembunyikan isian email tidak lagi menolak order meski mode akun toko "wajib", karena funnel produk itulah yang menentukan.
Perbaikan — keandalan embed:
- Respons katalog embed selalu bersih — di server dengan display errors aktif, notice PHP dari perhitungan kupon sempat ikut tercetak di data JSON sehingga katalog gagal dimuat; sekarang notice tersebut disaring sebelum data dikirim. (Sumber notice-nya di core Sejoli — kupon gratis-ongkir — diperbaiki menyusul di sisi core.)
Dirilis: 8 Oktober 2026
Perbaikan:
- Checkout kembali berfungsi penuh — sejak 1.2.6, halaman
/checkoutbisa tampak normal padahal seluruh kontrolnya tidak merespons: pencarian tujuan tidak bisa dibuka, ongkir tidak pernah muncul, kupon dan tombol Selesaikan Pesanan tidak berfungsi. Kini semuanya kembali bekerja. - Pembayaran COD di keranjang gagal saat pesan — pesanan COD — termasuk multi-gudang — selalu berakhir "Checkout gagal" padahal data sudah lengkap. Kini pesanan COD tersimpan normal.
- Booking Mengantar dari Fulfillment kini berhasil — sejak fitur dirilis, konfirmasi Proses Pengiriman selalu ditolak dengan pesan "Pickup type is required." sehingga paket tidak pernah bisa didaftarkan ke kurir. Kini booking tersimpan dengan nomor resinya.
- Offcanvas beli-sekarang kembali berfungsi di semua halaman produk — panel beli-sekarang sempat tidak muncul dan tidak bisa dipakai memesan langsung. Kini tampil dan bekerja normal.
- Opsi kurir "COD" disembunyikan dari offcanvas beli-sekarang — paritas dengan checkout keranjang: COD murni metode pembayaran, bukan kurir, jadi tidak lagi muncul di daftar layanan pengiriman.
- Terjemahan dilengkapi untuk semua teks baru rilis ini.
Baru:
- Pesan eksplisit saat belum ada kurir aktif — bila provider pengiriman aktif tetapi belum ada kurir yang dicentang, checkout kini menyampaikan “Belum ada kurir pengiriman yang diaktifkan untuk toko ini…” alih-alih pesan menyesatkan seolah API ongkir sedang gangguan. Saat beberapa paket gagal sekaligus, pesan kesalahan spesifik tiap paket didahulukan sebelum rangkumannya.
Dirilis: 5 Oktober 2026
Perbaikan:
- Opsi "COD" di daftar kurir dihapus — sebelumnya muncul dua tempat yang membingungkan: sebagai kurir dan sebagai metode pembayaran. Kini COD hanya ada di satu tempat: Metode Pembayaran, dan berlaku untuk kurir jaringan mana pun (Mengantar, JNE, SiCepat, dll.) tanpa syarat memilih kurir tertentu.
Dirilis: 3 Oktober 2026
Fitur baru — provider pengiriman Mengantar:
- Booking paket langsung dari Fulfillment — tombol Proses Pengiriman mendaftarkan paket ke akun Mengantar (drop-off atau pickup terjadwal), menyimpan nomor resi otomatis, dan menaikkan status paket ke Shipping. Nominal tagihan COD ikut ke booking.
- Timeline pelacakan Mengantar — perjalanan paket tampil otomatis di halaman tracking publik, member area, dan Order Inspector untuk resi yang tercatat di akun Mengantar toko.
- Cek ongkir Mengantar di checkout — API publik tanpa biaya per hit, dengan satu percobaan ulang otomatis bila provider sesaat tidak merespons.
Fitur baru — Biaya COD:
- Biaya COD untuk transaksi keranjang — sebelumnya tidak dihitung sama sekali. Karena kurir menagih COD per paket, biaya berlaku per paket (dua origin = dua biaya), ditampilkan sebagai baris Biaya COD di ringkasan checkout dan rincian Termasuk biaya COD pada tiap kartu paket.
- Sumber persentase diatur admin (Pengaturan → Checkout → Biaya COD): satu aturan tingkat toko (persentase, basis nilai produk atau produk + ongkir, maksimal opsional) — atau diambil dari produk dengan persentase tertinggi/terendah di keranjang.
- Baris Biaya COD kini juga tampil di Order Inspector serta halaman terima-kasih dan detail order member area (mengikuti format native).
Perbaikan:
- RTS (Return to Sender) — status paket baru Returned dengan tombol Tandai RTS: paket kembali ke pengirim dan transaksi otomatis di-refund (notifikasi refund terkirim, komisi affiliate dibatalkan).
- Halaman pelacakan multi-paket — navigasi tab per produk (foto + nama) menggantikan gulir panjang; di desktop tab menempel di kiri, di ponsel menjadi baris geser.
- Nama produk di timeline — judul produk era lama yang tersimpan entity-encoded (mis.
–) kini tampil normal di halaman pelacakan.
Dirilis: 3 Oktober 2026
Fitur baru — filter daftar Orders:
- Panel Filter Data — tombol Filter Data di header daftar Orders membuka panel pencarian mengambang: nomor invoice (koma untuk beberapa), rentang tanggal berkalender, nilai invoice, status, produk, pembeli, hingga affiliate. Hasil termuat langsung tanpa memuat ulang halaman, dan kontrol tabel (jumlah data per halaman, navigasi, pencarian) kini berbahasa Indonesia.
Fitur baru — link affiliasi site-level:
- Tautan
/aff/{id-user}tanpa produk — bagikan di mana saja (bio medsos, caption); pembeli yang masuk lewatnya tercatat sebagai referral general, sehingga komisi mengikuti pembelian produk apa pun yang affiliate-nya aktif. Tautan juga tampil siap-salin di halaman Affiliasi Link member area. - Tab Affiliate baru di pengaturan lanjutan — menghimpun kartu link site-level (termasuk pilihan tujuan redirect: homepage / katalog / URL kustom) dan kartu kupon affiliate yang pindah dari tab Checkout.
Perbaikan:
- Halaman konfirmasi pembayaran — field Produk yang anda beli kini menampilkan nama produk yang benar-benar dibeli (mis. Sejoli, Sejoli Commerce +1 produk lainnya), bukan nama produk internal container.
Dirilis: 2 Oktober 2026
Fitur baru — Kupon affiliate eksklusif:
- Satu transaksi, satu affiliate kupon — memasukkan kupon affiliate kedua yang pemiliknya berbeda kini dikelola secara eksplisit, bukan diam-diam: pilihan perilaku ada di pengaturan (konfirmasi ke pembeli, langsung ganti, atau tolak kupon baru).
- Konfirmasi ganti kupon (default): pembeli melihat modal yang menjelaskan kupon lama akan dilepas, produk terkait tidak lagi terdiskon, dan komisi berpindah ke pemilik kupon baru — teks modal dapat disesuaikan dengan placeholder
{kupon_baru},{kupon_lama},{affiliate_baru},{affiliate_lama}. - Nama affiliate di checkout — tulisan "Affiliasi oleh …" di bagian bawah halaman checkout menampilkan siapa yang menerima komisi transaksi (bisa disembunyikan atau diganti labelnya).
- Perbaikan: kartu bump offer yang sudah ada di keranjang kini tercentang sejak halaman checkout dibuka (sebelumnya hanya muncul di ringkasan pesanan tanpa centang).
Dirilis: 1 Oktober 2026
Fitur baru — Label pengiriman:
- Cetak label paket siap tempel dari tab Fulfillment — barcode resi, data penerima, pengirim, item, dan kotak COD dengan nominal yang harus ditagih; dirancang untuk kertas thermal 100×150mm dan bisa diuji lewat Save as PDF.
- Belum punya nomor resi tetap bisa cetak — area resi menyediakan garis kosong untuk ditulis kurir atau ditempel stiker resi di drop-point.
- Cetak massal dari daftar Orders — mode pilih dengan hitungan jumlah paket (mis. pilih 3 transaksi multi-gudang → Cetak 6 Label); hanya transaksi yang sudah dibayar dan ber-paket fisik yang bisa dipilih.
- Cetak beberapa paket sekaligus — pada transaksi multi-gudang, centang paket mana saja yang ingin dicetak dari tab Fulfillment.
- Identitas pengirim (nama & telepon toko) opsional di tab Alat pengaturan — kosong berarti nama situs / tanpa telepon.
- Pilihan ukuran kertas — 100×150mm (thermal, default), A6, A5, atau A4; dapat diganti sekali-cetak dari halaman cetak.
Perbaikan:
- Daftar Orders dirapikan — tombol Eksport CSV & Cetak Label naik ke baris judul, tanpa heading ganda, dan tabel bebas scrollbar yang tidak perlu.
Dirilis: 1 Oktober 2026
Perbaikan:
- Tanda hubung nama produk di notifikasi WhatsApp — nama produk yang mengandung tanda hubung sempat tampil sebagai kode
–(mis. Sejoli – Single Domain). Kini tampil sebagai tanda hubung biasa di seluruh isi pesan WhatsApp; email turut membawa karakter yang benar. - Terjemahan Indonesia dilengkapi — puluhan teks yang masih tampil bahasa Inggris (di pengaturan lanjutan, halaman pelacakan, riwayat pesanan, dan pesan-pesan kesalahan) kini berbahasa Indonesia.
- Baris aksi Order Inspector rapi di layar kecil — saat membuka detail pesanan dari tablet atau ponsel, tombol aksi dan pilihan Follow Up tersusun rapi tanpa terpotong.
Dirilis: 30 September 2026
Fitur baru — Follow Up penagihan transaksi:
- Pengaturan pesan followup — tab baru Follow Up di Pengaturan Lanjutan: susunan pesan penagihan WhatsApp (hingga 10 pesan) untuk transaksi Menunggu Pembayaran. Pesan ditulis sekali untuk seluruh toko karena yang dinagih adalah total transaksinya — rincian produk, total, dan batas waktu tetap terisi otomatis di dalam pesan.
- Follow Up di Order Inspector — pada transaksi Menunggu Pembayaran, pilih langkah di menu Follow Up (ujung kanan baris aksi) untuk membuka WhatsApp dengan pesan yang sudah terisi penuh. Daftar transaksi tetap ramping: followup cukup dibuka lewat inspector.
- Follow Up di riwayat afiliasi — pada halaman Pesanan Afiliasi member area, transaksi Menunggu Pembayaran menampilkan pilihan followup di bawah nomor invoice; afiliasi hanya bisa mengikuti transaksinya sendiri.
- Checkout satu produk yang tidak lewat keranjang tetap memakai pesan Follow Up dari masing-masing produk — tidak berubah.
Perbaikan:
- Kode pesan followup terkirim mentah — pesan followup sempat mengirim kode seperti
{{buyer-name}}apa adanya ke WhatsApp, termasuk pada followup produk biasa saat Commerce aktif. Kini semua kode terganti otomatis menjadi isinya (nama pembeli, total, batas waktu, dan sebagainya).
Dirilis: 29 September 2026
Penawaran bump kini selesai di halaman yang sama, tanpa pindah-pindah halaman.
Bump di halaman produk:
- Checkbox satu-klik untuk menambah bump — centang untuk menambah, hilangkan centang untuk membatalkan; kartu penawaran tetap tampil dengan harga yang akurat.
- Produk digital maupun fisik selesai langsung di halaman: baris bump masuk tabel Detail Pesanan lengkap dengan gambar, durasi langganan, dan harga coret saat ada diskon; pesanan langsung terbentuk dari halaman itu lalu diarahkan ke halaman terima kasih.
- Produk fisik: form tujuan pengiriman tetap dipakai, ongkir dikutip dari Commerce (pilihan kurir lama diterjemahkan otomatis), dan biaya pengirimannya sama dengan yang dihitung di checkout.
- Produk digital yang di-bump produk fisik otomatis diarahkan ke halaman checkout Commerce — halaman digital tidak punya form tujuan pengiriman.
- Belum mengisi tujuan pengiriman? Baris bump dan total langsung tampil tanpa menunggu ongkir — begitu tujuan diisi, ongkir menyusul.
- Kupon terpasang otomatis saat diketik; kartu bump ikut mencoret harga dan menampilkan hematnya.
- Offcanvas beli-sekarang juga selesai di halaman yang sama, untuk digital maupun fisik.
- Di admin, pemilih produk bump kini memuat semua produk (digital dan fisik) beserta label tipenya.
- Akun pembeli mengikuti pengaturan tampilan Sejoli — tanpa email, checkout tetap berjalan sebagai guest; produk digital tetap mewajibkan akun.
Tampilan offcanvas yang dirapikan:
- Urutan: Detail Pesanan → Informasi Pelanggan → Bump → Kupon → Metode Pembayaran → Total.
- Metode pembayaran dilipat: tombolnya menampilkan pilihan aktif, dibuka untuk melihat semua opsi.
- Pengaturan jumlah berada di dalam kartu Detail Pesanan.
- Header melekat di atas dengan tombol tutup.
- Kupon tanpa tombol hapus terpisah — kosongkan kolomnya untuk menghapus.
Perapian umum:
- Pesan kesalahan/info tampil di posisi yang tepat: kupon di kartu kupon, peringatan saat submit di atas tombol bayar.
- Label asal pengiriman konsisten berformat {kecamatan}, {kota}.
- Layar meredup sesaat saat pesanan sedang diproses.
- Biaya payment gateway dihitung sekali per transaksi, bukan per baris produk.
- Label "Penyesuaian Pembayaran" diganti menjadi "Biaya Transaksi".
Dirilis: 27 September 2026
Rilis perdana Sejoli Commerce.
Fitur utama:
- Keranjang & checkout multi-produk — digital, fisik, dan campuran dalam satu transaksi; guest checkout didukung.
- Storefront & katalog — halaman depan toko siap pakai, katalog dengan filter, sortir, dan pencarian; branding warna & logo sendiri.
- Ongkir multi-gudang — produk dikelompokkan per gudang asal, kurir dipilih per paket, ongkir digabung dalam satu transaksi; COD didukung.
- Bump offer — per produk maupun global, menggantikan bump bawaan Sejoli.
- Multi-kupon — beberapa kupon sekaligus, diskon terbesar yang menang per produk.
- Notifikasi multi-produk — email & WhatsApp dengan rincian struk lengkap seluruh item.
- Pelacakan resi — halaman lacak aman tanpa login, kurir & riwayat perjalanan per paket.
- Produk rahasia — sembunyikan penawaran khusus dari katalog, hanya bisa dibeli via link langsung.
- Embed katalog lintas domain — dengan whitelist domain sebagai pengaman.
- Setup wizard 5 langkah — situs lama tetap aman: checkout & funnel yang sudah berjalan tidak terganggu, beranda lama bisa dikembalikan.
Dirilis: 23 September 2026
Last updated Oct 22, 2026