شرکای شرکت کننده در ادغام پیشنهادات باید راه اندازی حساب برای مرحله یکپارچه سازی مبتنی بر تاجر یا نهاد (پایلوت) را قبل از شروع انجام دهند. پیاده سازی، آزمایش و راه اندازی یکپارچه سازی پیشنهادات در این راهنما به تفصیل توضیح داده خواهد شد. قبل از گذراندن مراحل ادغام، این نمای کلی و سیاستهای پیشنهادی را بخوانید.
ارائه می دهد
ادغام پیشنهادات به شما امکان میدهد اطلاعات ساختاریافته درباره تبلیغات و تخفیفهای تاجر اعمال شده برای خدمات خاص در زمانهای خاص را منتقل کنید. پیشنهادها از پیشنهاد واقعی (درصد تخفیف، تخفیف دلاری ...)، پنجره های اعتبار (زمان های خاص، روزهای هفته ...) و کاربردهای قابل اجرا (این پیشنهاد فقط در برخی خدمات قابل استفاده است) و همچنین ترکیب پیچیده محدودیت ها تشکیل شده است.
نمونه هایی از پیشنهادات:
- پیش غذای نیمه تعطیل در روزهای چهارشنبه و پنجشنبه در ماه دسامبر از ساعت 12 تا 17
- برای شام روز مادر از ساعت 18 تا 10 شب، یک دسر را بخرید
- هر یکشنبه از ساعت 10 صبح تا 2 بعد از ظهر، 5 دلار تخفیف برای غذای برانچ
- 10٪ تخفیف به عنوان پیشنهاد ورود همراه با 5٪ تخفیف برای مشترکین ممتاز و 5٪ تخفیف اگر کاربر از طریق برنامه شما پرداخت کند.
برای اینکه یک پیشنهاد در ادغام گنجانده شود، باید با مدل داده های فنی مطابقت داشته باشد و همچنین شرایط واجد شرایط بودن ما را برآورده کند. مطمئن شوید که خطمشیهای پیشنهادات ما را مرور کردهاید تا مطمئن شوید که ادغام شما مطابقت دارد و دستورالعملهایی در مورد اینکه با پیشنهادهایی که مطابق با الزامات فنی نیستند چه باید کرد.
اجرا را ارائه می دهد
ادغام پیشنهادات شامل دو فید است که روزانه یا با فرکانس آپلود می شوند که دقت بالایی را تضمین می کند (به این معنی که کهنگی را کاهش می دهد):
OfferFeed
نام فیلد | تایپ کنید | مورد نیاز | توضیحات |
---|---|---|---|
data | آرایه ای از شی(Offer) |
پیشنهاد
نام فیلد | تایپ کنید | مورد نیاز | توضیحات |
---|---|---|---|
offer_id | رشته | مورد نیاز | شناسه منحصر به فرد پیشنهاد مورد نیاز. |
entity_ids | آرایه رشته | لیست بازرگانانی که در این پیشنهاد شرکت می کنند. | |
add_on_offer_applicable_to_all_entities | بولی | اگر درست باشد، این پیشنهاد برای همه نهادهای تحت جمعآوری اعمال میشود. فقط برای پیشنهادات افزودنی قابل استفاده است. | |
offer_source | enum(OfferSource) | مورد نیاز | یک پیشنهاد می تواند توسط جمع کننده، یک تاجر فردی، یا حتی شخص ثالث به عنوان افزودنی ارائه شود. مورد نیاز. |
action_type | enum(ActionType) | مورد نیاز | سرویسی که این پیشنهاد را ارائه می دهد. یک offer_id فقط می تواند متعلق به یک action_type باشد. اگر بتوان یک پیشنهاد را در چندین نوع سرویس به اشتراک گذاشت، انتظار می رود پیشنهادات تکراری با شناسه های منحصر به فرد برای هر نوع سرویس ایجاد شود. مورد نیاز. |
offer_modes | آرایه ای از enum(OfferMode) | مورد نیاز | روشهایی که پیشنهاد میتوان استفاده کرد - پیادهروی، رزرو، آنلاین، و غیره. الزامی است. |
offer_category | enum(OfferCategory) | مورد نیاز | دسته بندی پیشنهاد. مورد نیاز. |
source_assigned_priority | شماره | عدد صحیح غیر منفی ([1-100]، که 1 نشان دهنده بالاترین اولویت است) که سطح اولویت پیشنهاد اختصاص داده شده توسط منبع را نشان می دهد. وقتی چندین پیشنهاد برای یک تاجر در دسترس باشد، این سیگنالی برای رتبه بندی پیشنهادها خواهد بود. 0 نشان دهنده این است که اولویت تنظیم نشده است. | |
offer_details | شی(OfferDetails) | مورد نیاز | جزئیات پیشنهاد مانند تخفیف، هزینه رزرو و غیره الزامی است. |
offer_restrictions | شی(OfferRestrictions) | مورد نیاز | توضیح میدهد که چگونه پیشنهاد محدود میشود، یعنی اینکه آیا به اشتراک/ابزار پرداخت نیاز است، آیا این پیشنهاد میتواند با پیشنهادات دیگر ترکیب شود (و چه نوعهایی)، و غیره الزامی است. |
coupon | شی(Coupon) | جزئیات یک کوپن مورد نیاز برای offer_category: OFFER_CATEGORY_ADD_ON_COUPON_OFFER. | |
payment_instrument | شی(PaymentInstrument) | جزئیات یک ابزار پرداخت مورد نیاز برای offer_category: OFFER_CATEGORY_ADD_ON_PAYMENT_OFFER. | |
subscription | شی(Subscription) | جزئیات یک اشتراک مورد نیاز برای offer_category: OFFER_CATEGORY_ADD_ON_SUBSCRIPTION_OFFER. | |
terms | شی(Terms) | مورد نیاز | شرایط و ضوابط پیشنهاد. مورد نیاز. |
validity_periods | آرایه ای از شی(ValidityPeriod) | مورد نیاز | مدت اعتبار پیشنهاد. شرح می دهد که پیشنهاد برای چه دوره زمانی معتبر است، شامل زمان شروع و پایان، روزهای هفته و غیره. الزامی است. |
offer_url | رشته | نشانی وب صفحه پیشنهاد تاجر. مورد نیاز برای offer_category: OFFER_CATEGORY_BASE_OFFER. | |
image_url | رشته | نشانی اینترنتی تصویر پیشنهادی تاجر. |
جزئیات پیشنهاد
نام فیلد | تایپ کنید | مورد نیاز | توضیحات |
---|---|---|---|
offer_display_text | رشته | مورد نیاز | متن پیشنهادی که ارائهدهنده پیشنهاد میخواهد در صفحه نتایج جستجو به مشتریان نمایش دهد. مورد نیاز. |
| یکی از(offer_specification) | مورد نیاز | فقط یکی از فیلدهای این oneOf قابل تنظیم است. |
max_discount_value | شی(Money) | حداکثر تخفیف قابل استفاده به عنوان مثال، 10٪ تخفیف تا 100 دلار. | |
min_spend_value | شی(Money) | حداقل ارزش هزینه برای استفاده از تخفیف. به عنوان مثال، 10٪ تخفیف زمانی که قیمت کل 100 دلار یا بیشتر است. | |
booking_cost | شی(Money) | هزینه رزرو این پیشنهاد به عنوان مثال، زمانی که یک میز با هزینه 15 دلار رزرو می شود، 100 دلار از صورت حساب نهایی تخفیف می دهید. | |
booking_cost_unit | enum(FeeUnit) | واحد هزینه رزرو به عنوان مثال، به ازای هر نفر، در هر معامله. | |
convenience_fee | شی(Fee) | ||
booking_cost_adjustable | بولی | آیا هزینه رزرو قابل تنظیم است یا خیر، یعنی هزینه رزرو از صورت حساب نهایی کم می شود. به عنوان مثال: 30٪ تخفیف شام با رزرو. هزینه رزرو 15 دلار و به صورت حساب نهایی اعمال خواهد شد. از این رو صورت حساب نهایی: کل هزینه شده - 30٪ - 15 دلار | |
additional_fees | آرایه ای از شی(AdditionalFee) | هزینه های اضافی که از کاربر دریافت می شود. مثال: راحتی، جابجایی و غیره |
پول
مقداری پول را با نوع ارز آن نشان می دهد.
نام فیلد | تایپ کنید | مورد نیاز | توضیحات |
---|---|---|---|
currency_code | رشته | کد ارز سه حرفی تعریف شده در ISO 4217. | |
units | رشته | کل واحدهای مقدار. به عنوان مثال، اگر currencyCode "USD" باشد، 1 واحد یک دلار آمریکا است. | |
nanos | شماره | تعداد نانو (10^-9) واحد مقدار. مقدار باید بین -999,999,999 و +999,999,999 باشد. اگر units مثبت باشد، nanos باید مثبت یا صفر باشد. اگر units صفر باشد، nanos می تواند مثبت، صفر یا منفی باشد. اگر units منفی باشد، nanos باید منفی یا صفر باشد. به عنوان مثال 1.75-$ به صورت units =-1 و nanos =-750,000,000 نشان داده می شود. |
هزینه
نام فیلد | تایپ کنید | مورد نیاز | توضیحات |
---|---|---|---|
unit | enum(FeeUnit) | ||
type | enum(FeeType) | ||
| یکی از(cost) | فقط یکی از فیلدهای این oneOf قابل تنظیم است. |
Money Range
نام فیلد | تایپ کنید | مورد نیاز | توضیحات |
---|---|---|---|
min_amount | شی(Money) | ||
max_amount | شی(Money) |
هزینه اضافی
نام فیلد | تایپ کنید | مورد نیاز | توضیحات |
---|---|---|---|
name | رشته | مورد نیاز | نام هزینه اضافی. به عنوان مثال: هزینه راحتی، هزینه جابجایی و غیره ضروری است. |
fee | شی(Fee) |
محدودیت های پیشنهادی
نام فیلد | تایپ کنید | مورد نیاز | توضیحات |
---|---|---|---|
combinable_with_other_offers | بولی | آیا این پیشنهاد می تواند با پیشنهادات دیگر ترکیب شود یا خیر. وقتی درست است، شرکا میتوانند مشخص کنند که این پیشنهاد با چه پیشنهادهایی میتواند ترکیب شود. اگر هر دو combinable_offer_categories و combinable_offer_ids تنظیم شده باشند، هر پیشنهادی که با یکی از شرایط بالا مطابقت داشته باشد، قابل ترکیب خواهد بود. | |
combinable_offer_categories | آرایه ای از enum(OfferCategory) | فهرست انواع پیشنهادهایی که این پیشنهاد را می توان با آنها ترکیب کرد. به عنوان مثال، این پیشنهاد ممکن است با کوپن های دیگر ترکیب شود. اگر combinable_with_other_offers درست باشد و این فیلد تنظیم نشده باشد، همه انواع قابل ترکیب خواهند بود. | |
combinable_offer_ids | آرایه رشته | لیست offer_id هایی که این پیشنهاد را می توان با آنها ترکیب کرد. برخی از پیشنهادات ممکن است فقط با برخی از offer_id های خاص دیگر ترکیب شوند (می توانند پیشنهادات والدین در نظر گرفته شوند). اگر combinable_with_other_offers درست باشد و این فیلد تنظیم نشده باشد، همه شناسه های پیشنهاد قابل ترکیب خواهند بود. | |
inclusions | آرایه ای از شی(OfferCondition) | فهرست شرایطی که برای معتبر بودن پیشنهاد باید رعایت شود (مثلاً نوشیدنی های غیر الکلی، غذا). | |
exclusions | آرایه ای از شی(OfferCondition) | فهرست شرایطی که پیشنهاد را باطل می کند (مثلاً بوفه، پیشنهادات ترکیبی، و کوکتل). | |
min_guest | شماره | حداقل تعداد افراد مورد نیاز برای استفاده از پیشنهاد. | |
food_offer_restrictions | شی(FoodOfferRestrictions) | محدودیت های مخصوص پیشنهادات غذایی |
شرایط پیشنهاد
نام فیلد | تایپ کنید | مورد نیاز | توضیحات |
---|---|---|---|
description | رشته |
محدودیت های پیشنهاد غذا
نام فیلد | تایپ کنید | مورد نیاز | توضیحات |
---|---|---|---|
meal_types | آرایه ای از enum(MealType) | انواع وعدههای غذایی که پیشنهاد میشود برای آنها اعمال شود، مانند ناهار یا شام. اگر تنظیم نشده باشد، این پیشنهاد می تواند برای همه انواع وعده های غذایی اعمال شود. | |
restricted_to_certain_courses | بولی | اینکه آیا این پیشنهاد فقط برای دوره های خاصی قابل اعمال است یا خیر. |
کوپن
نام فیلد | تایپ کنید | مورد نیاز | توضیحات |
---|---|---|---|
text | رشته | متن کوپنی که ارائه دهنده پیشنهاد می خواهد به کاربران نمایش دهد. | |
code | رشته | مورد نیاز | کد کوپن برای بازخرید پیشنهاد لازم است. مورد نیاز. |
ابزار پرداخت
نام فیلد | تایپ کنید | مورد نیاز | توضیحات |
---|---|---|---|
items | آرایه ای از شی(PaymentInstrumentItem) | مورد نیاز | فهرست ابزارهای پرداختی که میتوان برای استفاده از این پیشنهاد استفاده کرد. مورد نیاز. |
provider_name | رشته | مورد نیاز | نام ارائهدهنده ابزار پرداخت. می تواند شریک بانکی، نام یک بانک و غیره باشد. به عنوان مثال: American Express، HDFC، ICICI. مورد نیاز. |
آیتم ابزار پرداخت
نام فیلد | تایپ کنید | مورد نیاز | توضیحات |
---|---|---|---|
type | enum(PaymentInstrumentType) | مورد نیاز | نوع ابزار پرداخت مورد نیاز. |
name | رشته | مورد نیاز | نام مورد ابزار پرداخت مانند نام کارت اعتباری. به عنوان مثال: HDFC Infinia، American Express Platinum. مورد نیاز. |
اشتراک
نام فیلد | تایپ کنید | مورد نیاز | توضیحات |
---|---|---|---|
name | رشته | مورد نیاز | نام اشتراک. مورد نیاز. |
subscription_auto_added | بولی | وقتی کاربر از این پیشنهاد استفاده می کند، اشتراک به طور خودکار اضافه می شود یا خیر | |
cost | شی(Money) | مورد نیاز | هزینه اشتراک. مورد نیاز. |
subscription_duration | شی(Duration) | مورد نیاز | مدت اعتبار اشتراک با هزینه اشتراک. مورد نیاز. |
terms_and_conditions_url | رشته | URL به شرایط و ضوابط شریک مربوط به این اشتراک. |
مدت زمان
نام فیلد | تایپ کنید | مورد نیاز | توضیحات |
---|---|---|---|
seconds | رشته | ثانیه های امضا شده از بازه زمانی. باید از -315,576,000,000 تا +315,576,000,000 باشد. توجه: این محدوده ها از 60 ثانیه در دقیقه * 60 دقیقه در ساعت * 24 ساعت در روز * 365.25 روز در سال * 10000 سال محاسبه می شوند. | |
nanos | شماره | علامت کسری از ثانیه در وضوح نانوثانیه از بازه زمانی. مدت زمان کمتر از یک ثانیه با یک میدان 0 seconds و یک میدان nanos مثبت یا منفی نشان داده می شود. برای مدت زمان یک ثانیه یا بیشتر، یک مقدار غیر صفر برای فیلد nanos باید همان علامت فیلد seconds باشد. باید از 999,999,999- تا 999,999,999+ باشد. |
شرایط
نام فیلد | تایپ کنید | مورد نیاز | توضیحات |
---|---|---|---|
url | رشته | URL به شرایط و ضوابط شریک. | |
restricted_to_certain_users | بولی | اینکه آیا این پیشنهاد محدود به کاربران خاصی است. | |
terms_and_conditions | رشته | متن T&C اولیه توسط شریک ارائه شده است. | |
additional_terms_and_conditions | آرایه رشته | شرایط و ضوابط علاوه بر T&C اولیه شریک. |
دوره اعتبار
نام فیلد | تایپ کنید | مورد نیاز | توضیحات |
---|---|---|---|
valid_period | شی(ValidityRange) | مهر زمانی شروع و پایانی که پیشنهاد برای آن معتبر است. این زمان ها باید نشان دهنده روزهای متمایز باشند، یعنی زمان شروع باید 00:00 (ابتدای روز) و زمان پایان باید 00:00 (انحصاری) در روز پایان دوره اعتبار باشد. | |
time_of_day | آرایه ای از شی(TimeOfDayWindow) | فاصله زمانی معتبر را در یک روز مشخص و روزهایی که برای پیشنهاد موجود است را مشخص می کند. برای مثال: دوشنبه: 10 صبح تا 5 بعد از ظهر سهشنبه: 10 صبح تا 2 بعد از ظهر سهشنبه: 5 بعد از ظهر تا 7 بعد از ظهر چهارشنبه، پنجشنبه، جمعه، شنبه، یکشنبه: 15:00 تا 19:00 اگر هیچکدام تنظیم نشده است، به این معنی است که پیشنهاد برای همیشه در valid_period در دسترس است. | |
time_exceptions | آرایه ای از شی(ValidTimeException) | استثناهایی را برای valid_period و valid_time_week بالا مشخص می کند |
دامنه اعتبار
محدوده مهر زمانی بسته-باز.
نام فیلد | تایپ کنید | مورد نیاز | توضیحات |
---|---|---|---|
valid_from_time | شی(Timestamp) | مورد نیاز | زمان شروع محدوده (شامل). مورد نیاز. |
valid_through_time | شی(Timestamp) | زمان پایان محدوده (انحصاری). اگر تنظیم نشود، به این معنی است که این دوره هرگز تمام نمی شود. اختیاری. |
مهر زمان
نام فیلد | تایپ کنید | مورد نیاز | توضیحات |
---|---|---|---|
seconds | رشته | ثانیه های زمان UTC را از زمان یونیکس 1970-01-01T00:00:00Z نشان می دهد. باید از 0001-01-01T00:00:00Z تا 9999-12-31T23:59:59Z شامل باشد. | |
nanos | شماره | کسرهای غیر منفی از ثانیه در وضوح نانوثانیه. مقادیر ثانویه منفی با کسرها باید همچنان مقادیر نانو غیر منفی داشته باشند که در زمان به جلو حساب میشوند. باید از 0 تا 999999999 باشد. |
TimeOfDayWindow
شی TimeWindow یک موجودیت ترکیبی است که لیستی از پنجره ها را توصیف می کند که سفارش کاربر می تواند انجام شود یا انجام شود.
نام فیلد | تایپ کنید | مورد نیاز | توضیحات |
---|---|---|---|
time_windows | شی(TimeOfDayRange) | مورد نیاز | پنجره زمانی که سفارش را می توان قرار داد/تکمیل کرد. مورد نیاز. |
day_of_week | آرایه ای از enum(DayOfWeek) | لیست روزهایی که در هفته ویندوز اعمال می شود. اگر هیچ یک تنظیم نشد، به این معنی است که برای تمام روزهای هفته اعمال می شود. اختیاری. |
TimeOfDayRange
محدوده زمانی بسته-باز.
نام فیلد | تایپ کنید | مورد نیاز | توضیحات |
---|---|---|---|
open_time | شی(TimeOfDay) | زمانی که زمان شروع روز محدوده (شامل) را نشان می دهد. اگر تنظیم نشده باشد، به معنای 00:00:00 است. اختیاری. | |
close_time | شی(TimeOfDay) | زمانی که زمان پایان روز محدوده را نشان میدهد (انحصاری). اگر تنظیم نشده باشد، به معنای 23:59:59 است. اختیاری. |
TimeOfDay
نام فیلد | تایپ کنید | مورد نیاز | توضیحات |
---|---|---|---|
hours | شماره | ساعات روز در قالب 24 ساعته. باید بزرگتر یا مساوی 0 باشد و معمولاً باید کمتر یا مساوی 23 باشد. یک API ممکن است برای سناریوهایی مانند زمان بسته شدن کسب و کار، مقدار "24:00:00" را مجاز کند. | |
minutes | شماره | دقیقه یک ساعت. باید بزرگتر یا مساوی 0 و کوچکتر یا مساوی 59 باشد. | |
seconds | شماره | ثانیه های یک دقیقه باید بزرگتر یا مساوی 0 باشد و معمولاً باید کمتر یا مساوی 59 باشد. یک API ممکن است مقدار 60 را در صورتی که اجازه دهد ثانیه های کبیسه اجازه دهد. | |
nanos | شماره | کسری از ثانیه، در نانوثانیه. باید بزرگتر یا مساوی 0 و کوچکتر یا مساوی 999999999 باشد. |
ValidTimeException
نام فیلد | تایپ کنید | مورد نیاز | توضیحات |
---|---|---|---|
exceptional_period | شی(ValidityRange) | مهر زمانی شروع و پایانی که پیشنهاد برای آن معتبر نیست. این زمان ها باید نشان دهنده روزهای متمایز باشند، یعنی زمان شروع باید 00:00 (آغاز روز) و زمان پایان باید 00:00 (انحصاری) در روز پایان دوره استثنا باشد. |
OfferSource
نام | توضیحات |
---|---|
OFFER_SOURCE_UNSPECIFIED | |
OFFER_SOURCE_AGGREGATOR |
نوع اقدام
نام | توضیحات |
---|---|
ACTION_TYPE_UNSPECIFIED | |
ACTION_TYPE_DINING |
OfferMode
نام | توضیحات |
---|---|
OFFER_MODE_OTHER | |
OFFER_MODE_WALK_IN | |
OFFER_MODE_FREE_RESERVATION | |
OFFER_MODE_PAID_RESERVATION | |
OFFER_MODE_ONLINE_ORDER |
Offer Category
دسته بندی پیشنهاد. پیشنهاد پایه یک پیشنهاد استاندارد است که برای همه مشتریان در دسترس است، مانند 10٪ تخفیف برای هزینه بیش از 100 دلار. پیشنهاد پایه محدود شده توسط یک کوپن یا ابزار پرداخت، دارای فیلدهای مربوطه خواهد بود. ما همچنین x پیشنهادهایی مانند ADD_ON_PAYMENT_OFFER داریم. چنین پیشنهاداتی را می توان به سایر پیشنهادات اضافه کرد تا تخفیف بیشتری کسب کند.
نام | توضیحات |
---|---|
OFFER_CATEGORY_UNSPECIFIED | |
OFFER_CATEGORY_BASE_OFFER | |
OFFER_CATEGORY_ADD_ON_PAYMENT_OFFER | |
OFFER_CATEGORY_ADD_ON_COUPON_OFFER | |
OFFER_CATEGORY_ADD_ON_SUBSCRIPTION_OFFER |
FeeUnit
نام | توضیحات |
---|---|
FEE_UNIT_UNSPECIFIED | |
FEE_UNIT_PER_GUEST | |
FEE_UNIT_PER_TRANSACTION |
FeeType
نام | توضیحات |
---|---|
FEE_TYPE_UNSPECIFIED | |
FEE_TYPE_FIXED | |
FEE_TYPE_VARIABLE |
نوع غذا
نام | توضیحات |
---|---|
MEAL_TYPE_UNSPECIFIED | |
MEAL_TYPE_BREAKFAST | |
MEAL_TYPE_LUNCH | |
MEAL_TYPE_DINNER |
نوع ابزار پرداخت
نام | توضیحات |
---|---|
PAYMENT_INSTRUMENT_TYPE_UNSPECIFIED | |
PAYMENT_INSTRUMENT_CREDIT_CARD | |
PAYMENT_INSTRUMENT_DEBIT_CARD | |
PAYMENT_INSTRUMENT_BANK_ACCOUNT | |
PAYMENT_INSTRUMENT_UPI | |
PAYMENT_INSTRUMENT_ONLINE_WALLET |
روز هفته
یک روز از هفته را نشان می دهد.
نام | توضیحات |
---|---|
DAY_OF_WEEK_UNSPECIFIED | روز هفته نامشخص است. |
MONDAY | دوشنبه |
TUESDAY | سه شنبه |
WEDNESDAY | چهارشنبه |
THURSDAY | پنج شنبه |
FRIDAY | جمعه |
SATURDAY | شنبه |
SUNDAY | یکشنبه |
offer_specification
تخفیف می تواند یک درصد یا یک مقدار ثابت باشد که از ارزش کل کم شود. به عنوان مثال: 1. 10٪ تخفیف قبض نهایی. 2. 15 دلار تخفیف برای سفارش. بازرگانان همچنین میتوانند تخفیفهای سفارشی مانند «یکی را بخر، یکی را رایگان بگیر» از طریق فیلدهای مشخصات مربوطه ارائه دهند. مورد نیاز.
نام فیلد | تایپ کنید | مورد نیاز | توضیحات |
---|---|---|---|
discount_percent | شماره | انحصاری متقابل با | درصدی از صورتحساب که تخفیف دارد. [0، 100] برای پیشنهادهای 1+1 یا 50 درصد تخفیف که برای کل وعده غذایی قابل اعمال است (مثلاً 1+1 بوفه، 1+1 در کل صورتحساب، 1+1 در منوی تنظیم)، این مقدار را می توان روی 50 تنظیم کرد. |
discount_value | شی(Money) | انحصاری متقابل با | ارزش ثابت تخفیف |
other_offer_detail_text | رشته | انحصاری متقابل با | متن فرم رایگان برای توصیف تخفیف. برای پیشنهادات 1+1 خاص (مثلاً 1+1 نوشیدنی، +1 غذای اصلی، 1+1 آیتم های منوی انتخابی)، این جزئیات باید در اینجا توضیح داده شوند. |
هزینه
نام فیلد | تایپ کنید | مورد نیاز | توضیحات |
---|---|---|---|
amount | شی(Money) | متقابلا منحصر به فرد با | |
amount_range | شی(MoneyRange) | متقابل با |
آپلود فید
فید Offers باید در سرور SFTP خوراک Generic
آپلود شود. نحوه استفاده از آموزش سرور SFTP فید عمومی را برای دستورالعمل ها دنبال کنید و از name
تنظیم شده برای google.offer
در فایل توصیفی خود استفاده کنید.
فرکانس آپلود
به طور کلی، گوگل انتظار دارد روزانه 1 فید آپلود شود. فرکانس ممکن است بسته به دفعات بهروزرسانیهای پیشنهادی برای اطمینان از دقت بالا افزایش یا کاهش یابد. با Google POC خود مشورت کنید.
داده ها چند ساعت طول می کشد تا در Google ظاهر شوند.
دسته بندی را ارائه می دهد
-
OFFER_CATEGORY_BASE_OFFER
: پیشنهادهایی که میتوان آنها را مستقلاً بدون ترکیب با هیچ پیشنهاد دیگری ادعا کرد. این شامل:- تخفیف ثابت در کل صورتحساب (به عنوان مثال، 20٪ تخفیف)
- پیشنهادات اشتراک (به عنوان مثال، دسر رایگان با عضویت)
- پیشنهادات پرداخت در مواردی که هیچ پیشنهاد پایه دیگری برای رستوران وجود ندارد
- پیشنهادات افزودنی: پیشنهادهایی که نیاز به یک پیشنهاد پایه برای ادعا دارند. این موارد عبارتند از:
-
OFFER_CATEGORY_ADD_ON_PAYMENT_OFFER
(به عنوان مثال، 10٪ تخفیف اضافی با کارت اعتباری خاص) -
OFFER_CATEGORY_ADD_ON_COUPON_OFFER
(به عنوان مثال، نوشیدنی رایگان با کد کوپن خاص) -
OFFER_CATEGORY_ADD_ON_SUBSCRIPTION_OFFER
(به عنوان مثال، 10٪ تخفیف اضافی برای مشترکین)
-
ملاحظات دیگر:
- وقتی رستورانی مجموعه ای از پیشنهاد پایه نداشته باشد، پیشنهادات افزودنی نمایش داده نمی شود. اگر پیشنهاد پایه وجود نداشته باشد، هر گونه پرداخت، اشتراک یا پیشنهاد کوپنی را که می توان بدون نیاز به افزودن به پیشنهاد دیگری ادعا کرد، باید با عنوان
OFFER_CATEGORY_BASE_OFFER
برچسب گذاری شود.- بسته به نوع، دادههای مربوطه برای
PaymentInstrument
،Subscription
یاCoupon
باید تنظیم شود. - شرکا باید 2 نسخه از هر یک از این پیشنهادات را برای پوشش سناریوهایی ارائه کنند که در آن به عنوان پیشنهادهای پایه و پیشنهادات افزودنی عمل می کنند. سپس کپی پیشنهاد افزودنی را می توان برای چندین رستوران با استفاده از
entity_ids
یاadd_on_offer_applicable_to_all_entities
تنظیم کرد.
- بسته به نوع، دادههای مربوطه برای
- وقتی رستورانی دارای چندین پیشنهاد پایه است که میتوانند روی هم چیده شوند، همه پیشنهادات پایه باید بهعنوان
OFFER_CATEGORY_BASE_OFFER
برچسبگذاری شوند و پیشنهادات پایه که پیشنهادات پرداخت، اشتراک یا کوپن هستند باید بهعنوان نوع پیشنهاد افزودنی مربوطه ارسال شوند. -
ValidityPeriod
باید برای فعال کردن پیشنهادهای افزودنی به عنوان پیشنهادهای پایه فقط زمانی استفاده شود که هیچ پیشنهاد پایه فعالی وجود نداشته باشد.
سناریوهای نمونه:
یک رستوران هنگام پرداخت با کارت اعتباری خاص و نوشیدنی رایگان با کد کوپن مشخص، 5٪ تخفیف ارائه می دهد
- 5% تخفیف پیشنهادی کارت اعتباری باید به صورت 2 نسخه ارسال شود، یکی با برچسب
OFFER_CATEGORY_BASE_OFFER
و دیگری با برچسبOFFER_CATEGORY_ADD_ON_PAYMENT_OFFER
همراه با جزئیاتPaymentInstrument
. - نوشیدنی رایگان با پیشنهاد کد کوپن باید به عنوان
OFFER_CATEGORY_ADD_ON_COUPON_OFFER
همراه با جزئیاتCoupon
ارسال شود.
- 5% تخفیف پیشنهادی کارت اعتباری باید به صورت 2 نسخه ارسال شود، یکی با برچسب
یک رستوران 10٪ تخفیف برای پیاده روی و 5٪ تخفیف در هنگام پرداخت با یک کارت اعتباری خاص ارائه می دهد که هر دو می توانند با هم ترکیب شوند.
- 10٪ پیشنهاد ورود باید به عنوان
OFFER_CATEGORY_BASE_OFFER
برچسب گذاری شود. - پیشنهاد 5% تخفیف کارت اعتباری باید 2 نسخه داشته باشد که یکی با برچسب
OFFER_CATEGORY_BASE_OFFER
و دیگری با برچسبOFFER_CATEGORY_ADD_ON_PAYMENT_OFFER
.
- 10٪ پیشنهاد ورود باید به عنوان
یک رستوران فقط برای ناهار در روزهای هفته 10 درصد تخفیف ارائه میکند و هنگام پرداخت با کارت اعتباری خاص، هر زمان که بخواهید، 5 درصد تخفیف ارائه میدهد.
- پیشنهاد تخفیف 10 درصدی باید دارای
ValidityPeriod
باشد تا فقط در ساعات ناهار رستوران در روزهای کاری مشخص شود. - 5٪ تخفیف پیشنهاد کارت اعتباری باید به صورت 2 نسخه ارسال شود.
- یک نسخه باید با عنوان
OFFER_CATEGORY_BASE_OFFER
با جزئیاتPaymentInstrument
برچسب گذاری شود.ValidityPeriod
of باید طوری تنظیم شود که ساعات ناهار در روزهای کاری را که پیشنهاد ناهار با تخفیف 10 درصدی فعال است حذف شود. - یک نسخه باید با عنوان
OFFER_CATEGORY_ADD_ON_PAYMENT_OFFER
با جزئیاتPaymentInstrument
برچسب گذاری شود.
- یک نسخه باید با عنوان
- همه پیشنهادات پرداخت دیگر برای این رستوران باید بهعنوان
OFFER_CATEGORY_ADD_ON_PAYMENT_OFFER
برچسبگذاری شوند.
- پیشنهاد تخفیف 10 درصدی باید دارای
فرآیند توسعه و راه اندازی
در طول ادغام شما، پورتال شریک می تواند به شما با اطلاعات و بازخورد بر اساس توسعه شما کمک کند. روند توسعه این جریان را دنبال می کند:
- ادغام ابتدا در محیط Sandbox توسعه خواهد یافت. شما باید از صادرات تولید (یا حتی داده های تولید به طور مستقیم) در محیط Google Sandbox استفاده کنید. این کمک می کند تا اطمینان حاصل شود که توسعه شما همه موارد لبه را پیدا می کند و به Google امکان می دهد کیفیت داده ها را ارزیابی کند و بر اساس مدل داده شما بهتر به شما کمک کند.
- هنگامی که فید Merchant، Services و Deals کامل و روزانه را به طور مداوم در محیط Google Sandbox آپلود میکنید، تیم Google فیدهای شما را ارزیابی میکند. پس از تایید تیم Google، میتوانید کد خود را برای تولید فشار دهید و ارسال دادههای تولید را به محیط Google Production آغاز کنید.
- پس از اینکه ادغام Production را به طور کامل آزمایش کردید، تیم Google نیز آزمایش خواهد کرد. هنگامی که تمام آزمایشات کامل شد، ادغام شما راه اندازی می شود.
نظارت
برای اطمینان از تجربه کاربری خوب، Google بررسی میکند که پیشنهادات ارائه شده معتبر، صحیح و مطابق با معیارهای خطمشی ما قبل و بعد از راهاندازی هستند. برای انجام این کار، گوگل از ترکیبی از بررسی های انسانی و خودکار استفاده می کند. نتیجه این بررسی ها در داشبورد پیشنهادات مرکز اقدام (فقط تولید) قابل دسترسی خواهد بود. نتیجه این نظارت ممکن است برای تأثیرگذاری بر رتبه بندی پیشنهادات استفاده شود.
چک های خودکار (خزنده ها)
تیم کیفیت گوگل خزنده ها را پیاده سازی می کند. خزندهها اسکریپتهایی هستند که مرورگر وب را برای انجام برخی کلیکها و استخراج اطلاعات پیشنهادی خودکار میکنند، فقط برای اهداف تست کیفیت .
تعداد پرس و جوها
به عنوان مثال، اگر تصمیم گرفتیم 5000 چک در روز ارسال کنیم، به این معنی است که 5000 بار در روز ( به طور مساوی در طول روز توزیع شده است، که تقریباً یک مورد در هر 17 ثانیه است )، خزنده ما تمام اقدامات زیر را که یک کاربر معمولی انجام می دهد انجام می دهد:
- از جستجوی Google شروع کنید و روی پیوند شریک کلیک کنید.
- به دنبال اطلاعات پیشنهاد باشید.
- اگر پیشنهاد نیاز به رزرو داشته باشد، برای تأیید موجود بودن پیشنهاد در زمان مشخص شده (هیچ رزروی انجام نخواهد شد) به سمت جریان رزرو ادامه خواهد داد.
تشخیص اسکراپر وب
برای اطمینان از ممنوع نشدن وب اسکریپر (که ممکن است به این نتیجه برسد که پیشنهادات موجود نیست) مطمئن شوید که سیستم شما به وب scraper ما اجازه می دهد همیشه صفحه شما را جستجو کند. برای شناسایی وب scraper ما:
- Web scraper User-Agent شامل رشته " Google-Offers " خواهد بود:
- مثال: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML، مانند Gecko؛ Google-Offers ) Chrome/104.0.5112.101 Safari/537.36
- همچنین میتوانید بررسی کنید که آیا تماسها از طرف Google با استفاده از DNS معکوس همانطور که در «تأیید Googlebot و سایر خزندههای Google» توصیه میشود، بررسی کنید. در مورد خاص ما، وضوح معکوس DNS از این الگو پیروی می کند:
google-proxy-***-***-***-***.google.com
.
رفتار فنی
ذخیره سازی
برای اهداف کاهش بار در وبسایت شریک، خزندههای ما معمولاً به گونهای پیکربندی شدهاند که به تمام سرصفحههای ذخیرهسازی استاندارد HTTP موجود در پاسخ، احترام بگذارند. این بدان معناست که برای وبسایتهایی که به درستی پیکربندی شدهاند، از واکشی مکرر محتوایی که به ندرت تغییر میکند اجتناب میکنیم (مثلاً کتابخانههای جاوا اسکریپت). برای جزئیات بیشتر در مورد نحوه اجرای حافظه پنهان، این مستندات ذخیره سازی HTTP را بخوانید.