这些指南重点介绍了订餐优惠的要求和示例。
资格要求和政策
本部分重点介绍了合作伙伴在提供优惠时必须遵守的重要资格条件。请务必在沙盒 Feed 测试期间测试您计划发布的所有优惠类型。如果您不确定某项优惠是否符合条件,请与您的 Google 联系人联系。
排除个性化优惠和一次性优惠
为确保提供优质且一致的用户体验,合作伙伴不得提供仅限特定用户子集使用的优惠(例如,首次注册优惠或基于用户算法生成的优惠)。如果优惠在优惠着陆页上向所有用户显示,则允许提供适用于所有用户或适用于在特定餐厅首次下单的所有用户的平台级优惠。也允许提供面向所有用户但需要订阅的优惠。
优惠条件必须在优惠 Feed 和优惠网址着陆页中明确说明。无论用户是否登录您的网站或应用,优惠都必须在优惠着陆页上向所有用户显示。
含优惠券代码的优惠
某些优惠需要用户输入优惠券代码,例如“应用代码 SAVE20 即可享受总账单八折优惠”。请务必注意,Google 不会显示优惠券定义中的优惠券代码。合作伙伴可以在 OfferDetails.offer_display_text 中添加此信息,以便向用户显示。如果优惠券包含在 offer_display_text 或 coupon 字段中,则还必须在优惠着陆页上显示。基于优惠券的优惠通常分为两类:
- 在结账时自动向来自 Google 的任何用户显示优惠券的优惠。这些是允许的。
- 如果优惠要求用户在结账时输入优惠券代码,但未在优惠网址着陆页上提供有关如何应用优惠券代码的说明,或者在用户点击优惠网址后未自动应用优惠券,则不允许投放。
优惠内容和结构
本部分详细介绍了 Feed 中提供的优惠的内容和结构要求,包括结构化元数据的示例。
优惠显示文字和优惠规范
OfferDetails.offer_display_text 是必需字段,用作简明标题,以便在 Google 搜索的优惠部分中立即显示,例如“立减 10 美元”或“节省 15%”。
OfferDetails.offer_specification 是 OfferDetails 中的必需“one of”字段。这意味着,必须且只能提供以下三个字段中的一个来指定交易:
discount_valuediscount_percentother_offer_detail_text
OfferDetails.other_offer_detail_text 字段是一个自由格式文本字段,用于在优惠无法表示为固定折扣值或百分比时补充 offer_display_text。如果 offer_display_text 已足以传达有关优惠的所有必要信息,则应使用与 offer_display_text 相同的文本填充 other_offer_detail_text 字段。不过,对于复杂的优惠,此字段应提供具体的奖励说明。
结构化元数据字段
为了提高优惠清晰度并实现更好的排名和过滤,合作伙伴必须在相应的结构化字段中提供优惠元数据。必须指定条款。建议您使用在优惠着陆页上向用户显示的详细条款来设置 terms.terms_and_conditions 字段。
订单总额和商品专属优惠
针对部分商品的优惠必须使用 offer_restrictions.inclusions 和 offer_restrictions.exclusions 字段来定义符合条件的商品。如果优惠针对的是特定商品,则 offer_display_text 中应包含商品名称。如果 offer_display_text 中包含商品名称,则无需设置 offer_restrictions.inclusions。
如果未设置 offer_restrictions.inclusions,或者 offer_display_text 中未包含商品名称,则系统会认为优惠适用于订单总金额。
订阅优惠
只要在用户登录或退出您的网站或应用时,优惠着陆页上向所有用户显示优惠,就允许提供订阅优惠。如果优惠需要订阅,您必须添加 OfferDetails.subscription 字段,并提供订阅详情。如果用户注册或拥有有效订阅,则应向其显示订阅优惠。
配送费优惠
配送费优惠必须使用 offer_category OFFER_CATEGORY_ADD_ON_FEE_REDUCTION_OFFER。这样,只有在与该营业地点的其他基础优惠搭配使用时,系统才会显示此优惠。配送费优惠不会显示为基础优惠。
JSON 示例
固定优惠 20 美元
示例:周二订单总额立减 20 美元,最低消费 15 美元
{ "offer_id": "offer-example-1-takeout", "offer_source": "OFFER_SOURCE_AGGREGATOR", "action_type": "ACTION_TYPE_FOOD_TAKEOUT", "offer_modes": ["OFFER_MODE_ONLINE_ORDER"], "offer_category": "OFFER_CATEGORY_BASE_OFFER", "offer_details": { "offer_display_text": "$20 off on Tuesdays", "discount_value": { "currency_code": "USD", "units": 20 }, "min_spend_value": { "currency_code": "USD", "units": 15 } }, "validity_periods": [ { "valid_period": { "valid_from_time": { "seconds": 1768953600 }, "valid_through_time": { "seconds": 1795219200 } }, "time_of_day": [ { "time_windows": { "open_time": { "hours": 9 }, "close_time": { "hours": 20, "minutes": 59, "seconds": 59 } }, "day_of_week": ["TUESDAY"] } ] } ], "offer_restrictions": { "combinable_with_other_offers": false }, "terms": { "terms_and_conditions": "For use only at the participating restaurant location on qualifying delivery or takeout orders with $15 minimum spend. Single use per order. Offer may not be combined with any other offers, discounts, or promotions. Valid only on Tuesdays." }, "entity_ids": ["dining-1"], "offer_url": "https://www.example-restaurant.com/offer/base_offer_1" }
折扣百分比优惠
两个示例优惠:商品级五折优惠和订单总金额九五折优惠。
[ { "offer_id": "offer-example-1-takeout", "offer_source": "OFFER_SOURCE_AGGREGATOR", "action_type": "ACTION_TYPE_FOOD_TAKEOUT", "offer_modes": ["OFFER_MODE_ONLINE_ORDER"], "offer_category": "OFFER_CATEGORY_BASE_OFFER", "offer_details": { "offer_display_text": "50% off on Berry Smoothie", "discount_percent": 50.0 }, "validity_periods": [ { "valid_period": { "valid_from_time": { "seconds": 1768953600 }, "valid_through_time": { "seconds": 1795219200 } } } ], "offer_restrictions": { "combinable_with_other_offers": true, "inclusions": [ {"description":"Berry Smoothie"} ] }, "terms": { "terms_and_conditions": "For use only at the participating restaurant location on qualifying delivery or takeout orders. Single use per order." }, "entity_ids": ["dining-1"], "offer_url": "https://www.example-restaurant.com/offer/base_offer_1" }, { "offer_id": "offer-example-2-takeout", "offer_source": "OFFER_SOURCE_AGGREGATOR", "action_type": "ACTION_TYPE_FOOD_TAKEOUT", "offer_modes": ["OFFER_MODE_ONLINE_ORDER"], "offer_category": "OFFER_CATEGORY_BASE_OFFER", "offer_details": { "offer_display_text": "5% off on all orders", "discount_percent": 5.0 }, "validity_periods": [ { "valid_period": { "valid_from_time": { "seconds": 1768953600 }, "valid_through_time": { "seconds": 1795219200 } } } ], "offer_restrictions": { "combinable_with_other_offers": false }, "terms": { "terms_and_conditions": "For use only at the participating restaurant location on qualifying delivery or takeout orders. Single use per order." }, "entity_ids": ["dining-1"], "offer_url": "https://www.example-restaurant.com/offer/base_offer_1" } ]
买一送一优惠
示例:买一送一开胃菜优惠,周一至周四有效
{ "offer_id": "offer-example-2-delivery", "offer_source": "OFFER_SOURCE_AGGREGATOR", "action_type": "ACTION_TYPE_FOOD_DELIVERY", "offer_modes": ["OFFER_MODE_ONLINE_ORDER"], "offer_category": "OFFER_CATEGORY_BASE_OFFER", "offer_details": { "offer_display_text": "Buy one appetizer, get one free", "other_offer_detail_text": "Buy one appetizer, get one free" }, "validity_periods": [ { "valid_period": { "valid_from_time": { "seconds": 1768953600 }, "valid_through_time": { "seconds": 1795219200 } }, "time_of_day": [ { "time_windows": { "open_time": { "hours": 10 }, "close_time": { "hours": 23, "minutes": 59, "seconds": 59 } }, "day_of_week": ["MONDAY", "TUESDAY", "WEDNESDAY", "THURSDAY"] } ] } ], "offer_restrictions": { "combinable_with_other_offers": true, "inclusions": [ { "description": "appetizers" } ] }, "terms": { "terms_and_conditions": "For use only at the participating restaurant location on qualifying delivery or takeout orders. Single use per order. Valid on all menu appetizers. Offer may be combined with any other offers, discounts, or promotions. Valid Monday through Thursday." }, "entity_ids": ["dining-1"], "offer_url": "https://www.example-restaurant.com/offer/base_offer_4" }
免运费优惠
示例:作为基础优惠的附加优惠提供免费送货服务。“免配送费”优惠将与该地点的“九折”基础优惠一起显示。
[ { "offer_id": "offerId1", "offer_source": "OFFER_SOURCE_AGGREGATOR", "action_type": "ACTION_TYPE_FOOD_DELIVERY", "offer_modes": ["OFFER_MODE_ONLINE_ORDER"], "offer_category": "OFFER_CATEGORY_BASE_OFFER", "offer_details": { "offer_display_text": "10% off on all orders", "discount_percent": 10.0 }, "validity_periods": [ { "valid_period": { "valid_from_time": { "seconds": 1768953600 }, "valid_through_time": { "seconds": 1795219200 } }, "time_of_day": [ { "day_of_week": ["MONDAY", "TUESDAY", "WEDNESDAY", "THURSDAY"] } ] } ], "offer_restrictions": { "combinable_with_other_offers": true, "combinable_offer_categories": ["OFFER_CATEGORY_ADD_ON_PAYMENT_OFFER"] }, "terms": { "terms_and_conditions": "For use only at the participating restaurant location on qualifying delivery or takeout orders. Single use per order. Offer may be combined with any other offers, discounts, or promotions." }, "entity_ids": ["dining-1"], "offer_url": "https://www.example-restaurant.com/offer/base_offer_5" }, { "offer_id": "offerId2", "offer_source": "OFFER_SOURCE_AGGREGATOR", "action_type": "ACTION_TYPE_FOOD_DELIVERY", "offer_modes": ["OFFER_MODE_ONLINE_ORDER"], "offer_category": "OFFER_CATEGORY_ADD_ON_FEE_REDUCTION_OFFER", "offer_details": { "offer_display_text": "$0 Delivery Fee", "other_offer_detail_text": "Free Delivery" }, "validity_periods": [ { "valid_period": { "valid_from_time": { "seconds": 1768953600 }, "valid_through_time": { "seconds": 1795219200 } } } ], "offer_restrictions": { "combinable_with_other_offers": true }, "terms": { "terms_and_conditions": "Delivery is free at the participating restaurant location on qualifying delivery or takeout orders. Single use per order. Offer may be combined with any other offers, discounts, or promotions." }, "entity_ids": ["dining-1"], "offer_url": "https://www.example-restaurant.com/offer/addon_offer_1" } ]
订阅型优惠
示例:用户注册或拥有有效订阅时,所有订单均可享受 10% 的折扣。
{ "offer_id": "offer-example-1-takeout", "offer_source": "OFFER_SOURCE_AGGREGATOR", "action_type": "ACTION_TYPE_FOOD_TAKEOUT", "offer_modes": ["OFFER_MODE_ONLINE_ORDER"], "offer_category": "OFFER_CATEGORY_BASE_OFFER", "offer_details": { "offer_display_text": "10% off on all orders", "discount_percent": 10.0 }, "subscription": { "name": "My Provider Subscription", "subscription_duration": { "seconds": 31536000 }, "cost": { "units": 50, "currency_code": "USD" } }, "validity_periods": [ { "valid_period": { "valid_from_time": { "seconds": 1768953600 }, "valid_through_time": { "seconds": 1795219200 } } } ], "offer_restrictions": { "combinable_with_other_offers": false }, "terms": { "terms_and_conditions": "For use only at the participating restaurant location on qualifying delivery or takeout orders with a subscription. Single use per order." }, "entity_ids": ["dining-1"], "offer_url": "https://www.example-restaurant.com/offer/subscription_offer_1" }
履单和限制
本部分详细介绍了与优惠履单规范相关的要求和最佳实践,以及与之相关的限制。
履单模式(外送和外带)
如果一项优惠同时适用于外送和自提,则必须在 Feed 中提供两项优惠。每个条目都必须有专用的 ActionType:
ACTION_TYPE_FOOD_DELIVERYACTION_TYPE_FOOD_TAKEOUT
这样可以确保进入合作伙伴网站的用户能够看到正确的履单上下文。
时间窗口
无论用户是否登录您的网站或应用,优惠都应在优惠着陆页上向所有用户显示。如果优惠在特定时间段内有效,您必须添加 validity_periods.valid_period 字段来指定有效期。这样可以防止优惠在时间段之外显示。如果优惠仅在一天中的特定时段内显示在优惠网址上,则还必须设置时间范围。例如,如果着陆页在餐厅关闭时不显示优惠,则您必须添加 TimeOfDayWindow 营业时间和打烊时间。
处理跨越午夜的时间范围
跨越午夜的优惠(例如,从周二晚上 10:00 到周三凌晨 2:00 有效)必须进行细分,以便由提取流水线正确处理。要求:使用 TimeOfDayWindow 字段将时间段拆分为两个不同的时间段:
- 时间段 1:开始日期(例如星期二)的晚上 10:00 至晚上 11:59:59。
- 时间段 2:次日(例如周三)凌晨 12:00 至凌晨 2:00。
这样可以确保优惠的有效性在整个期间内得到准确反映。
费用规范
您可以使用 OfferDetails.additional_fees 字段指定外送和自提费用。应使用 OfferDetails.convenience_fee 指定手续费。