Cara Mengatur Field Billing di Checkout (IndoOngkir Suite)
Panduan Billing & Shipping Fields IndoCheckout: first_name, last_name, company, email, phone, show/required/label/placeholder, dan catatan Classic vs Block.
Field billing dipakai untuk mengidentifikasi pembeli: nama, email, telepon, dan data perusahaan. Di IndoCheckout, pengaturan billing (dan pasangan shipping-nya) dikelola dalam satu tabel Billing & Shipping Fields karena plugin memakai mode single fields: perubahan pada billing otomatis diterapkan ke field shipping dengan ID paralel (shipping_*).
Perlu diingat, beberapa opsi punya efek ikutannya. Menyembunyikan email bisa mengubah perilaku guest checkout WooCommerce. Menyembunyikan last_name di Classic Checkout akan membuat field nama depan otomatis melebar.
Prasyarat
- IndoCheckout Status aktif
- Sudah membaca Cara Mengatur IndoCheckout
Cara membuka pengaturan
- Buka WooCommerce → Pengaturan → IndoOngkir → IndoCheckout.
- Scroll ke tabel Billing & Shipping Fields.
- Edit kolom Show, Required, Label, Placeholder per baris.



Field yang tersedia
| ID (ditampilkan) | Default show | Default required | Label default | Catatan |
|---|---|---|---|---|
first_name |
yes | yes | Nama Depan | Urutan prioritas mengatur posisi relatif vs shipping |
last_name |
yes | no | Nama Belakang | Selalu di bawah first_name. Di Block: tidak bisa disembunyikan |
company |
no | no | Nama Perusahaan | Show/required editable |
address |
(bundel) | - | - | Mengontrol blok alamat; field detail di Address Fields |
email |
yes | yes | (1) Hanya Classic Checkout untuk show/hidden dan dampak guest checkout | |
phone |
yes | yes | No HP / Whatsapp | Hanya jika WooCommerce < 10.8.0. Versi baru: kelola di Address Fields |
Kolom tabel
| Kolom | Fungsi |
|---|---|
| Show | yes = tampil, no = sembunyikan field |
| Required | yes = wajib, no = opsional |
| Label | Teks label kustom |
| Placeholder | (2) Hanya berlaku penuh di Classic Checkout (shortcode) |
Catatan footer tabel (dari plugin)
- Pengaturan email hanya berlaku untuk
[woocommerce_checkout]Classic Checkout. - Placeholder hanya berlaku penuh di Classic Checkout.
- last_name selalu di bawah first_name; di Checkout Block last_name tidak bisa disembunyikan.
- Untuk menyembunyikan seluruh bagian shipping di checkout, set Force shipping to the customer billing address di WooCommerce → Pengaturan → Pengiriman → Opsi pengiriman.
Langkah-langkah
1. Atur nama pelanggan
- Atur first_name dan last_name: centang show dan required jika nama wajib diisi pelanggan.
- Jika hanya satu field nama yang diinginkan di Classic Checkout, sembunyikan last_name (
Show = no). Field nama depan otomatis melebar (form-row-wide). - Simpan.
2. Atur email dan telepon
- Biarkan email tampil jika Anda ingin pelanggan bisa membuat akun atau menerima email order standar WooCommerce.
- Jika toko hanya komunikasi via WhatsApp, pertimbangkan menyembunyikan email hanya setelah memahami dampaknya ke guest checkout (lihat tutorial billing email).
- Untuk WooCommerce 10.8.0+, atur telepon di Address Fields, bukan di tabel ini.
3. Atur perusahaan (opsional)
- Set company Show = yes untuk B2B atau faktur perusahaan.
- Set Required = yes jika wajib untuk semua order B2B.
4. Verifikasi urutan dengan alamat
- Posisi blok address relatif terhadap nama ditentukan oleh prioritas internal (billing vs shipping address priority).
- Uji checkout: urutan umum Indonesia = nama → kontak → alamat lengkap.
Cara memastikan berhasil
- Field billing tampil/sembunyi sesuai tabel admin
- Classic Checkout: placeholder kustom muncul di input
- Menyembunyikan company/phone memicu filter WooCommerce
woocommerce_checkout_*_fieldmelalui IndoCheckout
Catatan dan troubleshooting
Email disembunyikan tetapi guest checkout tidak bisa dimatikan
- Ini perilaku sengaja: tanpa email, WooCommerce memaksa guest checkout. Lihat Billing Email dan Guest Checkout
Perubahan tidak berlaku di Checkout Block
- Email show/hide dan placeholder terbatas di Block
- last_name tetap tampil di Block
Shipping fields tidak ada tabel terpisah
- Normal pada build saat ini (
use_single_fields = true). Field shipping mengikuti billing otomatis.
Konflik dengan Digital Product Checkout / plugin lain
- Nonaktifkan salah satu pengatur field atau prioritas filter bisa saling timpa