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

אם הערך הוא True, המבצע הזה רלוונטי לכל הישויות שמשויכות לאגרגטור. המאפיין הזה רלוונטי רק למבצעים של חבילות ערוצים.

offerSource

enum (OfferSource)

את המבצע יכולים לספק אתר אגרגטור, מוכר ספציפי או אפילו צד שלישי כתוסף. חובה.

actionType

enum (ActionType)

השירות שמספק את המבצע. כל offerId יכול להשתייך רק ל-actionType אחד. אם אפשר לשתף מבצע בכמה סוגי שירותים, צריך ליצור מבצעים כפולים עם מזהים ייחודיים לכל סוג שירות. חובה.

offerModes[]

enum (OfferMode)

הדרכים שבהן אפשר לממש את המבצע – הגעה למקום, הזמנה מראש, אונליין וכו'. חובה.

offerCategory

enum (OfferCategory)

הקטגוריה של המבצע. חובה.

sourceAssignedPriority

integer

מספר שלם לא שלילי (‎[1-100]‎, כאשר 1 מייצג את העדיפות הכי גבוהה) שמציין את רמת העדיפות של המוצר שהוקצתה על ידי המקור. אם יש כמה מבצעים זמינים לאותו מוכר, זה יהיה אות לדירוג המבצעים. הערך 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

כתובת ה-URL לדף המבצע של המוֹכר. חובה עבור offerCategory: OFFER_CATEGORY_BASE_OFFER.

imageUrl

string

כתובת ה-URL של תמונת המוצר של המוכר.

tags[]

enum (OfferTag)

תגים מיוחדים שמשויכים למבצע. המאפיין הזה משמש לזיהוי מבצעים מיוחדים כמו 'חגיגי', 'המומלץ ביותר', 'הכי הרבה הזמנות' וכו'.

brandId

string

מציין את המותג שמשויך למוצר. אם לא מגדירים את המדיניות, המערכת תשתמש במותג ברירת המחדל.

OfferDetails

[START offer_details_definition] התג הבא: 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)

ההנחה המקסימלית שאפשר לקבל. לדוגמה, 10% הנחה עד 400 ש"ח.

minSpendValue

object (Money)

סכום ההוצאה המינימלי שנדרש כדי לקבל את ההנחה. לדוגמה, 10% הנחה כשהמחיר הכולל הוא 100 $או יותר.

bookingCost

object (Money)

העלות של הזמנת המבצע הזה. לדוגמה, הנחה של 100$ על החשבון הסופי כשמזמינים שולחן בעלות של 15$.

bookingCostUnit

enum (FeeUnit)

יחידת המידה של עלות ההזמנה. לדוגמה, לאדם, לעסקה.

convenienceFee

object (Fee)

bookingCostAdjustable

boolean

אם אפשר לשנות את עלות ההזמנה, כלומר עלות ההזמנה מופחתת מהחשבון הסופי. לדוגמה: 30% הנחה על ארוחת ערב בהזמנה. עלות ההזמנה היא 15$, והיא תנוכה מהחשבון הסופי. לכן החיוב הסופי הוא: סך ההוצאות – 30% – 15$

additionalFees[]

object (AdditionalFee)

עמלות נוספות שבהן מחויב המשתמש. דוגמאות: דמי נוחות, דמי טיפול, דמי משלוח, דמי אריזה, עמלת שירות וכו'.

giftCardInfo

object (GiftCardInfo)

פרטים ספציפיים על מבצעים של כרטיסי מתנה.

שדה איחוד offer_specification. ההנחה יכולה להיות אחוז או ערך קבוע שמנוכה מהערך הכולל. לדוגמה: 1. הנחה של 10% על החשבון הסופי. 2. ‫15$ הנחה על הזמנה. מוכרים יכולים גם להציע הנחות מותאמות אישית, כמו "קונים אחד ומקבלים אחד במתנה", דרך שדות המפרט הרלוונטיים. חובה. הערך offer_specification יכול להיות רק אחד מהבאים:
discountPercent

number

אחוז ההנחה בחשבון. ‫[0, 100] במבצעים של 1+1 או 50% הנחה שחלים על כל הארוחה (למשל, מזנון 1+1, הנחה של 50% על כל החשבון, 1+1 על תפריט קבוע), אפשר להגדיר את הערך הזה ל-50.

discountValue

object (Money)

ערך קבוע של ההנחה.

otherOfferDetailText

string

טקסט חופשי לתיאור ההנחה. אם מציעים מבצעים ספציפיים של 1+1 (למשל: 1+1 על משקאות, מנה עיקרית + 1, 1+1 על פריטים נבחרים בתפריט), צריך לציין את הפרטים האלה כאן.

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 הוא true והשדה הזה לא מוגדר, כל הסוגים יהיו ניתנים לשילוב.

combinableOfferIds[]

string

רשימה של מזהי מבצעים (offer_id) שאפשר לשלב עם המבצע הזה. יכול להיות שיהיה אפשר לשלב מבצעים מסוימים רק עם מזהי מבצעים ספציפיים אחרים (אפשר להתייחס אליהם כמבצעים ראשיים). אם combinableWithOtherOffers הוא true והשדה הזה לא מוגדר, כל מזהי המבצעים יהיו ניתנים לשילוב.

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

שם הספק של אמצעי התשלום. יכול להיות שותף בנקאי, שם של בנק וכו'. לדוגמה: אמריקן אקספרס,‏ HDFC,‏ ICICI.

PaymentInstrumentItem

[START payment_instrument_item_definition]

ייצוג ב-JSON
{
  "type": enum (PaymentInstrumentType),
  "name": string
}
שדות
type

enum (PaymentInstrumentType)

סוג אמצעי התשלום. חובה.

name

string

שם הפריט של אמצעי התשלום, כמו שם כרטיס האשראי. לדוגמה: HDFC Infinia, ‏ אמריקן אקספרס 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

כתובת ה-URL של התנאים וההגבלות של השותף שרלוונטיים למינוי הזה.

תנאים

[START terms_definition]

ייצוג ב-JSON
{
  "url": string,
  "restrictedToCertainUsers": boolean,
  "termsAndConditions": string,
  "additionalTermsAndConditions": [
    string
  ]
}
שדות
url

string

כתובת ה-URL של התנאים וההגבלות של השותף.

restrictedToCertainUsers

boolean

האם המבצע מוגבל למשתמשים מסוימים.

termsAndConditions

string

הטקסט הראשי של התנאים וההגבלות שסופק על ידי השותף.

additionalTermsAndConditions[]

string

תנאים והגבלות בנוסף לתנאים ולהגבלות העיקריים של השותף.