Offer

LINT.IfChange(offer_definition) [START offer_definition] Next tag: 26

نمایش JSON
{
  "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
}
فیلدها
offerId

string

شناسه یکتای پیشنهاد ویژه. الزامی.

entityIds[]

string

فهرست فروشندگانی که در این پیشنهاد ویژه شرکت می‌کنند.

addOnOfferApplicableToAllEntities

boolean

اگر درست باشد، این پیشنهاد برای همه نهادهای تحت تجمیع‌کننده قابل‌اعمال است. فقط برای پیشنهادهای ویژه برافزایی قابل‌اعمال است.

offerSource

enum (OfferSource)

پیشنهاد می‌تواند توسط تجمیع‌کننده، فروشنده مستقل، یا حتی شخص ثالث به‌عنوان برافزا ارائه شود. الزامی.

actionType

enum (ActionType)

سرویسی که پیشنهاد را ارائه می‌کند. ‫offerId فقط می‌تواند به یک actionType تعلق داشته باشد. اگر یک پیشنهاد ویژه را بتوان در چندین نوع خدمات هم‌رسانی کرد، انتظار می‌رود پیشنهادهای ویژه تکراری با شناسه‌های یکتا برای هر نوع خدمات ایجاد شود. الزامی.

offerModes[]

enum (OfferMode)

روش‌هایی که می‌توان از پیشنهاد استفاده کرد - حضوری، رزرو، آنلاین، و غیره. الزامی.

offerCategory

enum (OfferCategory)

دسته پیشنهاد. الزامی.

sourceAssignedPriority

integer

عدد صحیح غیرمنفی ([۱-۱۰۰]، که در آن ۱ نشان‌دهنده بالاترین اولویت است) که نشان‌دهنده سطح اولویت پیشنهاد ویژه اختصاص‌داده‌شده توسط منبع است. وقتی چند پیشنهاد ویژه برای یک فروشنده دردسترس باشد، این نشانه‌ای برای رتبه‌بندی پیشنهادهای ویژه خواهد بود. 0 نشان‌دهنده این است که اولویت تنظیم نشده است.

offerDetails

object (OfferDetails)

جزئیات پیشنهاد ویژه، مثل تخفیف، هزینه رزرو، و غیره. الزامی است.

offerRestrictions

object (OfferRestrictions)

توضیح می‌دهد که پیشنهاد ویژه چگونه محدود شده است، یعنی اینکه آیا اشتراک/ابزار پرداخت لازم است، آیا این پیشنهاد ویژه می‌تواند با پیشنهادهای ویژه دیگر (و چه نوع پیشنهادهایی) ترکیب شود، و غیره. الزامی.

coupon

object (Coupon)

جزئیات کوپن. برای offerCategory: OFFER_CATEGORY_ADD_ON_COUPON_OFFER الزامی است.

paymentInstrument

object (PaymentInstrument)

جزئیات ابزار پرداخت. برای offerCategory الزامی است: OFFER_CATEGORY_ADD_ON_PAYMENT_OFFER.

subscription

object (Subscription)

جزئیات اشتراک. برای offerCategory الزامی است: OFFER_CATEGORY_ADD_ON_SUBSCRIPTION_OFFER.

terms

object (Terms)

شرایط خدمات پیشنهاد ویژه. الزامی.

validityPeriods[]

object (ValidityPeriod)

دوره اعتبار پیشنهاد ویژه. توضیح می‌دهد که پیشنهاد ویژه برای چه دوره زمانی معتبر است، ازجمله زمان شروع و پایان، روزهای هفته، و غیره. الزامی است.

offerUrl

string

نشانی وب صفحه پیشنهاد ویژه فروشنده. برای offerCategory: OFFER_CATEGORY_BASE_OFFER الزامی است.

imageUrl

string

نشانی وب تصویر پیشنهاد ویژه فروشنده.

tags[]

enum (OfferTag)

برچسب‌های ویژه مرتبط با پیشنهاد. از این برای شناسایی پیشنهادهای ویژه مثل «جشنواره»، «رتبه‌بندی برتر»، «بیشترین رزرو»، و غیره استفاده می‌شود.

brandId

string

نمانام مرتبط با پیشنهاد ویژه را شناسایی می‌کند. اگر تنظیم نشده باشد، از نمانام پیش‌فرض استفاده می‌شود.

OfferDetails

[START offer_details_definition] Next tag: 15

نمایش JSON
{
  "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.
}
فیلدها
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)

جزئیات مربوط به معامله‌های کارت هدیه.

فیلد اتحادیه offer_specification. تخفیف می‌تواند به‌صورت درصد یا مقدار ثابتی باشد که از مقدار کل کسر می‌شود. برای مثال: ۱. ‫٪۱۰ تخفیف در صورت‌حساب نهایی. ۲. ‫۱۵ دلار تخفیف برای سفارش. فروشندگان همچنین می‌توانند ازطریق فیلدهای مشخصه مربوطه، تخفیف‌های سفارشی مثل «یکی بخر، یکی رایگان ببر» ارائه دهند. الزامی. ‫offer_specification فقط می‌تواند یکی از موارد زیر باشد:
discountPercent

number

درصدی از صورت‌حساب که تخفیف داده می‌شود. [0, 100] برای پیشنهادهای ویژه «یکی بخر، یکی رایگان بگیر» یا ۵۰٪ تخفیف که برای کل وعده غذایی اعمال می‌شود (مثلاً بوفه «یکی بخر، یکی رایگان بگیر»، «یکی بخر، یکی رایگان بگیر» برای کل صورت‌حساب، «یکی بخر، یکی رایگان بگیر» برای منو ثابت)، این مقدار را می‌توان روی ۵۰ تنظیم کرد.

discountValue

object (Money)

مقدار ثابت تخفیف.

otherOfferDetailText

string

نوشتار قالب آزاد برای شرح تخفیف. برای پیشنهادهای ویژه ۱+۱ (مثلاً ۱+۱ نوشیدنی، +۱ غذای اصلی، ۱+۱ مورد انتخابی منو)، این جزئیات باید در اینجا شرح داده شود.

OfferRestrictions

[START offer_restrictions_definition] Next tag: 11

نمایش JSON
{
  "combinableWithOtherOffers": boolean,
  "combinableOfferCategories": [
    enum (OfferCategory)
  ],
  "combinableOfferIds": [
    string
  ],
  "inclusions": [
    {
      object (OfferCondition)
    }
  ],
  "exclusions": [
    {
      object (OfferCondition)
    }
  ],
  "minGuest": integer,
  "foodOfferRestrictions": {
    object (FoodOfferRestrictions)
  },
  "specialConditions": [
    string
  ]
}
فیلدها
combinableWithOtherOffers

boolean

آیا این پیشنهاد ویژه را می‌توان با پیشنهادهای ویژه دیگر ترکیب کرد. وقتی مقدار true باشد، شرکا می‌توانند مشخص کنند این پیشنهاد با چه پیشنهادهایی می‌تواند ترکیب شود. اگر هم combinableOfferCategories و هم combinableOfferIds تنظیم شده باشند، هر پیشنهادی که با یکی از شرایط بالا مطابقت داشته باشد قابل ترکیب خواهد بود.

combinableOfferCategories[]

enum (OfferCategory)

فهرست انواع پیشنهادهای ویژه‌ای که این پیشنهاد ویژه می‌تواند با آن‌ها ترکیب شود. برای مثال، این پیشنهاد ویژه ممکن است با «کوپن‌های» دیگر ترکیب شود. اگر combinableWithOtherOffers درست باشد و این فیلد تنظیم نشده باشد، همه انواع قابل‌ترکیب خواهند بود.

combinableOfferIds[]

string

فهرست offer_ids که این پیشنهاد ویژه می‌تواند با آن‌ها ترکیب شود. برخی‌از پیشنهادهای ویژه ممکن است فقط با offer_idهای خاص دیگری ترکیب شوند (می‌توانند پیشنهادهای ویژه اصلی درنظر گرفته شوند). اگر combinableWithOtherOffers درست باشد و این فیلد تنظیم نشده باشد، همه شناسه‌های پیشنهاد ویژه قابل‌ترکیب خواهند بود.

inclusions[]

object (OfferCondition)

فهرست شرایطی که باید رعایت شود تا پیشنهاد معتبر باشد (برای نمونه، نوشیدنی‌های غیرالکلی، غذا).

exclusions[]

object (OfferCondition)

فهرست شرایطی که باعث باطل شدن پیشنهاد ویژه می‌شود (مثلاً بوفه، پیشنهادهای ترکیبی، و کوکتل).

minGuest

integer

حداقل تعداد افراد لازم برای استفاده از پیشنهاد.

foodOfferRestrictions

object (FoodOfferRestrictions)

محدودیت‌های خاص مربوط به پیشنهادهای غذایی.

specialConditions[]

string

شرایط ویژه این پیشنهاد که باید به کاربر نشان داده شود. مثال: «فقط برای پرداخت در [منطقه] معتبر است»، «پرداخت‌های آنلاین را شامل نمی‌شود»

OfferCondition

[START offer_condition_definition]

نمایش JSON
{
  "description": string
}
فیلدها
description

string

PaymentInstrument

[START payment_instrument_definition]

نمایش JSON
{
  "items": [
    {
      object (PaymentInstrumentItem)
    }
  ],
  "providerName": string
}
فیلدها
items[]

object (PaymentInstrumentItem)

فهرست ابزارهای پرداخت که می‌توان از آن‌ها برای استفاده از پیشنهاد ویژه استفاده کرد. الزامی.

providerName

string

نام ارائه‌دهنده ابزار پرداخت. می‌تواند شریک بانکی، نام بانک، و غیره باشد. برای مثال: American Express،‏ HDFC،‏ ICICI.

PaymentInstrumentItem

[START payment_instrument_item_definition]

نمایش JSON
{
  "type": enum (PaymentInstrumentType),
  "name": string
}
فیلدها
type

enum (PaymentInstrumentType)

نوع ابزار پرداخت. الزامی.

name

string

نام مورد ابزار پرداخت، مثل نام کارت اعتباری. برای مثال: HDFC Infinia،‏ American Express Platinum. الزامی.

اشتراک

[START subscription_definition]

نمایش JSON
{
  "name": string,
  "subscriptionAutoAdded": boolean,
  "cost": {
    object (Money)
  },
  "subscriptionDuration": string,
  "termsAndConditionsUrl": string
}
فیلدها
name

string

نام اشتراک. الزامی.

subscriptionAutoAdded

boolean

آیا اشتراک هنگام استفاده کاربر از این پیشنهاد ویژه به‌طور خودکار اضافه می‌شود یا نه

cost

object (Money)

هزینه اشتراک. الزامی.

subscriptionDuration

string (Duration format)

مدت زمانی که اشتراک با subscription_cost معتبر است. الزامی.

مدت زمان به ثانیه با حداکثر نه رقم اعشاری، که با «s» پایان می‌یابد. مثال: "3.5s".

termsAndConditionsUrl

string

نشانی وب شرایط خدمات شریک مربوط به این اشتراک.

شرایط

[START terms_definition]

نمایش JSON
{
  "url": string,
  "restrictedToCertainUsers": boolean,
  "termsAndConditions": string,
  "additionalTermsAndConditions": [
    string
  ]
}
فیلدها
url

string

نشانی وب شرایط خدمات شریک.

restrictedToCertainUsers

boolean

آیا پیشنهاد به کاربران خاصی محدود شده است یا نه.

termsAndConditions

string

نوشتار اصلی «شرایط خدمات» ارائه‌شده توسط شریک.

additionalTermsAndConditions[]

string

شرایط خدمات علاوه‌بر شرایط خدمات اصلی از شریک.