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'",
出貨評級規則
出貨評級規則
控制運輸選項在結帳時的可用性。
GraphQL
進階規則為您提供工具來細緻調整運輸選項,考慮重量、交付地點、商品價值或 SKU 等因素。建立規則以在適當情況下提供運輸服務,並在不需要時隱藏。
按重量
使用進階規則為運輸服務級別設定重量限制。當您透過費率表設定了自訂服務且具有特定的重量限制時,這特別有用。雖然 Zonos 知道已連線運輸服務的重量限制,但我們不知道您透過費率表設定的任何自訂服務的重量限制。請向您的自訂承運商查詢任何重量限制,並透過進階規則應用這些限制。
範例:不顯示 4.4 磅以下訂單的運輸選項
假設您已透過費率表新增 DHL Packet International 作為運輸選項。該運輸服務不適用於重量少於 4.4 磅的訂單。您需要限制 DHL Packet International,使其在訂單重量少於 4.4 磅時不會顯示為運輸選項。為此,在
ruleCreatemutation 中輸入以下輸入作為變數。{"input": {"name": "Restrict shipping under 4.4 lbs","description": "Turn off shipping service level when the order weighs less than 4.4 lbs","condition": ":weight: < 4.4 pound and :service_level_name: any_contains \"DHL Packet International\"","action": "enabled = false","context": "SHIPMENT_RATING_BUFFER"}}按地址
進階規則也可以幫助您為運輸服務級別建立地址限制。您可以使用地址限制來:
範例:將運輸設為對某些郵遞區號不可用
假設您新增了一個名為「Express」的自訂運輸選項,該選項不會運送到加拿大的偏遠郵遞區號,如 X0A 0A0。在
ruleCreatemutation 中輸入以下輸入作為變數。{"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"}}範例:僅向選定購物者提供免運費
假設您有一位經常向您購買的影響者,您想為他們提供免運費,但您不想讓其他購物者獲得免運費。您已在運輸設定中設定了免運費規則,您的下一步是將其限制為僅限於您的影響者的地址。在
ruleCreatemutation 中輸入以下輸入作為變數。{"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"}}按商品價值
高價值商品在國際運輸時通常需要額外考慮。使用進階規則來強制更快的運輸選項、允許免運費選項,以及限制購物車以避免申報電子出口資訊。
範例:移除除免運費外的所有選項
假設您已建立了超過 150 美元訂單的免運費選項。您想隱藏其他運輸選項(Express 和 Priority)當此服務可用時。在
ruleCreatemutation 中輸入以下輸入作為變數。{"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 美元的訂單運往加拿大,因為加拿大不需要電子出口資訊申報。在
ruleCreatemutation 中輸入以下輸入作為變數。{"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
如果您希望某些商品僅使用特定運輸選項,請建立進階規則以在該 SKU 在購物車中時停用所有其他運輸選項。
範例:限制 SKU 不使用 Express 運輸
假設您不想讓 SKU 為 123456 的商品透過 Express 運輸服務級別運送。在
ruleCreatemutation 中輸入以下輸入作為變數。{"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時,請先驗證它們是否正確編寫,然後再實施規則。使用validatemutation 以確保使用正確的語法。分別輸入action和condition作為expression,並確保使用正確的ruleContext。mutation validate {validateExpression(input: {expression: ":items_total: > 150 USD and :service_level_name: ne \"Free Shipping\""ruleContext: "SHIPMENT_RATING_BUFFER"})}這個頁面有幫助嗎?