DOCS

Aturan penilaian pengiriman

Aturan penilaian pengiriman

Kontrol kapan opsi pengiriman tersedia di checkout Anda.

GraphQL

Aturan lanjutan memberikan Anda alat untuk menyesuaikan pilihan pengiriman Anda dengan hati-hati, mempertimbangkan faktor-faktor seperti berat, lokasi pengiriman, nilai barang, atau SKU. Buat aturan untuk membuat layanan pengiriman tersedia dalam keadaan yang tepat dan disembunyikan saat tidak diinginkan.

Kondisi pada tarif tetap: Jika Anda menggunakan opsi pengiriman tarif tetap, pertimbangkan untuk membangun kondisi untuk berat atau nilai keranjang langsung ke dalam kondisi pengiriman tarif tetap, daripada membuat aturan lanjutan.

Berdasarkan berat 

Gunakan aturan lanjutan untuk menetapkan pembatasan berat untuk tingkat layanan pengiriman Anda. Ini sangat berguna ketika Anda telah menyiapkan layanan kustom melalui lembar tarif dan memiliki keterbatasan berat tertentu. Sementara Zonos mengetahui keterbatasan berat layanan pengiriman yang terhubung, kami tidak mengetahui keterbatasan berat dari layanan kustom apa pun yang Anda siapkan melalui lembar tarif. Tanyakan kepada operator kustom Anda tentang batasan berat apa pun dan terapkan melalui aturan lanjutan.

Bayangkan Anda telah menambahkan DHL Packet International sebagai opsi pengiriman melalui lembar tarif. Layanan pengiriman ini tidak tersedia untuk pesanan yang beratnya kurang dari 4,4 lbs. Anda perlu membatasi DHL Packet International agar tidak muncul sebagai opsi pengiriman ketika pesanan beratnya kurang dari 4,4 lbs. Untuk melakukan ini, masukkan input berikut sebagai variabel dalam ruleCreate mutasi.

1{
2 "input": {
3 "name": "Restrict shipping under 4.4 lbs",
4 "description": "Turn off shipping service level when the order weighs less than 4.4 lbs",
5 "condition": ":weight: < 4.4 pound and :service_level_name: any_contains \"DHL Packet International\"",
6 "action": "enabled = false",
7 "context": "SHIPMENT_RATING_BUFFER"
8 }
9}

Berdasarkan alamat 

Aturan lanjutan juga dapat membantu Anda membuat batasan alamat untuk tingkat layanan pengiriman Anda. Anda dapat menggunakan batasan alamat untuk:

  • Terapkan batasan layanan ke lembar tarif—Sementara layanan pengiriman yang terhubung secara langsung menanyakan kepada operator jika layanan tersedia ke alamat tertentu, layanan yang disiapkan melalui lembar tarif akan selalu mengembalikan tarif pengiriman yang terkait dengan negara tujuan. Jika layanan tidak tersedia untuk kode pos tertentu (sering kali area terpencil), buat aturan untuk tidak memungkinkan opsi pengiriman tersebut ke kode pos itu.
  • Tampilkan pengiriman gratis hanya kepada pengguna pilihan—Apakah Anda pernah ingin menawarkan pengiriman gratis kepada pembeli tertentu, seperti influencer atau grosir? Dengan membatasi opsi pengiriman berdasarkan alamat, Anda dapat memastikan bahwa pengiriman gratis hanya tersedia untuk individu yang ingin Anda targetkan.

Misalkan Anda menambahkan opsi pengiriman kustom yang disebut "Express" yang tidak mengirim ke kode pos terpencil di Kanada, seperti X0A 0A0. Masukkan input berikut sebagai variabel dalam ruleCreate mutasi.

1{
2 "input": {
3 "name": "Restrict shipping",
4 "description": "Do not allow rate sheet to be a shipping option when the postal code is X0A 0A0",
5 "condition": ":service_level_name: any_contains \"Express\" and :ship_to_postal_code: == 'X0A 0A0' and :ship_to_country: == CA",
6 "action": "enabled = false",
7 "context": "SHIPMENT_RATING_BUFFER"
8 }
9}

Katakanlah Anda memiliki seorang influencer yang sering membeli dari Anda dan Anda ingin menawarkan mereka pengiriman gratis, tetapi Anda tidak ingin pembeli lain mendapatkan pengiriman gratis. Anda telah menyiapkan aturan pengiriman gratis di pengaturan pengiriman Anda, dan langkah selanjutnya adalah membatasinya hanya ke alamat influencer Anda. Masukkan input berikut sebagai variabel dalam ruleCreate mutasi.

Karena baris alamat yang sama dapat ada di banyak area, bijaksana untuk memasangkannya dengan kode pos. Namun, ini tidak berfungsi dengan baik jika Anda ingin memungkinkan beberapa alamat di kode pos berbeda. Jika Anda ingin melakukan ini, silakan beri tahu kami, sehingga kami dapat memprioritaskan pembangunan kemampuan ini untuk Anda.

1{
2 "input": {
3 "name": "Restrict free shipping",
4 "description": "Turn off free shipping when the address is anywhere but 123 Main St in the postal code 12345.",
5 "condition": ":service_level_name: == \"Free shipping\" and :ship_to_line_1: none_matches '123 Main St' and :ship_to_postal_code: none_matches '12345'",
6 "context": "SHIPMENT_RATING_BUFFER"
7 }
8}

Berdasarkan nilai barang 

Barang bernilai tinggi sering kali memerlukan pertimbangan tambahan saat mengirim secara internasional. Gunakan aturan lanjutan untuk memaksa opsi pengiriman yang lebih cepat, memungkinkan opsi pengiriman gratis, dan batasi keranjang untuk menghindari pengajuan EEI.

  • Kecepatan pengiriman—Anda sering kali ingin memastikan mereka mengirim dengan cepat untuk mengurangi risiko masalah selama pengiriman. Jika Anda menjual barang bernilai tinggi dan rendah, Anda mungkin ingin menawarkan opsi pengiriman berbeda berdasarkan nilai pesanan.
  • Pengiriman gratis—Atau, Anda mungkin ingin hanya menampilkan opsi pengiriman gratis ketika pesanan melebihi jumlah tertentu. Anda sudah dapat membangun kondisi nilai untuk pengiriman gratis saat Anda menyiapkan aturan pengiriman gratis. Namun, jika Anda ingin menyembunyikan semua opsi pengiriman lain saat pengiriman gratis berlaku, buat aturan untuk melakukannya.
  • Hindari pengajuan EEI—Jika Anda ingin menghindari pengajuan EEI karena repot, Anda dapat memutuskan untuk tidak memungkinkan opsi pengiriman apa pun ketika keranjang melebihi 2500 USD. Karena Kanada tidak memerlukan EEI, Anda dapat menulis aturan untuk tetap memungkinkan pesanan bernilai tinggi ke Kanada.

Katakanlah Anda telah membuat opsi pengiriman gratis untuk pesanan di atas 150 USD. Anda ingin menyembunyikan opsi pengiriman lain (Express dan Priority) saat layanan ini tersedia. Masukkan input berikut sebagai variabel dalam ruleCreate mutasi.

1{
2 "input": {
3 "name": "Only show free shipping over 150 USD",
4 "description": "Turn off all other shipping service levels when the order value is more than 150 USD",
5 "condition": ":items_total: > 150 USD and :service_level_name: ne \"Free Shipping\"",
6 "action": "enabled = false",
7 "context": "SHIPMENT_RATING_BUFFER"
8 }
9}

Misalkan Anda menawarkan layanan Express dan Priority, tetapi Anda tidak ingin mereka menjadi pilihan di checkout untuk pesanan apa pun di atas 2500 USD. Anda masih ingin memungkinkan pesanan di atas 2500 USD ke Kanada, karena Kanada tidak memerlukan pengajuan EEI. Masukkan input berikut sebagai variabel dalam ruleCreate mutasi.

EEI umumnya diperlukan ketika nilai item dengan kode HS yang sama melebihi 2500 USD (belum tentu ketika pesanan melebihi 2500 USD, karena Anda dapat memiliki pesanan 2500 USD dengan dua item berbeda, masing-masing 1500 USD). Dengan mempertimbangkan hal itu, aturan di bawah ini tidak sepenuhnya selaras dengan EEI, tetapi akan membatasi opsi pengiriman saat diperlukan. Ini juga dapat membatasi opsi pengiriman ketika EEI tidak diperlukan (seperti dalam dua item yang berbeda, masing-masing senilai 1500 USD).

1{
2 "input": {
3 "name": "Restrict all shipping over 2500 USD",
4 "description": "Turn off all shipping service levels when the order value is more than 2500 USD, except to Canada",
5 "condition": ":amount: > 2500 USD and :service_level: any_contains \"Express,Priority\" and :ship_to_country: ne CA",
6 "action": "enabled = false",
7 "context": "SHIPMENT_RATING_BUFFER"
8 }
9}

Berdasarkan SKU 

Catatan: Batasan negara berdasarkan SKU harus dikelola di Katalog. Aturan lanjutan hanya boleh digunakan ketika Katalog tidak cukup (seperti kondisi yang spesifik untuk tingkat layanan pengiriman).

Jika Anda ingin item tertentu hanya menggunakan opsi pengiriman tertentu, buat aturan lanjutan untuk menonaktifkan semua opsi pengiriman lain ketika SKU itu ada di keranjang.

Katakanlah Anda tidak ingin item dengan SKU 123456 mengirim melalui tingkat layanan pengiriman Express Anda. Masukkan input berikut sebagai variabel dalam ruleCreate mutasi.

1{
2 "input": {
3 "name": "Restrict shipping for items",
4 "description": "Turn off shipping service level when certain item is in the cart",
5 "condition": ":items.sku: any_matches '123456' and :service_level: any_contains \"Express\"",
6 "action": "enabled = false",
7 "context": "SHIPMENT_RATING_BUFFER"
8 }
9}

Kustomisasi 

Contoh dalam dokumen ini dapat diubah agar sesuai dengan skenario spesifik Anda. Ketika Anda menyesuaikan actions dan conditions, pastikan bahwa ditulis dengan benar sebelum mengimplementasikan aturan. Gunakan mutasi validate untuk memastikan sintaks yang tepat digunakan. Masukkan action dan condition secara terpisah sebagai expression dan pastikan ruleContext yang benar digunakan.

1mutation validate {
2 validateExpression(
3 input: {
4 expression: ":items_total: > 150 USD and :service_level_name: ne \"Free Shipping\""
5 ruleContext: "SHIPMENT_RATING_BUFFER"
6 }
7 )
8}
Pesan demo

Apakah halaman ini bermanfaat?