按重量
使用進階規則為運輸服務級別設定重量限制。當您透過費率表設定了自訂服務且具有特定的重量限制時,這特別有用。雖然 Zonos 知道已連線運輸服務的重量限制,但我們不知道您透過費率表設定的任何自訂服務的重量限制。請向您的自訂承運商查詢任何重量限制,並透過進階規則應用這些限制。
範例:不顯示 4.4 磅以下訂單的運輸選項
假設您已透過費率表新增 DHL Packet International 作為運輸選項。該運輸服務不適用於重量少於 4.4 磅的訂單。您需要限制 DHL Packet International,使其在訂單重量少於 4.4 磅時不會顯示為運輸選項。為此,在 ruleCreate mutation 中輸入以下輸入作為變數。
{ "input": { "name": "Restrict shipping under 4.4 lbs", "description": "Turn off shipping service level when the order weighs less than 4.4 lbs"按地址
進階規則也可以幫助您為運輸服務級別建立地址限制。您可以使用地址限制來:
- 對費率表應用服務限制 ——雖然已連線運輸服務會直接向承運商詢問該服務是否可用於某個地址,但透過費率表設定的服務將始終傳回與目的地國家相關聯的運輸費率。如果該服務對某些郵遞區號(通常是偏遠地區)不可用,請建立規則以不允許該運輸選項到達該郵遞區號。
- 僅向選定使用者顯示免運費 ——您是否想過為特定購物者(如影響者或批發商)提供免運費?透過根據地址限制運輸選項,您可以確保免運費僅適用於您想要的目標客戶。
範例:將運輸設為對某些郵遞區號不可用
假設您新增了一個名為「Express」的自訂運輸選項,該選項不會運送到加拿大的偏遠郵遞區號,如 X0A 0A0。在 ruleCreate mutation 中輸入以下輸入作為變數。
{ "input": { "name": "Restrict shipping", "description": "Do not allow rate sheet to be a shipping option when the postal code is X0A 0A0", "condition": ":service_level_name: any_contains \"Express\" and :ship_to_postal_code: == 'X0A 0A0' and :ship_to_country: == CA", "action": "enabled = false", "context": "SHIPMENT_RATING_BUFFER" }}範例:僅向選定購物者提供免運費
假設您有一位經常向您購買的影響者,您想為他們提供免運費,但您不想讓其他購物者獲得免運費。您已在運輸設定中設定了免運費規則,您的下一步是將其限制為僅限於您的影響者的地址。在 ruleCreate mutation 中輸入以下輸入作為變數。
由於相同的地址行 1 可能存在於多個地區,將其與郵遞區號配對是明智的。但是,如果您想允許不同郵遞區號中的多個地址,這可能不適用。如果您想這樣做,請告訴我們,以便我們可以優先構建此功能。
{ "input": { "name": "Restrict free shipping", "description": "Turn off free shipping when the address is anywhere but 123 Main St in the postal code 12345.", "condition": ":service_level_name: == \"Free shipping\" and :ship_to_line_1: none_matches '123 Main St' and :ship_to_postal_code: none_matches '12345'", "context": "SHIPMENT_RATING_BUFFER" }}按商品價值
高價值商品在國際運輸時通常需要額外考慮。使用進階規則來強制更快的運輸選項、允許免運費選項,以及限制購物車以避免申報電子出口資訊。
- 運輸速度 ——您通常希望確保快速運送以降低運輸過程中出現問題的風險。如果您銷售高價值和低價值商品,您可能希望根據訂單的價值提供不同的運輸選項。
- 免運費 ——或者,您可能只想在訂單超過一定金額時顯示免運費選項。您已經可以在設定免運費規則時為免運費建立價值條件。但是,如果您想在免運費適用時隱藏所有其他運輸選項,請建立規則來執行此操作。
- 避免申報電子出口資訊 ——如果您想避免由於麻煩而申報電子出口資訊,您可能決定在購物車超過 2500 美元時不允許任何運輸選項。由於加拿大不需要電子出口資訊,您可以編寫規則以仍然允許高價值訂單運往加拿大。
範例:移除除免運費外的所有選項
假設您已建立了超過 150 美元訂單的免運費選項。您想隱藏其他運輸選項(Express 和 Priority)當此服務可用時。在 ruleCreate mutation 中輸入以下輸入作為變數。
{ "input": { "name": "Only show free shipping over 150 USD", "description": "Turn off all other shipping service levels when the order value is more than 150 USD", "condition": ":items_total: > 150 USD and :service_level_name: ne \"Free Shipping\"", "action": "enabled = false", "context": "SHIPMENT_RATING_BUFFER" }}範例:關閉超過 2500 美元的所有運輸選項
假設您提供 Express 和 Priority 服務,但您不希望它們在結帳時成為任何超過 2500 美元訂單的選項。您仍然希望允許超過 2500 美元的訂單運往加拿大,因為加拿大不需要電子出口資訊申報。在 ruleCreate mutation 中輸入以下輸入作為變數。
當相同 HS 編碼的商品價值超過 2500 美元時,通常需要電子出口資訊(不一定是訂單超過 2500 美元時,因為您可能有一個 2500 美元的訂單,其中有兩個不同的商品,每個 1500 美元)。考慮到這一點,下面的規則並不完全符合電子出口資訊,但將在需要時限制運輸選項。它也可能在不需要電子出口資訊時限制運輸選項(如兩個不同的商品,每個價值 1500 美元)。
{ "input": { "name": "Restrict all shipping over 2500 USD", "description": "Turn off all shipping service levels when the order value is more than 2500 USD, except to Canada", "condition": ":amount: > 2500 USD and :service_level: any_contains \"Express,Priority\" and :ship_to_country: ne CA", "action": "enabled = false", "context": "SHIPMENT_RATING_BUFFER" }}範例:限制 SKU 不使用 Express 運輸
假設您不想讓 SKU 為 123456 的商品透過 Express 運輸服務級別運送。在 ruleCreate mutation 中輸入以下輸入作為變數。
{ "input": { "name": "Restrict shipping for items", "description": "Turn off shipping service level when certain item is in the cart", "condition": ":items.sku: any_matches '123456' and :service_level: any_contains \"Express\"", "action": "enabled = false", "context": "SHIPMENT_RATING_BUFFER" }}自訂
本文件中的範例可以改進以符合您的特定情況。當您調整 actions 和 conditions 時,請先驗證它們是否正確編寫,然後再實施規則。使用 validate mutation 以確保使用正確的語法。分別輸入 action 和 condition 作為 expression,並確保使用正確的 ruleContext。
mutation validate { validateExpression( input: { expression: ":items_total: > 150 USD and :service_level_name: ne \"Free Shipping\"" ruleContext: "SHIPMENT_RATING_BUFFER" } )}
出貨評級規則
控制運輸選項在結帳時的可用性。
GraphQL
進階規則為您提供工具來細緻調整運輸選項,考慮重量、交付地點、商品價值或 SKU 等因素。建立規則以在適當情況下提供運輸服務,並在不需要時隱藏。