Ongkir tidak muncul di checkout WooCommerce hampir selalu disebabkan salah satu dari sembilan hal: zona pengiriman belum diatur, berat produk kosong, alamat tujuan belum lengkap, metode pengiriman nonaktif, lisensi plugin expired, cache yang menahan tampilan lama, konflik blocks checkout, alamat asal belum diset, atau rute yang memang tidak dilayani kurir. Sembilan-sembilanya bisa dicek sendiri dalam hitungan menit, dan artikel ini mengurutkannya dari yang paling sering terjadi.
Situasi ini selalu terasa sama buruknya. Pembeli sudah pilih produk, sudah isi alamat, lalu di bagian pengiriman yang muncul cuma tulisan “No shipping methods available” — atau lebih parah, kosong sama sekali. Tidak ada tombol bayar, tidak ada penjelasan. Pembeli tidak akan menghubungi Anda untuk bertanya. Mereka menutup tab.
Dari tiket support yang masuk ke AgenWebsite, ini keluhan nomor satu pengguna plugin ongkir — dan hampir semuanya selesai tanpa perlu ganti plugin atau panggil developer. Masalahnya cuma satu: penyebabnya ada banyak, dan tanpa urutan pengecekan yang benar orang cenderung mengubah semua setting sekaligus lalu makin bingung.
💡 Jawaban Singkat: Kalau ongkir tidak muncul di checkout WooCommerce, cek tiga hal ini dulu karena mencakup sekitar 70% kasus: (1) berat produk terisi atau tidak, (2) zona pengiriman sudah dibuat dan mencakup wilayah tujuan, (3) alamat toko (origin) sudah diisi sampai tingkat kecamatan. Kalau ketiganya sudah benar tapi ongkir tetap kosong, lanjut ke pengecekan lisensi dan cache. Pada plugin AgenWebsite Shipping, status lisensi yang habis akan menonaktifkan seluruh perhitungan ongkir di checkout — ini penyebab yang paling sering terlewat karena tampilannya persis sama seperti salah setting.
Cek cepat: 30 detik pertama sebelum utak-atik setting
Sebelum masuk ke halaman pengaturan, lakukan satu tes ini dulu. Buka toko Anda dalam mode penyamaran (incognito), masukkan satu produk ke keranjang, lalu isi alamat tujuan dengan alamat lengkap di Jakarta — provinsi, kota, dan kecamatan sekaligus.
Hasil tes ini langsung mempersempit penyebabnya:
- Ongkir muncul di Jakarta tapi tidak di kota lain → masalah ada di zona pengiriman atau cakupan rute kurir. Lompat ke penyebab 1 dan 9.
- Ongkir tidak muncul di mana pun, termasuk Jakarta → masalah ada di produk, lisensi, atau alamat asal. Lompat ke penyebab 2, 5, dan 8.
- Ongkir muncul di incognito tapi tidak di browser biasa → ini murni cache. Lompat ke penyebab 6.
Tes tiga puluh detik ini menghemat banyak waktu. Tanpa ini, orang biasanya mulai dari mengubah setting yang sebenarnya sudah benar.
Penyebab 1: Zona pengiriman belum diatur atau tidak mencakup tujuan
WooCommerce tidak akan menampilkan metode pengiriman apa pun kalau alamat pembeli tidak masuk ke zona mana pun yang Anda buat. Ini penyebab paling umum, dan paling sering luput karena zona terlihat “sudah ada” padahal cakupannya sempit.
Gejalanya: ongkir muncul untuk sebagian kota tapi hilang untuk kota lain, terutama luar Jawa.
Cara memperbaiki: masuk ke WooCommerce → Settings → Shipping. Pastikan ada satu zona yang wilayahnya diisi Indonesia secara utuh, bukan daftar provinsi satu per satu. Kalau Anda memakai daftar provinsi manual, setiap provinsi yang lupa dimasukkan akan jadi lubang. Zona dengan cakupan negara penuh jauh lebih aman.
Sisakan juga satu zona cadangan paling bawah tanpa batasan wilayah, isi dengan satu metode pengiriman sederhana. Zona ini berfungsi sebagai jaring pengaman supaya pembeli di wilayah yang belum terpetakan tetap bisa menyelesaikan pesanan.
Penyebab 2: Berat produk kosong atau nol
Semua perhitungan ongkir di Indonesia berbasis berat. Kalau produk tidak punya berat, plugin tidak punya dasar untuk menghitung, dan hasilnya kosong — bukan error, hanya tidak muncul.
Gejalanya: ongkir hilang hanya kalau produk tertentu masuk keranjang. Produk lain aman.
Cara memperbaiki: buka produk yang bermasalah, masuk tab Shipping, isi kolom Weight. Satuan default WooCommerce Indonesia biasanya kilogram, jadi barang 250 gram ditulis 0.25, bukan 250. Kesalahan satuan ini sendiri sering bikin ongkir melonjak tidak masuk akal.
Untuk produk yang sudah terlanjur banyak, Anda bisa mengisi berat massal lewat Products → pilih semua → Bulk edit. Isi berat default yang masuk akal dulu, baru dirapikan per produk belakangan. Lebih baik berat perkiraan daripada berat kosong.
Jangan lupa produk variasi. Berat pada produk induk tidak otomatis menurun ke variasinya — tiap variasi punya kolom berat sendiri, dan variasi tanpa berat akan menghilangkan ongkir meski induknya sudah diisi.
Penyebab 3: Alamat tujuan belum lengkap sampai kecamatan
Tarif kurir di Indonesia dihitung sampai tingkat kecamatan, bukan kota. Selama pembeli baru memilih provinsi dan kota, plugin belum punya data yang cukup untuk memanggil tarif.
Gejalanya: ongkir muncul setelah pembeli menyelesaikan seluruh isian alamat, tapi kosong saat halaman baru dibuka. Ini sebenarnya perilaku normal yang sering disalahartikan sebagai kerusakan.
Cara memperbaiki: tidak ada yang perlu diperbaiki secara teknis, tapi ada yang perlu diperjelas ke pembeli. Pastikan dropdown kecamatan benar-benar tampil di checkout, dan tambahkan teks kecil di atas bagian pengiriman: “Pilih kecamatan untuk melihat ongkir.” Kalimat sekecil itu memangkas banyak pertanyaan masuk.
Kalau dropdown kecamatan tidak muncul sama sekali, berarti field alamat Indonesia tidak aktif. Periksa apakah ada plugin lain yang menimpa field alamat bawaan WooCommerce.
Penyebab 4: Metode pengiriman ada tapi nonaktif di zona
Metode pengiriman bisa terpasang di zona tapi statusnya mati. Dari halaman daftar zona, kondisi ini tidak selalu terlihat jelas.
Cara memperbaiki: klik masuk ke zona yang bersangkutan, jangan hanya melihat ringkasannya. Pastikan toggle di sebelah nama metode berwarna aktif. Sekalian periksa apakah ada metode lama dari plugin yang sudah tidak dipakai — metode yatim seperti ini kadang tetap terdaftar dan mengacaukan urutan tampil.
Penyebab 5: Lisensi plugin sudah habis masa berlakunya
Ini penyebab yang paling menipu, karena tidak menimbulkan pesan error di halaman checkout. Dari sisi pembeli, tampilannya persis sama seperti salah setting.
Pada AgenWebsite Shipping, lisensi yang habis membuat perhitungan ongkir berhenti total. Plugin tetap terpasang dan menu pengaturannya tetap terbuka, tapi checkout tidak lagi menampilkan tarif apa pun.
Cara memperbaiki: buka halaman pengaturan plugin dan lihat status lisensi beserta tanggal kedaluwarsanya. Kalau sudah lewat, perpanjang dari akun Anda, lalu simpan ulang pengaturan supaya status tersegarkan.
Satu hal yang perlu diperhatikan: lisensi terkunci ke satu domain. Kalau Anda baru memindahkan toko dari staging ke domain live, atau baru ganti nama domain, lisensi masih menunjuk ke alamat lama dan hasilnya sama seperti lisensi mati. Aktivasi ulang di domain baru menyelesaikan ini.
Penyebab 6: Cache menahan tampilan checkout yang lama
Halaman checkout tidak boleh di-cache. Kalau ikut tersimpan, pembeli melihat versi halaman dari sebelum setting ongkir Anda benar.
Gejalanya: ongkir normal di mode penyamaran tapi hilang di browser biasa, atau perubahan setting tidak berpengaruh sama sekali.
Cara memperbaiki: di plugin cache yang Anda pakai, kecualikan halaman /cart/, /checkout/, dan /my-account/ dari cache. Kalau memakai CDN, kecualikan juga di sana. Setelah itu bersihkan seluruh cache, termasuk cache browser Anda sendiri.
Fitur penggabungan dan penundaan JavaScript juga sering jadi biang masalah. Perhitungan ongkir berjalan lewat AJAX; kalau skripnya ditunda atau digabung sembarangan, permintaan tarif tidak pernah terkirim. Coba matikan optimasi JavaScript sementara untuk memastikan.
Penyebab 7: Konflik antara blocks checkout dan classic checkout
WooCommerce versi baru memakai checkout berbasis blok. Sebagian plugin ongkir, termasuk yang mengandalkan field alamat Indonesia, belum sepenuhnya cocok dengan tampilan blok ini.
Gejalanya: dropdown kecamatan tidak muncul, atau bagian pengiriman tampil kosong padahal semua setting sudah benar.
Cara memperbaiki: ganti halaman checkout ke classic checkout. Buka halaman Checkout di editor, hapus blok checkout, lalu ganti isinya dengan shortcode . Lakukan hal serupa di halaman keranjang dengan .
Penyebab 8: Alamat asal pengiriman belum diset
Ongkir dihitung dari titik asal ke titik tujuan. Tanpa titik asal, tidak ada yang bisa dihitung.
Cara memperbaiki: pastikan alamat toko terisi lengkap di WooCommerce → Settings → General, lalu — ini bagian yang sering terlewat — set juga alamat asal di dalam pengaturan plugin ongkir itu sendiri. Keduanya terpisah. Alamat asal di plugin harus dipilih sampai tingkat kecamatan, sama seperti alamat tujuan.
Kalau Anda mengirim dari lebih dari satu gudang, pastikan setiap origin sudah terdaftar. Origin yang belum terdaftar akan membuat produk dari gudang tersebut kehilangan ongkir sementara produk lain tetap normal.
Penyebab 9: Rute atau layanan memang tidak dilayani kurir
Kalau delapan penyebab di atas sudah bersih, kemungkinan terakhir adalah rutenya memang tidak tersedia. Ini bukan kerusakan — kurir memang tidak melayani semua kecamatan untuk semua jenis layanan.
Layanan kilat dan kurir instan paling sering terkena. Layanan same-day hanya tersedia di kota besar dengan radius terbatas, dan kurir instan seperti GoSend atau GrabExpress punya syarat jarak serta jam operasional sendiri.
Cara memperbaiki: selalu aktifkan minimal dua sampai tiga kurir. Dengan begitu, kalau satu kurir tidak melayani satu kecamatan, kurir lain menutupinya. Toko yang hanya mengandalkan satu kurir akan rutin kehilangan pesanan dari daerah tanpa pernah tahu penyebabnya.
Urutan pengecekan yang disarankan
Kalau Anda ingin satu daftar yang bisa diikuti berurutan, pakai ini:
- Tes di mode penyamaran dengan alamat Jakarta lengkap
- Cek berat produk yang ada di keranjang
- Cek zona pengiriman mencakup Indonesia penuh
- Cek alamat asal terisi sampai kecamatan
- Cek status dan tanggal lisensi
- Bersihkan cache dan kecualikan halaman checkout
- Pastikan checkout memakai versi classic
- Tambah kurir kedua sebagai cadangan
Delapan langkah ini menyelesaikan hampir semua kasus. Kalau sesudah semuanya ongkir tetap tidak muncul, kumpulkan tiga informasi berikut sebelum menghubungi support: alamat tujuan yang dipakai saat tes, isi keranjang beserta beratnya, dan tangkapan layar halaman pengaturan plugin. Tiga hal itu biasanya cukup untuk menemukan penyebabnya tanpa bolak-balik bertanya.
FAQ: Pertanyaan yang Sering Ditanyakan
Kenapa ongkir muncul di keranjang tapi hilang di checkout?
Biasanya karena halaman checkout ikut tersimpan di cache sementara halaman keranjang tidak, atau karena halaman checkout memakai versi blok sedangkan keranjang masih classic. Kecualikan kedua halaman dari cache dan samakan tipenya.
Apakah ongkir bisa muncul tanpa mengisi berat produk?
Tidak. Seluruh tarif kurir Indonesia dihitung berdasarkan berat, jadi produk tanpa berat tidak bisa dihitung. Kalau produk Anda sangat ringan dan seragam, isi berat minimum yang wajar seperti 0.1 kilogram agar perhitungan tetap berjalan.
Ongkir hilang setelah saya pindah domain. Kenapa?
Lisensi plugin terkunci pada satu domain. Setelah pindah, lisensi masih menunjuk alamat lama sehingga perhitungan ongkir berhenti. Aktivasi ulang lisensi di domain baru akan mengembalikannya.
Apakah harus pakai RajaOngkir supaya ongkir muncul?
Tidak. AgenWebsite Shipping memakai API pengiriman sendiri yang terhubung langsung ke tiap kurir, jadi Anda tidak perlu mendaftar akun pihak ketiga atau menyiapkan API key terpisah. Ongkir berjalan langsung setelah plugin diaktifkan dan alamat asal diisi.
Kenapa GoSend dan GrabExpress tidak pernah muncul di checkout saya?
Kurir instan punya syarat tersendiri: jarak antara alamat asal dan tujuan harus dalam radius layanan, berat serta dimensi paket dibatasi, dan pemesanan hanya bisa pada jam operasional. Di luar syarat itu kurir instan tidak akan ditampilkan meski sudah diaktifkan.
Berapa kurir yang sebaiknya saya aktifkan?
Minimal dua sampai tiga. Selain jadi cadangan saat satu kurir tidak melayani rute tertentu, memberi pilihan juga menaikkan konversi karena pembeli bisa memilih antara yang termurah dan yang tercepat.
Kesimpulan
Ongkir yang tidak muncul jarang disebabkan plugin yang rusak. Hampir selalu ada satu data yang kosong — berat, zona, alamat asal — atau satu status yang terlewat seperti lisensi dan cache. Yang membuat masalah ini terasa rumit bukan tingkat kesulitannya, tapi banyaknya kemungkinan penyebab.
Pakai urutan pengecekan di atas dan mulai dari tes tiga puluh detik. Sebagian besar toko menemukan penyebabnya sebelum sampai langkah kelima.
AgenWebsite Shipping mendukung 13 kurir Indonesia dengan cek ongkir otomatis di checkout dan generate resi satu klik dari dashboard WordPress, memakai API pengiriman sendiri tanpa akun pihak ketiga. Sudah dipakai 900+ toko aktif dengan rating 4,6★ di WordPress.org. Coba gratis di sini.
Tinggalkan Balasan