ภาพรวม

พาร์ทเนอร์ที่เข้าร่วมการผสานรวมข้อเสนอต้องตั้งค่าบัญชีให้เสร็จสมบูรณ์ สำหรับขั้นตอนการผสานรวมตามผู้ขายหรือเอนทิตี (นำร่อง) ก่อนเริ่ม การติดตั้งใช้งาน การทดสอบ และการเปิดตัวการผสานรวมข้อเสนอจะอธิบายโดยละเอียด ในคู่มือนี้ โปรดอ่านภาพรวมนี้และนโยบายข้อเสนอ ก่อนทำตามขั้นตอนการผสานรวม

ข้อเสนอ

การผสานรวมข้อเสนอช่วยให้คุณส่งต่อข้อมูลที่มีโครงสร้างเกี่ยวกับโปรโมชันและส่วนลดของผู้ขายที่ใช้กับบริการที่เฉพาะเจาะจงในช่วงเวลาที่เฉพาะเจาะจง ข้อเสนอ ประกอบด้วยข้อเสนอจริง (ส่วนลดเป็นเปอร์เซ็นต์ ส่วนลดเป็นดอลลาร์ ฯลฯ) ช่วงเวลาที่ข้อเสนอใช้ได้ (เวลาที่เฉพาะเจาะจง วันของสัปดาห์ ฯลฯ) และการใช้งานที่เกี่ยวข้อง (ข้อเสนอใช้ได้กับ บริการบางอย่างเท่านั้น) รวมถึงการรวมข้อจำกัดที่ซับซ้อน

ตัวอย่างข้อเสนอ

  • ลดราคาอาหารเรียกน้ำย่อยครึ่งราคาในวันพุธและวันพฤหัสบดีในเดือนธันวาคมตั้งแต่เวลา 12:00 น. ถึง 17:00 น.
  • ซื้อ 1 แถม 1 สำหรับของหวานในมื้อค่ำวันแม่ตั้งแต่เวลา 18:00 น. ถึง 22:00 น.
  • รับส่วนลด $5 สำหรับอาหารจานหลักของมื้อบรันช์ทุกวันอาทิตย์ตั้งแต่เวลา 10:00-14:00 น.
  • ส่วนลด 10% สำหรับข้อเสนอแบบวอล์กอินที่ใช้ร่วมกับส่วนลด 5% สำหรับผู้ติดตามแบบพรีเมียมและ ส่วนลด 5% หากผู้ใช้ชำระเงินผ่านแอปของคุณ

ข้อเสนอต้องอยู่ใน รูปแบบข้อมูลทางเทคนิคและเป็นไปตามข้อกำหนดของการได้รับสิทธิ์จึงจะรวมอยู่ในการผสานรวมได้ โปรดอ่านนโยบายข้อเสนอ เพื่อให้แน่ใจว่าการผสานรวมเป็นไปตามนโยบาย และดูวิธีการ เกี่ยวกับสิ่งที่ต้องทำกับข้อเสนอที่ไม่เป็นไปตามข้อกำหนดทางเทคนิค

การติดตั้งใช้งานข้อเสนอ

การผสานรวมข้อเสนอประกอบด้วยฟีด 2 รายการที่จะอัปโหลดทุกวันหรือที่ความถี่ที่รับประกันความแม่นยำสูง (หมายถึงลดความล้าสมัย) ดังนี้

OfferFeed

ชื่อช่องประเภทข้อกำหนดคำอธิบาย
dataอาร์เรย์ของออบเจ็กต์
(Offer)

ข้อเสนอ

ชื่อช่องประเภทข้อกำหนดคำอธิบาย
offer_idสตริง

ต้องระบุ

รหัสที่ไม่ซ้ำกันของข้อเสนอ ต้องระบุ
entity_idsอาร์เรย์ของสตริง

รายชื่อผู้ขายที่เข้าร่วมข้อเสนอนี้
add_on_offer_applicable_to_all_entitiesบูลีน

หากเป็นจริง ข้อเสนอนี้จะมีผลกับเอนทิตีทั้งหมดภายใต้ผู้รวบรวม ใช้ได้กับข้อเสนอเสริมเท่านั้น
offer_sourceenum
(OfferSource)

ต้องระบุ

โดยข้อเสนออาจมาจากผู้รวบรวมข้อมูล ผู้ขายรายบุคคล หรือแม้แต่บุคคลที่สามในรูปแบบส่วนเสริม ต้องระบุ
action_typeenum
(ActionType)

ต้องระบุ

บริการที่ให้ข้อเสนอ offer_id จะอยู่ใน action_type ได้เพียงประเภทเดียว หากแชร์ข้อเสนอในบริการหลายประเภทได้ คุณจะต้องสร้างข้อเสนอที่ซ้ำกันโดยมีรหัสที่ไม่ซ้ำกันสำหรับบริการแต่ละประเภท ต้องระบุ
offer_modesอาร์เรย์ของ enum
(OfferMode)

ต้องระบุ

วิธีการใช้ข้อเสนอ - วอล์กอิน การจอง ออนไลน์ ฯลฯ ต้องระบุ
offer_categoryenum
(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สตริง

URL ไปยังหน้าข้อเสนอของผู้ขาย ต้องระบุสำหรับ offer_category: OFFER_CATEGORY_BASE_OFFER
image_urlสตริง

URL ไปยังรูปภาพข้อเสนอของผู้ขาย

OfferDetails

ชื่อช่องประเภทข้อกำหนดคำอธิบาย
offer_display_textสตริง

ต้องระบุ

ข้อความข้อเสนอที่ผู้ให้บริการข้อเสนอต้องการแสดงต่อลูกค้าในหน้าผลการค้นหา ต้องระบุ
oneOf
(offer_specification)

ต้องระบุ

ตั้งค่าได้เพียง 1 ฟิลด์ใน oneOf นี้
max_discount_valueออบเจ็กต์
(Money)

ส่วนลดสูงสุดที่ใช้ได้ เช่น ลด 10% สูงสุด 3, 000 บาท
min_spend_valueออบเจ็กต์
(Money)

มูลค่าการใช้จ่ายขั้นต่ำเพื่อรับส่วนลด เช่น ลด 10% เมื่อราคารวมเท่ากับ 1, 000 บาทขึ้นไป
booking_costออบเจ็กต์
(Money)

ค่าใช้จ่ายในการจองข้อเสนอนี้ เช่น ส่วนลด 3, 000 บาทจากใบเรียกเก็บเงินสุดท้ายเมื่อจองโต๊ะในราคา 450 บาท
booking_cost_unitenum
(FeeUnit)

หน่วยของต้นทุนการจอง เช่น ต่อคน ต่อธุรกรรม
convenience_feeออบเจ็กต์
(Fee)

booking_cost_adjustableบูลีน

ไม่ว่าจะปรับต้นทุนการจองได้หรือไม่ เช่น มีการหักต้นทุนการจอง จากใบเรียกเก็บเงินสุดท้าย เช่น ลด 30% สำหรับอาหารค่ำเมื่อจอง ค่าใช้จ่ายในการจองคือ $15 และระบบจะ นำไปใช้กับการเรียกเก็บเงินขั้นสุดท้าย ดังนั้น บิลสุดท้ายจึงเป็น: ยอดใช้จ่ายทั้งหมด - 30% - $15
additional_feesอาร์เรย์ของออบเจ็กต์
(AdditionalFee)

ค่าธรรมเนียมเพิ่มเติมที่เรียกเก็บจากผู้ใช้ เช่น ความสะดวก การจัดการ ฯลฯ

เงินทอง

แสดงจำนวนเงินพร้อมประเภทสกุลเงิน

ชื่อช่องประเภทข้อกำหนดคำอธิบาย
currency_codeสตริง

รหัสสกุลเงิน 3 ตัวอักษรที่กำหนดไว้ใน ISO 4217
unitsสตริง

หน่วยทั้งหมดของจำนวนเงิน เช่น หาก currencyCode เป็น "USD" หน่วย 1 หน่วยจะเท่ากับ 1 ดอลลาร์สหรัฐ
nanosตัวเลข

จำนวนหน่วยนาโน (10^-9) ของจำนวนเงิน ค่าต้องอยู่ระหว่าง -999,999,999 ถึง +999,999,999 หาก units เป็นบวก nanos ต้องเป็นบวกหรือ 0 หาก units เป็น 0 nanos จะเป็นค่าบวก 0 หรือค่าลบก็ได้ หาก units ติดลบ nanos ต้องติดลบหรือเป็น 0 เช่น $-1.75 จะแสดงเป็น units=-1 และ nanos=-750,000,000

ค่าธรรมเนียม

ชื่อช่องประเภทข้อกำหนดคำอธิบาย
unitenum
(FeeUnit)

typeenum
(FeeType)

oneOf
(cost)

ตั้งค่าได้เพียง 1 ฟิลด์ใน oneOf นี้

MoneyRange

ชื่อช่องประเภทข้อกำหนดคำอธิบาย
min_amountออบเจ็กต์
(Money)

max_amountออบเจ็กต์
(Money)

AdditionalFee

ชื่อช่องประเภทข้อกำหนดคำอธิบาย
nameสตริง

ต้องระบุ

ชื่อของค่าธรรมเนียมเพิ่มเติม ตัวอย่าง: ค่าธรรมเนียมเพิ่มเติม ค่าธรรมเนียมการจัดการ ฯลฯ ต้องระบุ
feeออบเจ็กต์
(Fee)

OfferRestrictions

ชื่อช่องประเภทข้อกำหนดคำอธิบาย
combinable_with_other_offersบูลีน

ข้อเสนอนี้ใช้ร่วมกับข้อเสนออื่นๆ ได้หรือไม่ เมื่อเป็นจริง พาร์ทเนอร์จะระบุได้ว่าข้อเสนอนี้ใช้ร่วมกับข้อเสนอใดได้ หากตั้งค่าทั้ง combinable_offer_categories และ combinable_offer_ids ข้อเสนอที่ตรงกับเงื่อนไขใดเงื่อนไขหนึ่งข้างต้นจะใช้ร่วมกันได้
combinable_offer_categoriesอาร์เรย์ของ enum
(OfferCategory)

รายการประเภทข้อเสนอที่ใช้ร่วมกับข้อเสนอนี้ได้ เช่น ข้อเสนอนี้ อาจใช้ร่วมกับคูปองอื่นๆ ได้ หาก combinable_with_other_offers เป็นจริงและไม่ได้ตั้งค่าช่องนี้ ระบบจะรวมข้อเสนอทุกประเภทได้
combinable_offer_idsอาร์เรย์ของสตริง

รายการ offer_id ที่ข้อเสนอนี้ใช้ร่วมได้ ข้อเสนอบางรายการอาจใช้ร่วมกับ other_id อื่นๆ ที่เฉพาะเจาะจงเท่านั้น (ถือเป็นข้อเสนอหลักได้) หาก combinable_with_other_offers เป็นจริงและไม่ได้ตั้งค่าฟิลด์นี้ ระบบจะใช้รหัสข้อเสนอทั้งหมดร่วมกันได้
inclusionsอาร์เรย์ของออบเจ็กต์
(OfferCondition)

รายการเงื่อนไขที่ต้องเป็นไปตามเพื่อให้ข้อเสนอมีผล (เช่น เครื่องดื่มที่ไม่มีแอลกอฮอล์ อาหาร)
exclusionsอาร์เรย์ของออบเจ็กต์
(OfferCondition)

รายการเงื่อนไขที่จะทำให้ข้อเสนอไม่ถูกต้อง (เช่น บุฟเฟต์ ข้อเสนอแบบคอมโบ และค็อกเทล)
min_guestตัวเลข

จำนวนคนขั้นต่ำที่ต้องใช้เพื่อรับข้อเสนอ
food_offer_restrictionsออบเจ็กต์
(FoodOfferRestrictions)

ข้อจำกัดเฉพาะสำหรับข้อเสนออาหาร

OfferCondition

ชื่อช่องประเภทข้อกำหนดคำอธิบาย
descriptionสตริง

FoodOfferRestrictions

ชื่อช่องประเภทข้อกำหนดคำอธิบาย
meal_typesอาร์เรย์ของ enum
(MealType)

ประเภทอาหารที่ใช้ข้อเสนอได้ เช่น อาหารกลางวันหรืออาหารเย็น หากไม่ได้ตั้งค่า ระบบจะใช้ข้อเสนอกับอาหารทุกประเภทได้
restricted_to_certain_coursesบูลีน

ข้อเสนอใช้ได้กับบางหลักสูตรเท่านั้นหรือไม่

คูปอง

ชื่อช่องประเภทข้อกำหนดคำอธิบาย
textสตริง

ข้อความคูปองที่ผู้ให้บริการข้อเสนอต้องการแสดงต่อผู้ใช้
codeสตริง

ต้องระบุ

ต้องใช้รหัสคูปองเพื่อแลกรับข้อเสนอ ต้องระบุ

PaymentInstrument

ชื่อช่องประเภทข้อกำหนดคำอธิบาย
itemsอาร์เรย์ของออบเจ็กต์
(PaymentInstrumentItem)

ต้องระบุ

รายการเครื่องมือการชำระเงินที่ใช้รับข้อเสนอได้ ต้องระบุ
provider_nameสตริง

ต้องระบุ

ชื่อผู้ให้บริการเครื่องมือการชำระเงิน อาจเป็นพาร์ทเนอร์ด้านการธนาคาร ชื่อ ธนาคาร ฯลฯ เช่น American Express, HDFC, ICICI ต้องระบุ

PaymentInstrumentItem

ชื่อช่องประเภทข้อกำหนดคำอธิบาย
typeenum
(PaymentInstrumentType)

ต้องระบุ

ประเภทของเครื่องมือการชำระเงิน ต้องระบุ
nameสตริง

ต้องระบุ

ชื่อของรายการเครื่องมือการชำระเงิน เช่น ชื่อบัตรเครดิต เช่น HDFC Infinia, American Express Platinum ต้องระบุ

การสมัครใช้บริการ

ชื่อช่องประเภทข้อกำหนดคำอธิบาย
nameสตริง

ต้องระบุ

ชื่อของการสมัครใช้บริการ ต้องระบุ
subscription_auto_addedบูลีน

ระบบจะเพิ่มการสมัครใช้บริการโดยอัตโนมัติเมื่อผู้ใช้ใช้ข้อเสนอนี้หรือไม่
costออบเจ็กต์
(Money)

ต้องระบุ

ค่าสมัครใช้บริการ ต้องระบุ
subscription_durationออบเจ็กต์
(Duration)

ต้องระบุ

ระยะเวลาที่การสมัครใช้บริการมีผลที่ subscription_cost ต้องระบุ
terms_and_conditions_urlสตริง

URL ของข้อกำหนดและเงื่อนไขของพาร์ทเนอร์ที่เกี่ยวข้องกับการสมัครใช้บริการนี้

ระยะเวลา

ชื่อช่องประเภทข้อกำหนดคำอธิบาย
secondsสตริง

วินาทีที่ลงชื่อของช่วงเวลา ต้องอยู่ระหว่าง -315,576,000,000 ถึง +315,576,000,000 เท่านั้น หมายเหตุ: ขอบเขตเหล่านี้คำนวณจาก 60 วินาที/นาที * 60 นาที/ชั่วโมง * 24 ชั่วโมง/วัน * 365.25 วัน/ปี * 10000 ปี
nanosตัวเลข

เศษส่วนของวินาทีที่ลงนามที่ความละเอียดระดับนาโนวินาทีของช่วง เวลา ระยะเวลาที่น้อยกว่า 1 วินาทีจะแสดงด้วยฟิลด์ 0 seconds และฟิลด์ nanos ที่เป็นบวกหรือลบ สำหรับระยะเวลา ตั้งแต่ 1 วินาทีขึ้นไป ค่าที่ไม่ใช่ 0 สำหรับฟิลด์ nanos ต้องมี เครื่องหมายเดียวกันกับฟิลด์ seconds ต้องอยู่ระหว่าง -999,999,999 ถึง +999,999,999

ข้อกำหนด

ชื่อช่องประเภทข้อกำหนดคำอธิบาย
urlสตริง

URL ของข้อกำหนดและเงื่อนไขของพาร์ทเนอร์
restricted_to_certain_usersบูลีน

ข้อเสนอจำกัดไว้สำหรับผู้ใช้บางรายหรือไม่
terms_and_conditionsสตริง

ข้อความข้อกำหนดและเงื่อนไขหลักที่พาร์ทเนอร์ระบุ
additional_terms_and_conditionsอาร์เรย์ของสตริง

ข้อกำหนดและเงื่อนไขเพิ่มเติมจากข้อกำหนดและเงื่อนไขหลักของพาร์ทเนอร์

ValidityPeriod

ชื่อช่องประเภทข้อกำหนดคำอธิบาย
valid_periodออบเจ็กต์
(ValidityRange)

การประทับเวลาเริ่มต้นและสิ้นสุดที่ข้อเสนอใช้ได้ เวลาเหล่านี้ต้องแสดงถึงวันต่างๆ ที่แตกต่างกัน กล่าวคือ เวลาเริ่มต้นต้องเป็น 00:00 (ต้นวัน) และเวลาสิ้นสุดต้องเป็น 00:00 (ไม่รวม) ในวันที่ ระยะเวลาที่ใช้ได้สิ้นสุดลง
time_of_dayอาร์เรย์ของออบเจ็กต์
(TimeOfDayWindow)

ระบุช่วงเวลาที่ถูกต้องในวันหนึ่งๆ และระบุวันที่ที่ข้อเสนอใช้ได้ เช่น วันจันทร์: 10:00 น. - 17:00 น. วันอังคาร: 10:00 น. - 14:00 น. วันอังคาร: 17:00 น. - 19:00 น. วันพุธ, พฤหัสบดี, ศุกร์, เสาร์, อาทิตย์: 15:00 น. - 19:00 น. หากไม่ได้ตั้งค่าใดๆ แสดงว่าข้อเสนอพร้อมให้บริการตลอดเวลาภายใน valid_period
time_exceptionsอาร์เรย์ของออบเจ็กต์
(ValidTimeException)

ระบุข้อยกเว้นสำหรับ valid_period และ valid_time_of_week ที่ระบุไว้ข้างต้น

ValidityRange

ช่วงการประทับเวลาแบบปิด-เปิด

ชื่อช่องประเภทข้อกำหนดคำอธิบาย
valid_from_timeออบเจ็กต์
(Timestamp)

ต้องระบุ

เวลาเริ่มต้นของช่วง (รวม) ต้องระบุ
valid_through_timeออบเจ็กต์
(Timestamp)

เวลาสิ้นสุดของช่วง (ไม่รวม) หากไม่ได้ตั้งค่าไว้ หมายความว่าช่วงเวลานี้จะไม่มีวันสิ้นสุด ไม่บังคับ

การประทับเวลา

ชื่อช่องประเภทข้อกำหนดคำอธิบาย
secondsสตริง

แสดงวินาทีของเวลา UTC ตั้งแต่ Epoch ของ Unix 1970-01-01T00:00:00Z ต้องอยู่ระหว่าง 0001-01-01T00:00:00Z ถึง 9999-12-31T23:59:59Z
nanosตัวเลข

เศษส่วนของวินาทีที่ไม่เป็นค่าลบที่ความละเอียดระดับนาโนวินาที ค่าวินาทีที่เป็นลบ ซึ่งมีเศษส่วนยังคงต้องมีค่านาโนที่ไม่ใช่ค่าลบ ซึ่งนับไปข้างหน้าตามเวลา ต้องมีค่าระหว่าง 0 ถึง 999,999,999 เท่านั้น

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 และน้อยกว่าหรือเท่ากับ 999,999,999

ValidTimeException

ชื่อช่องประเภทข้อกำหนดคำอธิบาย
exceptional_periodออบเจ็กต์
(ValidityRange)

การประทับเวลาเริ่มต้นและสิ้นสุดที่ข้อเสนอใช้ไม่ได้ เวลาเหล่านี้ต้องแสดงถึงวันต่างๆ ที่แตกต่างกัน กล่าวคือ เวลาเริ่มต้นต้องเป็น 00:00 (ต้นวัน) และเวลาสิ้นสุดต้องเป็น 00:00 (ไม่รวม) ในวันที่ระยะเวลาข้อยกเว้นสิ้นสุด

OfferSource

ชื่อคำอธิบาย
OFFER_SOURCE_UNSPECIFIED
OFFER_SOURCE_AGGREGATOR

ActionType

ชื่อคำอธิบาย
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

OfferCategory

หมวดหมู่ของข้อเสนอ ข้อเสนอพื้นฐานคือข้อเสนอมาตรฐานที่ลูกค้าทุกรายมีสิทธิ์ได้รับ เช่น ส่วนลด 10% เมื่อใช้จ่ายมากกว่า 3,000 บาท ข้อเสนอพื้นฐานที่ถูกจำกัดโดยคูปองหรือเครื่องมือการชำระเงินจะมีช่องที่เกี่ยวข้องตั้งค่าไว้ นอกจากนี้ เรายังมีข้อเสนอเสริม เช่น 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

MealType

ชื่อคำอธิบาย
MEAL_TYPE_UNSPECIFIED
MEAL_TYPE_BREAKFAST
MEAL_TYPE_LUNCH
MEAL_TYPE_DINNER

PaymentInstrumentType

ชื่อคำอธิบาย
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 สำหรับคำสั่งซื้อ ผู้ขายยังเสนอส่วนลดที่กำหนดเอง เช่น "ซื้อ 1 แถม 1" ผ่านช่องข้อกำหนดที่เกี่ยวข้องได้ด้วย ต้องระบุ

ชื่อช่องประเภทข้อกำหนดคำอธิบาย
discount_percentตัวเลข

ใช้ร่วมกับ discount_value, other_offer_detail_text ไม่ได้

เปอร์เซ็นต์ของใบเรียกเก็บเงินที่ได้รับส่วนลด [0, 100] สำหรับข้อเสนอ 1+1 หรือส่วนลด 50% ที่ใช้ได้กับอาหารทั้งมื้อ (เช่น บุฟเฟ่ต์ 1+1, ส่วนลด 1+1 สำหรับใบเรียกเก็บเงินทั้งหมด, ส่วนลด 1+1 สำหรับเซ็ตเมนู) ค่านี้สามารถ ตั้งค่าเป็น 50 ได้
discount_valueออบเจ็กต์
(Money)

ใช้ร่วมกับ discount_percent, other_offer_detail_text ไม่ได้

มูลค่าคงที่ของส่วนลด
other_offer_detail_textสตริง

ใช้ร่วมกับ discount_percent, discount_value ไม่ได้

ข้อความรูปแบบอิสระสำหรับอธิบายส่วนลด สำหรับข้อเสนอ 1+1 ที่เฉพาะเจาะจง (เช่น เครื่องดื่ม 1+1, เมนูจานหลัก +1, เมนู 1+1 ที่เลือก) ควรระบุรายละเอียดเหล่านี้ที่นี่

ต้นทุน

ชื่อช่องประเภทข้อกำหนดคำอธิบาย
amountออบเจ็กต์
(Money)

ใช้ร่วมกับ amount_range ไม่ได้

amount_rangeออบเจ็กต์
(MoneyRange)

ใช้ร่วมกับ amount ไม่ได้

การอัปโหลดฟีด

ต้องอัปโหลดฟีดข้อเสนอ ไปยังเซิร์ฟเวอร์ SFTP ของฟีด Generic ทำตามวิธีการในบทแนะนำวิธีใช้เซิร์ฟเวอร์ SFTP ของฟีดทั่วไป และใช้nameที่ตั้งค่าเป็น google.offer ในไฟล์ ตัวอธิบาย

ความถี่ในการอัปโหลด

โดยทั่วไป Google คาดหวังการอัปโหลดฟีด 1 ครั้งต่อวัน คุณอาจเพิ่มหรือลดความถี่ได้โดยขึ้นอยู่กับความถี่ในการอัปเดตข้อเสนอในฝั่งของคุณเพื่อให้มั่นใจว่ามีความแม่นยำสูงอย่างสม่ำเสมอ โปรดปรึกษา Google POC ของคุณ

ข้อมูลจะใช้เวลา 2-3 ชั่วโมงก่อนที่จะปรากฏใน 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 รายละเอียด
  • ร้านอาหารเสนอส่วนลด 10% สำหรับลูกค้าที่วอล์กอินและส่วนลด 5% เมื่อชำระเงินด้วย บัตรเครดิตที่เฉพาะเจาะจง ซึ่งทั้ง 2 ส่วนลดนี้ใช้ร่วมกันได้

    • ข้อเสนอสำหรับลูกค้าที่เข้ามาที่ร้าน 10% ควรติดแท็กเป็น OFFER_CATEGORY_BASE_OFFER
    • ข้อเสนอบัตรเครดิตลด 5% ควรมี 2 รายการ โดยรายการหนึ่งติดแท็กเป็น OFFER_CATEGORY_BASE_OFFER และอีกรายการติดแท็กเป็น OFFER_CATEGORY_ADD_ON_PAYMENT_OFFER
  • ร้านอาหารเสนอส่วนลด 10% สำหรับมื้อกลางวันในวันธรรมดาเท่านั้น และส่วนลด 5% ทุกเมื่อ เมื่อชำระเงินด้วยบัตรเครดิตที่ระบุ

    • ข้อเสนอส่วนลด 10% ควรมีValidityPeriod ตั้งค่าเป็น ระบุเฉพาะในช่วงเวลาอาหารกลางวันของร้านอาหารในวันธรรมดา
    • ควรส่งข้อเสนอบัตรเครดิตลด 5% เป็น 2 ฉบับ
      • สำเนาหนึ่งควรติดแท็กเป็น OFFER_CATEGORY_BASE_OFFER โดยมีรายละเอียด PaymentInstrument ValidityPeriod ควรตั้งค่าให้ยกเว้น ช่วงเวลาอาหารกลางวันในวันธรรมดาเมื่อข้อเสนอส่วนลด 10% สำหรับมื้อกลางวันใช้งานอยู่
      • โดยสำเนาหนึ่งควรติดแท็กเป็น OFFER_CATEGORY_ADD_ON_PAYMENT_OFFER พร้อมระบุรายละเอียด PaymentInstrument
    • ข้อเสนอการชำระเงินอื่นๆ ทั้งหมดสำหรับร้านอาหารนี้ควรแท็กเป็น OFFER_CATEGORY_ADD_ON_PAYMENT_OFFER

กระบวนการพัฒนาและการเปิดตัว

ตลอดการผสานรวม Partner Portal จะช่วยให้ข้อมูลและแสดงความคิดเห็นตามการพัฒนาของคุณได้ กระบวนการพัฒนาจะเป็นไปตามขั้นตอนต่อไปนี้

  • โดยจะพัฒนาการผสานรวมในสภาพแวดล้อม Sandbox ก่อน คุณควรใช้การส่งออกข้อมูลการผลิต (หรือแม้แต่ข้อมูลการผลิตโดยตรง) ในสภาพแวดล้อมแซนด์บ็อกซ์ของ Google ซึ่งจะช่วยให้การพัฒนาของคุณครอบคลุมกรณีที่ซับซ้อนทั้งหมด และช่วยให้ Google ประเมินคุณภาพของข้อมูลและช่วยเหลือคุณได้ดียิ่งขึ้นตามรูปแบบข้อมูล
  • เมื่อคุณอัปโหลดฟีดผู้ขาย บริการ และดีลรายวันเสร็จสมบูรณ์อย่างสม่ำเสมอในสภาพแวดล้อมแซนด์บ็อกซ์ของ Google ทีม Google จะประเมินฟีดของคุณ เมื่อทีม Google อนุมัติแล้ว คุณจะพุชโค้ด ไปยังเวอร์ชันที่ใช้งานจริงและเริ่มส่งข้อมูลเวอร์ชันที่ใช้งานจริงไปยังสภาพแวดล้อมเวอร์ชันที่ใช้งานจริงของ Google ได้
  • หลังจากที่คุณทดสอบการผสานรวมเวอร์ชันที่ใช้งานจริงอย่างเต็มรูปแบบแล้ว ทีม Google จะ ทดสอบด้วยเช่นกัน เมื่อการทดสอบทั้งหมดเสร็จสมบูรณ์แล้ว การผสานรวมจะ เปิดตัว

การตรวจสอบ

Google จะตรวจสอบว่าข้อเสนอที่ระบุนั้นถูกต้องและเป็นไปตามเกณฑ์นโยบายของเราทั้งก่อนและหลังการเปิดตัว เพื่อให้ผู้ใช้ได้รับประสบการณ์การใช้งานที่ดี โดย Google จะใช้การตรวจสอบทั้งจากเจ้าหน้าที่และการตรวจสอบอัตโนมัติ ผลการตรวจสอบเหล่านี้จะเข้าถึงได้ในแดชบอร์ดข้อเสนอของ Action Center (เวอร์ชันที่ใช้งานจริงเท่านั้น) ผลลัพธ์ของการตรวจสอบนี้อาจนำไปใช้เพื่อ ส่งผลต่อการจัดอันดับข้อเสนอ

การตรวจสอบอัตโนมัติ (Crawler)

ทีมคุณภาพของ Google เป็นผู้ติดตั้งใช้งาน Crawler Crawler คือสคริปต์ที่ทำให้เว็บเบราว์เซอร์ทำงานโดยอัตโนมัติเพื่อคลิกบางอย่างและดึงข้อมูลข้อเสนอ เพื่อวัตถุประสงค์ในการทดสอบคุณภาพเท่านั้น

จำนวนการค้นหา

ตัวอย่างเช่น หากเราตัดสินใจส่งการตรวจสอบ 5,000 ครั้งต่อวัน หมายความว่า 5,000 ครั้งต่อวัน (กระจายอย่างสม่ำเสมอตลอดทั้งวัน ซึ่งก็คือประมาณ 1 ครั้งทุกๆ 17 วินาที) Crawler ของเราจะดำเนินการทั้งหมดต่อไปนี้ที่ผู้ใช้ทั่วไปจะทำ

  • เริ่มจาก Google Search แล้วคลิกลิงก์พาร์ทเนอร์
  • มองหาข้อมูลข้อเสนอ
  • หากข้อเสนอต้องมีการจอง ระบบจะนำคุณไปยังขั้นตอนการจองเพื่อ ยืนยันว่าข้อเสนอพร้อมให้บริการในเวลาที่ระบุ (จะไม่มีการจอง ใดๆ)

การตรวจจับโปรแกรมคัดลอกข้อมูลบนเว็บ

โปรดตรวจสอบว่าระบบอนุญาตให้ Web Scraper ของเราค้นหาหน้าเว็บของคุณได้ตลอดเวลา เพื่อให้มั่นใจว่า Web Scraper จะไม่ถูกแบน (ซึ่งอาจทำให้สรุปได้ว่าข้อเสนอไม่พร้อมใช้งาน) วิธีระบุโปรแกรมคัดลอกข้อมูลบนเว็บของเรา

  • User-Agent ของ Web Scraper จะมีสตริง "Google-Offers" ดังนี้
    • ตัวอย่าง: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko; Google-Offers) Chrome/104.0.5112.101 Safari/537.36
  • นอกจากนี้ คุณยังตรวจสอบได้ว่าการเรียกมาจาก Google หรือไม่โดยใช้ DNS แบบย้อนกลับตามที่แนะนำใน"การยืนยัน Googlebot และโปรแกรม Crawl อื่นๆ ของ Google" ในกรณีของเรา การแปลง DNS แบบย้อนกลับจะเป็นไปตามรูปแบบนี้ google-proxy-***-***-***-***.google.com

ลักษณะการทำงานทางเทคนิค

การแคช

เพื่อลดภาระในเว็บไซต์พาร์ทเนอร์ โดยทั่วไปเราจะกำหนดค่า Crawler ให้ยึดตามส่วนหัวการแคช HTTP มาตรฐานทั้งหมดที่มีในการตอบกลับ ซึ่งหมายความว่าสำหรับเว็บไซต์ที่กำหนดค่าอย่างถูกต้อง เราจะหลีกเลี่ยงการดึงข้อมูลเนื้อหาที่เปลี่ยนแปลงไม่บ่อย (เช่น ไลบรารี JavaScript) ซ้ำๆ ดูรายละเอียดเพิ่มเติมเกี่ยวกับวิธี ใช้การแคชได้ที่เอกสารประกอบเกี่ยวกับการแคช HTTP