Offer

LINT.IfChange(offer_definition) [START offer_definition] Sonraki etiket: 26

JSON gösterimi
{
  "offerId": string,
  "entityIds": [
    string
  ],
  "addOnOfferApplicableToAllEntities": boolean,
  "offerSource": enum (OfferSource),
  "actionType": enum (ActionType),
  "offerModes": [
    enum (OfferMode)
  ],
  "offerCategory": enum (OfferCategory),
  "sourceAssignedPriority": integer,
  "offerDetails": {
    object (OfferDetails)
  },
  "offerRestrictions": {
    object (OfferRestrictions)
  },
  "coupon": {
    object (Coupon)
  },
  "paymentInstrument": {
    object (PaymentInstrument)
  },
  "subscription": {
    object (Subscription)
  },
  "terms": {
    object (Terms)
  },
  "validityPeriods": [
    {
      object (ValidityPeriod)
    }
  ],
  "offerUrl": string,
  "imageUrl": string,
  "tags": [
    enum (OfferTag)
  ],
  "brandId": string
}
Alanlar
offerId

string

Teklifin benzersiz kimliği. Zorunlu.

entityIds[]

string

Bu teklife katılan satıcıların listesi.

addOnOfferApplicableToAllEntities

boolean

Doğruysa bu teklif, toplayıcı altındaki tüm tüzel kişiler için geçerlidir. Yalnızca eklenti teklifleri için geçerlidir.

offerSource

enum (OfferSource)

Teklifler toplayıcı, bireysel satıcı veya üçüncü taraf tarafından eklenti olarak sunulabilir. Zorunlu.

actionType

enum (ActionType)

Teklifi sunan hizmet. Bir offerId yalnızca bir actionType'a ait olabilir. Bir teklif birden fazla hizmet türünde paylaşılabiliyorsa her hizmet türü için benzersiz kimliklere sahip yinelenen tekliflerin oluşturulması beklenir. Zorunlu.

offerModes[]

enum (OfferMode)

Tekliften yararlanma yöntemleri (mağazaya gelme, rezervasyon, online vb.). Zorunlu.

offerCategory

enum (OfferCategory)

Teklifin kategorisi. Zorunlu.

sourceAssignedPriority

integer

Kaynağın teklife atadığı öncelik düzeyini gösteren negatif olmayan tam sayı ([1-100], burada 1 en yüksek önceliği temsil eder). Aynı satıcı için birden fazla teklif mevcut olduğunda bu, teklifleri sıralamak için bir sinyal olur. 0, önceliğin ayarlanmadığını gösterir.

offerDetails

object (OfferDetails)

İndirim, rezervasyon maliyeti gibi teklifin ayrıntıları. Zorunludur.

offerRestrictions

object (OfferRestrictions)

Teklifin nasıl kısıtlandığını (ör. abonelik/ödeme aracı gerekip gerekmediği, bu teklifin diğer tekliflerle birleştirilip birleştirilemeyeceği ve hangi tür tekliflerle birleştirilebileceği) açıklar. Zorunludur.

coupon

object (Coupon)

Kupon ayrıntıları. offerCategory için zorunludur: OFFER_CATEGORY_ADD_ON_COUPON_OFFER.

paymentInstrument

object (PaymentInstrument)

Ödeme aracının ayrıntıları. OFFER_CATEGORY_ADD_ON_PAYMENT_OFFER teklif kategorisi için gereklidir.

subscription

object (Subscription)

Abonelik ayrıntıları. offerCategory için zorunlu: OFFER_CATEGORY_ADD_ON_SUBSCRIPTION_OFFER.

terms

object (Terms)

Teklifin hükümler ve koşulları. Zorunlu.

validityPeriods[]

object (ValidityPeriod)

Teklifin geçerlilik dönemi. Başlangıç ve bitiş saatleri, haftanın günleri vb. dahil olmak üzere teklifin geçerli olduğu zaman aralığını açıklar. Zorunludur.

offerUrl

string

Satıcının teklif sayfasının URL'si. offerCategory: OFFER_CATEGORY_BASE_OFFER için gereklidir.

imageUrl

string

Satıcının teklif resminin URL'si.

tags[]

enum (OfferTag)

Teklifle ilişkili özel etiketler. Bu, "Festival", "En Yüksek Puanlı", "En Çok Rezervasyon Yapılan" gibi özel teklifleri tanımlamak için kullanılır.

brandId

string

Teklifle ilişkili markayı tanımlar. Ayarlanmazsa varsayılan marka kullanılır.

OfferDetails

[START offer_details_definition] Next tag: 15

JSON gösterimi
{
  "offerDisplayText": string,
  "maxDiscountValue": {
    object (Money)
  },
  "minSpendValue": {
    object (Money)
  },
  "bookingCost": {
    object (Money)
  },
  "bookingCostUnit": enum (FeeUnit),
  "convenienceFee": {
    object (Fee)
  },
  "bookingCostAdjustable": boolean,
  "additionalFees": [
    {
      object (AdditionalFee)
    }
  ],
  "giftCardInfo": {
    object (GiftCardInfo)
  },

  // Union field offer_specification can be only one of the following:
  "discountPercent": number,
  "discountValue": {
    object (Money)
  },
  "otherOfferDetailText": string
  // End of list of possible types for union field offer_specification.
}
Alanlar
offerDisplayText

string

Teklif sağlayıcının arama sonuçları sayfasında müşterilere göstermek istediği teklif metni. Zorunlu.

maxDiscountValue

object (Money)

Kullanılabilecek maksimum indirim. Örneğin, 100 TL'ye kadar% 10 indirim.

minSpendValue

object (Money)

İndirimden yararlanmak için yapılması gereken minimum harcama tutarı. Örneğin, toplam fiyat 100 TL veya daha fazla olduğunda% 10 indirim.

bookingCost

object (Money)

Bu teklifi rezerve etmenin maliyeti. Örneğin, 15 ABD doları karşılığında masa rezervasyonu yapıldığında nihai faturada 100 ABD doları indirim.

bookingCostUnit

enum (FeeUnit)

Rezervasyon maliyetinin birimi. Örneğin, kişi başına, işlem başına.

convenienceFee

object (Fee)

bookingCostAdjustable

boolean

Rezervasyon maliyetinin ayarlanabilir olup olmadığı (ör. rezervasyon maliyetinin nihai faturadan düşülüp düşülmediği). Örneğin: Rezervasyonla akşam yemeğinde% 30 indirim. Rezervasyon maliyeti 15 ABD dolarıdır ve bu tutar, nihai faturaya yansıtılır. Dolayısıyla nihai fatura: Toplam Harcama - %30 - 15 ABD doları

additionalFees[]

object (AdditionalFee)

Kullanıcıdan alınan ek ücretler. Örnekler: kolaylık, sevkiyata hazırlık, teslimat, paketleme, hizmet ücreti vb.

giftCardInfo

object (GiftCardInfo)

Hediye kartı fırsatlarına özel ayrıntılar.

offer_specification birleşik alanı. İndirim, toplam değerden çıkarılan bir yüzde veya sabit bir değer olabilir. Örneğin: 1. Nihai faturada% 10 indirim. 2. Siparişte 15 ABD doları indirim. Satıcılar, ilgili spesifikasyon alanları aracılığıyla "bir alana bir bedava" gibi özel indirimler de sunabilir. Zorunlu. offer_specification aşağıdakilerden yalnızca biri olabilir:
discountPercent

number

Faturanın indirimli yüzdesi. [0, 100] Tüm yemek için geçerli olan 1+1 veya% 50 indirim teklifleri (ör. 1+1 açık büfe, tüm faturada 1+1, set menüde 1+1) için bu değer 50 olarak ayarlanabilir.

discountValue

object (Money)

İndirimin sabit değeri.

otherOfferDetailText

string

İndirimi açıklayan serbest biçimli metin. Belirli 1+1 teklifleri (ör. 1+1 içecek, +1 ana yemek, 1+1 seçili menü öğeleri) için bu ayrıntılar burada açıklanmalıdır.

OfferRestrictions

[START offer_restrictions_definition] Next tag: 11

JSON gösterimi
{
  "combinableWithOtherOffers": boolean,
  "combinableOfferCategories": [
    enum (OfferCategory)
  ],
  "combinableOfferIds": [
    string
  ],
  "inclusions": [
    {
      object (OfferCondition)
    }
  ],
  "exclusions": [
    {
      object (OfferCondition)
    }
  ],
  "minGuest": integer,
  "foodOfferRestrictions": {
    object (FoodOfferRestrictions)
  },
  "specialConditions": [
    string
  ]
}
Alanlar
combinableWithOtherOffers

boolean

Bu teklifin diğer tekliflerle birleştirilip birleştirilemeyeceği. Doğru olduğunda iş ortakları, bu teklifin hangi tekliflerle birleştirilebileceğini belirtebilir. Hem combinableOfferCategories hem de combinableOfferIds ayarlanırsa yukarıdaki koşullardan biriyle eşleşen tüm teklifler birleştirilebilir.

combinableOfferCategories[]

enum (OfferCategory)

Bu teklifin birleştirilebileceği teklif türlerinin listesi. Örneğin, bu teklif diğer kuponlarla birleştirilebilir. combinableWithOtherOffers değeri doğruysa ve bu alan ayarlanmamışsa tüm türler birleştirilebilir.

combinableOfferIds[]

string

Bu teklifin birleştirilebileceği offer_id'lerin listesi. Bazı teklifler yalnızca belirli diğer offer_id'lerle (üst teklifler olarak kabul edilebilir) birleştirilebilir. combinableWithOtherOffers değeri doğruysa ve bu alan ayarlanmamışsa tüm teklif numaraları birleştirilebilir.

inclusions[]

object (OfferCondition)

Teklifin geçerli olması için karşılanması gereken koşulların listesi (ör. alkolsüz içecekler, yiyecekler).

exclusions[]

object (OfferCondition)

Teklifi geçersiz kılacak koşulların listesi (ör. açık büfe, karma teklifler ve kokteyller).

minGuest

integer

Tekliften yararlanmak için gereken minimum kişi sayısı.

foodOfferRestrictions

object (FoodOfferRestrictions)

Yemek tekliflerine özgü kısıtlamalar.

specialConditions[]

string

Bu teklifle ilgili olarak kullanıcıya gösterilmesi gereken özel koşullar. Örnekler: "Yalnızca [bölge] içinde ödeme için geçerlidir", "Online ödemeler hariçtir"

OfferCondition

[START offer_condition_definition]

JSON gösterimi
{
  "description": string
}
Alanlar
description

string

PaymentInstrument

[START payment_instrument_definition]

JSON gösterimi
{
  "items": [
    {
      object (PaymentInstrumentItem)
    }
  ],
  "providerName": string
}
Alanlar
items[]

object (PaymentInstrumentItem)

Tekliften yararlanmak için kullanılabilecek ödeme araçlarının listesi. Zorunlu.

providerName

string

Ödeme aracı sağlayıcısının adı. Bankacılık iş ortağı, banka adı vb. olabilir. Örneğin: American Express, HDFC, ICICI.

PaymentInstrumentItem

[START payment_instrument_item_definition]

JSON gösterimi
{
  "type": enum (PaymentInstrumentType),
  "name": string
}
Alanlar
type

enum (PaymentInstrumentType)

Ödeme aracının türü. Zorunlu.

name

string

Ödeme aracı öğesinin adı (ör. kredi kartının adı). Örneğin: HDFC Infinia, American Express Platinum. Zorunlu.

Abonelik

[START subscription_definition]

JSON gösterimi
{
  "name": string,
  "subscriptionAutoAdded": boolean,
  "cost": {
    object (Money)
  },
  "subscriptionDuration": string,
  "termsAndConditionsUrl": string
}
Alanlar
name

string

Aboneliğin adı. Zorunlu.

subscriptionAutoAdded

boolean

Kullanıcı bu tekliften yararlandığında aboneliğin otomatik olarak eklenip eklenmediği

cost

object (Money)

Aboneliğin maliyeti Zorunlu.

subscriptionDuration

string (Duration format)

Aboneliğin subscription_cost (abonelik ücreti) karşılığında ne kadar süre geçerli olduğu. Zorunlu.

En fazla dokuz kesirli basamak içeren ve "s" ile biten, saniye cinsinden süre. Örnek: "3.5s".

termsAndConditionsUrl

string

Bu abonelikle ilgili iş ortağının hükümler ve koşullarının URL'si.

Şartlar

[START terms_definition]

JSON gösterimi
{
  "url": string,
  "restrictedToCertainUsers": boolean,
  "termsAndConditions": string,
  "additionalTermsAndConditions": [
    string
  ]
}
Alanlar
url

string

İş ortağının hükümler ve koşullarının URL'si.

restrictedToCertainUsers

boolean

Teklifin belirli kullanıcılarla sınırlı olup olmadığı.

termsAndConditions

string

İş ortağı tarafından sağlanan birincil Hükümler ve Koşullar metni.

additionalTermsAndConditions[]

string

İş ortağının birincil Hükümler ve Koşulları'na ek olarak geçerli olan hükümler ve koşullar.