En İyi Uygulamalar

Bu kılavuzda, yemek siparişi teklifleriyle ilgili şartlar ve örnekler vurgulanmaktadır.

Uygunluk ve Politikalar

Bu bölümde, iş ortaklarının teklif sunarken uyması gereken önemli uygunluk ölçütleri vurgulanmaktadır. Korumalı alan feed'i testi sırasında kullanıma sunmayı planladığınız tüm teklif türlerini test etmeniz önemlidir. Bir teklifin uygun olup olmadığından emin değilseniz lütfen Google iletişim noktanızla iletişime geçin.

Kişiselleştirilmiş ve tek kullanımlık teklifleri hariç tutma

Yüksek kaliteli ve tutarlı bir kullanıcı deneyimi sağlamak için iş ortakları, belirli kullanıcı alt gruplarıyla sınırlı teklifler sunmamalıdır. Yalnızca belirli kullanıcılar için oluşturulan kişiselleştirilmiş teklifler uygun değildir. Teklifin tüm kullanıcılar için teklif açılış sayfasında gösterilmesi koşuluyla, ilk kez sipariş verenler veya belirli bir restoranda ilk kez sipariş verenler gibi tüm kullanıcılar için uygun olan platform genelindeki tekliflere izin verilir. Teklif koşulları, teklif başlığında ve teklif URL'si açılış sayfasında açıkça belirtilmelidir. Teklifler, sitenizde veya uygulamanızda oturum açmamış ya da oturum açmış tüm kullanıcılar için teklif açılış sayfasında görünür olmalıdır.

Kupon kodlu teklifler

Bazı teklifler için kullanıcının kupon kodu girmesi gerekir. Örneğin, "Toplam faturada% 20 indirim almak için SAVE20 kodunu uygulayın". Google'ın kupon tanımındaki kupon kodlarını göstermediğini unutmayın. İş ortakları, bu bilgileri kullanıcılara gösterilecek OfferDetails.offer_display_text içine ekleyebilir. Kupon tabanlı teklifler genellikle iki kategoriye ayrılır:

  • Kuponun, Google'dan gelen tüm kullanıcılara ödeme sırasında otomatik olarak sunulduğu teklifler. Bunlara izin verilir.
  • Kullanıcının ödeme sırasında kupon kodunu girmesini gerektiren ancak teklif URL'si açılış sayfasında kupon kodunun nasıl uygulanacağıyla ilgili talimatlar sağlamayan veya teklif URL'si takip edildiğinde kuponu otomatik olarak uygulamayan tekliflere izin verilmez.

İçerik ve Yapı Teklifi

Bu bölümde, yapılandırılmış meta verilerle ilgili örnekler de dahil olmak üzere feed'de sağlanan tekliflerin içeriği ve yapısıyla ilgili koşullar ayrıntılı olarak açıklanmaktadır.

Teklifin görünen metni ve teklif spesifikasyonu

OfferDetails.offer_display_text, Google Arama'daki teklifler bölümünde anında görünürlük için kısa başlık olarak kullanılan zorunlu bir alandır (ör. "10 TL indirim" veya "%15 tasarruf edin").

OfferDetails.offer_specification, OfferDetails içinde zorunlu bir "biri" alanıdır. Bu, anlaşmayı belirtmek için aşağıdaki üç alandan tam olarak birinin sağlanması gerektiği anlamına gelir:

  • discount_value
  • discount_percent
  • other_offer_detail_text

OfferDetails.other_offer_detail_text alanı, fırsat sabit bir indirim değeri veya yüzdesi olarak ifade edilemediğinde offer_display_text alanını tamamlamak için kullanılan serbest biçimli bir metin alanıdır. offer_display_text, teklifle ilgili gerekli tüm bilgileri iletmek için yeterliyse other_offer_detail_text alanı offer_display_text ile aynı metinle doldurulmalıdır. Ancak karmaşık fırsatlarda bu alan, ödülün ayrıntılı bir açıklamasını içermelidir.

Yapılandırılmış meta veri alanları

Tekliflerin daha net olması, daha iyi sıralanması ve filtrelenmesi için iş ortaklarının teklif meta verilerini ilgili yapılandırılmış alanlarda sağlaması gerekir. Şartların belirtilmesi zorunludur. terms.terms_and_conditions alanının, teklif açılış sayfasında kullanıcılara gösterilen ayrıntılı şartlarla ayarlanması önerilir.

Toplam Sipariş ve Öğeye Özgü Teklifler

Öğelerin alt kümelerine özel tekliflerde, uygun öğeleri tanımlamak için offer_restrictions.inclusions ve offer_restrictions.exclusions alanları kullanılmalıdır. Teklif belirli bir öğe için geçerliyse öğe adı offer_display_text öğesine eklenmelidir. Öğe adı offer_display_text özelliğine dahil edildiğinde offer_restrictions.inclusions özelliğinin ayarlanması gerekmez.

offer_restrictions.inclusions ayarlanmamışsa veya öğe adı offer_display_text içinde yer almıyorsa teklifin toplam sipariş tutarı için geçerli olduğu kabul edilir.

Teslimat ücreti teklifleri

Teslimat ücreti tekliflerinde offer_category OFFER_CATEGORY_ADD_ON_FEE_REDUCTION_OFFER kullanılmalıdır. Bu sayede teklif, yalnızca konum için başka bir temel teklifle birleştirildiğinde gösterilir. Teslimat ücreti teklifi, temel teklif olarak gösterilmez.

Fırsat JSON örnekleri

20 ABD doları indirim

Örnek: Salı günleri toplam sipariş tutarında 15 TL minimum harcama ile 20 TL indirim

{
  "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"
}

Berry Smoothie% 50 indirimli

Örnek: Öğe düzeyinde% 50 indirim teklifi.

{
  "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"
}

Bir alana bir bedava teklifi

Örnek: Pazartesiden perşembeye geçerli olmak üzere bir meze alana bir bedava

{
  "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"
}

Ücretsiz teslimat teklifi

Örnek: Temel teklife ek olarak ücretsiz teslimat. Ücretsiz kargo teklifi, konum için geçerli olan tüm temel tekliflerle birlikte gösterilir.

[
  {
    "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",
      "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 dellivery"
    },
    "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"
  }
]

Sipariş karşılama ve kısıtlamalar

Bu bölümde, teklif karşılama spesifikasyonuyla ilgili koşullar ve en iyi uygulamalar ile bunlarla ilişkili kısıtlamalar ayrıntılı olarak açıklanmaktadır.

Sipariş karşılama modu (teslimat ve paket servis)

Hem teslimat hem de paket servis için geçerli olan tek bir fırsat varsa feed'de iki teklif içermelidir. Her girişin özel bir ActionType'ı olmalıdır:

  • ACTION_TYPE_FOOD_DELIVERY
  • ACTION_TYPE_FOOD_TAKEOUT

Bu sayede, iş ortağı sitesine gelen kullanıcılara doğru karşılama bağlamı sunulur.

Zaman aralıkları

Tekliflerin, sitenize veya uygulamanıza giriş yapmamış ya da giriş yapmış tüm kullanıcılar için teklif açılış sayfasında gösterilmesi beklenir. Teklif belirli bir süre boyunca geçerliyse geçerli dönemi belirtmek için validity_periods.valid_period alanını eklemeniz gerekir. Bu, teklifin zaman aralığı dışında gösterilmesini engeller. Teklif, günün belirli saatlerinde teklif URL'sinde gösteriliyorsa zaman aralığı da ayarlanmalıdır. Örneğin, restoran kapalıyken açılış sayfasında teklifler gösterilmiyorsa TimeOfDayWindow açılış ve kapanış saatlerini eklemeniz gerekir.

Gece yarısını geçen zaman aralıklarını işleme

Gece yarısını kapsayan teklifler (ör. Salı günü saat 22:00'den Çarşamba günü saat 02:00'ye kadar geçerli) alım ardışık düzeni tarafından doğru şekilde işlenmek üzere segmentlere ayrılmalıdır. Şart: Pencereyi iki ayrı segmente ayırmak için TimeOfDayWindow alanını kullanın:

  • 1.Segment: Başlangıç gününde (ör. Salı) 22:00-23:59:59.
  • 2.Segment: Ertesi gün (ör. Çarşamba) 00:00-02:00.

Bu sayede teklifin geçerliliği, tüm dönem boyunca doğru şekilde yansıtılır.

Ücret spesifikasyonları

Teslimat ve paket servis ücretleri, OfferDetails.additional_fees alanı kullanılarak belirtilebilir. Özel ödeme yöntemi ücreti, OfferDetails.convenience_fee kullanılarak belirtilmelidir. Değişken ücretler için ücret aralığı değeri kullanın. Örneğin, teslimat ücretleri kullanıcının konumuna göre değişiyorsa.