फ़ीड इंटिग्रेशन की सुविधा देता है

ऑफ़र

ऑफ़र इंटिग्रेशन की मदद से, कारोबारी या कंपनी की ओर से दी जाने वाली छूट और प्रमोशन के बारे में स्ट्रक्चर्ड जानकारी दी जा सकती है. साथ ही, यह भी बताया जा सकता है कि ये छूट और प्रमोशन, किन सेवाओं पर और कब लागू होते हैं. ऑफ़र में ये चीज़ें शामिल होती हैं: असल ऑफ़र (छूट का प्रतिशत, डॉलर में छूट ...), ऑफ़र की समयसीमा (हफ़्ते के कुछ खास समय, दिन ...), और लागू होने वाले इस्तेमाल (ऑफ़र का इस्तेमाल सिर्फ़ कुछ सेवाओं पर किया जा सकता है). साथ ही, इसमें पाबंदियों के जटिल कॉम्बिनेशन भी शामिल होते हैं.

ऑफ़र के उदाहरण:

  • दिसंबर में बुधवार और गुरुवार को दोपहर 12 बजे से शाम 5 बजे तक, ऐपटाइज़र पर 50% की छूट
  • मदर्स डे पर शाम 6 बजे से रात 10 बजे तक डिनर के लिए, एक डिज़र्ट खरीदने पर एक डिज़र्ट मुफ़्त पाएं
  • हर रविवार सुबह 10 बजे से दोपहर 2 बजे तक, ब्रंच के मुख्य व्यंजन पर 5 डॉलर की छूट
  • स्टोर पर जाकर खरीदारी करने पर 10% की छूट. इसे पैसे चुकाकर प्रीमियम सदस्यता लेने वालों को मिलने वाली 5% की छूट के साथ जोड़ा जा सकता है. इसके अलावा, अगर उपयोगकर्ता आपके ऐप्लिकेशन से पेमेंट करता है, तो उसे 5% की छूट मिलती है.

इंटिग्रेशन में किसी ऑफ़र को शामिल करने के लिए, यह ज़रूरी है कि वह तकनीकी डेटा मॉडल के मुताबिक हो. साथ ही, हमारी ज़रूरी शर्तें पूरी करता हो. ऑफ़र से जुड़ी हमारी नीतियां ज़रूर पढ़ें. इससे आपको यह पक्का करने में मदद मिलेगी कि आपका इंटिग्रेशन, नीतियों के मुताबिक है. साथ ही, आपको यह भी पता चलेगा कि तकनीकी ज़रूरी शर्तें पूरी न करने वाले ऑफ़र के साथ क्या करना चाहिए.

ऑफ़र लागू करना

ऑफ़र इंटिग्रेशन में दो फ़ीड शामिल होते हैं. इन्हें हर दिन या ऐसी फ़्रीक्वेंसी पर अपलोड किया जाएगा जिससे यह पक्का हो सके कि डेटा ज़्यादा सटीक है. इसका मतलब है कि डेटा पुराना नहीं है:

OfferFeed

फ़ील्ड का नामटाइपआवश्यकताब्यौरा
dataobject
(Offer) का कलेक्शन

ऑफ़र

फ़ील्ड का नामटाइपआवश्यकताब्यौरा
offer_idस्ट्रिंग

ज़रूरी है

ऑफ़र का यूनीक आईडी. ज़रूरी है.
entity_idsस्ट्रिंग का कलेक्शन

इस ऑफ़र में हिस्सा लेने वाले कारोबारियों या कंपनियों की सूची.
add_on_offer_applicable_to_all_entitiesबूलियन

अगर यह वैल्यू 'सही है' पर सेट है, तो इसका मतलब है कि यह ऑफ़र, एग्रीगेटर के तहत आने वाली सभी इकाइयों पर लागू होता है. यह सिर्फ़ ऐड ऑन ऑफ़र के लिए लागू होता है.
offer_sourceenum
(OfferSource)

ज़रूरी है

कोई ऑफ़र, एग्रीगेटर, कोई कारोबारी या कंपनी उपलब्ध करा सकती है. इसके अलावा, ऐड-ऑन के तौर पर कोई तीसरा पक्ष भी ऑफ़र उपलब्ध करा सकता है. ज़रूरी है.
action_typeenum
(ActionType)

ज़रूरी है

वह सेवा जो ऑफ़र दे रही है. एक offer_id सिर्फ़ एक action_type से जुड़ा हो सकता है. अगर किसी ऑफ़र को कई तरह की सेवाओं के साथ शेयर किया जा सकता है, तो हर सेवा के लिए डुप्लीकेट ऑफ़र बनाए जाने चाहिए. इन ऑफ़र के यूनीक आईडी होने चाहिए. ज़रूरी है.
offer_modesenum का कलेक्शन
(OfferMode)

ज़रूरी है

ऑफ़र का फ़ायदा पाने के तरीके - कारोबार की जगह पर जाकर, बुकिंग करके, ऑनलाइन वगैरह. ज़रूरी है.
offer_categoryenum
(OfferCategory)

ज़रूरी है

ऑफ़र की कैटगरी. ज़रूरी है.
source_assigned_priorityसंख्या

नॉन-नेगेटिव पूर्णांक ([1-100], जहां 1 का मतलब सबसे ज़्यादा प्राथमिकता है) जो सोर्स की ओर से असाइन किए गए ऑफ़र के प्राथमिकता लेवल को दिखाता है. जब एक ही कारोबारी या कंपनी के लिए कई ऑफ़र उपलब्ध होते हैं, तो यह ऑफ़र की रैंकिंग तय करने के लिए एक सिग्नल होगा. 0 का मतलब है कि प्राथमिकता सेट नहीं की गई है.
offer_detailsऑब्जेक्ट
(OfferDetails)

ज़रूरी है

ऑफ़र की जानकारी, जैसे कि छूट, बुकिंग का शुल्क वगैरह. ज़रूरी है.
offer_restrictionsऑब्जेक्ट
(OfferRestrictions)

ज़रूरी है

इससे पता चलता है कि ऑफ़र पर किस तरह की पाबंदी लगाई गई है. जैसे, क्या सदस्यता/पेमेंट करने का तरीका ज़रूरी है, क्या इस ऑफ़र को अन्य ऑफ़र के साथ जोड़ा जा सकता है (और किस तरह के ऑफ़र के साथ), वगैरह. ज़रूरी है.
couponobject
(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.
termsobject
(Terms)

ज़रूरी है

ऑफ़र के नियम और शर्तें. ज़रूरी है.
validity_periodsऑब्जेक्ट का कलेक्शन
(ValidityPeriod)

ज़रूरी है

ऑफ़र के मान्य रहने की अवधि. इससे पता चलता है कि ऑफ़र किस समयावधि के लिए मान्य है. इसमें शुरू और खत्म होने का समय, हफ़्ते के दिन वगैरह शामिल हैं. ज़रूरी है.
offer_urlस्ट्रिंग

कारोबारी या कंपनी के ऑफ़र पेज का यूआरएल. यह offer_category के लिए ज़रूरी है: OFFER_CATEGORY_BASE_OFFER.
tagsenum की कैटगरी
(OfferTag)

ऑफ़र से जुड़े खास टैग. इसका इस्तेमाल "त्योहारी सीज़न", "सबसे ज़्यादा रेटिंग वाली", "सबसे ज़्यादा बुक की गई" वगैरह जैसे खास ऑफ़र की पहचान करने के लिए किया जाता है.
brand_idस्ट्रिंग

इससे ऑफ़र से जुड़े ब्रैंड की पहचान होती है. अगर यह नीति सेट नहीं है, तो डिफ़ॉल्ट ब्रैंड का इस्तेमाल किया जाता है.
availability_levelenum
(AvailabilityLevel)

ऑफ़र के उपलब्ध होने का लेवल.

OfferDetails

फ़ील्ड का नामटाइपआवश्यकताब्यौरा
offer_display_textस्ट्रिंग

ज़रूरी है

ऑफ़र देने वाला व्यक्ति या कंपनी, खोज नतीजों के पेज पर खरीदारों को ऑफ़र का जो टेक्स्ट दिखाना चाहती है. ध्यान दें कि हो सकता है कि उपयोगकर्ताओं को यह जानकारी ठीक उसी तरह न दिखे जैसी आपने दी है. हम इसे फिर से लिखने/इसमें बदलाव करने के लिए, अन्य मेटाडेटा का इस्तेमाल कर सकते हैं. ज़रूरी है.
oneOf
(offer_specification)

ज़रूरी है

इस oneOf में मौजूद फ़ील्ड में से सिर्फ़ एक को सेट किया जा सकता है.
max_discount_valueऑब्जेक्ट
(Money)

ज़्यादा से ज़्यादा मिलने वाली छूट. उदाहरण के लिए, 10,000 रुपये तक की खरीदारी पर 10% की छूट.
min_spend_valueobject
(Money)

छूट पाने के लिए, कम से कम खर्च की जाने वाली रकम. उदाहरण के लिए, कुल कीमत 100 डॉलर या इससे ज़्यादा होने पर 10% की छूट.
booking_costऑब्जेक्ट
(Money)

इस ऑफ़र को बुक करने की कीमत. उदाहरण के लिए, 15 डॉलर में टेबल बुक करने पर, फ़ाइनल बिल पर 100 डॉलर की छूट.
booking_cost_unitenum
(FeeUnit)

बुकिंग की लागत की इकाई. उदाहरण के लिए, हर व्यक्ति के लिए, हर लेन-देन के लिए.
convenience_feeऑब्जेक्ट
(Fee)

booking_cost_adjustableबूलियन

क्या बुकिंग की लागत को अडजस्ट किया जा सकता है. इसका मतलब है कि बुकिंग की लागत को फ़ाइनल बिल से घटा दिया जाता है. उदाहरण के लिए: बुकिंग करने पर डिनर पर 30% की छूट. बुकिंग के लिए 15 डॉलर का शुल्क लिया जाएगा. इसे फ़ाइनल बिल में जोड़ दिया जाएगा. इसलिए, फ़ाइनल बिल: कुल खर्च - 30% - 15 डॉलर
additional_feesobject
(AdditionalFee) का कलेक्शन

उपयोगकर्ता से लिया जाने वाला अतिरिक्त शुल्क. उदाहरण: सुविधा, हैंडलिंग, डिलीवरी, पैकेजिंग, सेवा शुल्क वगैरह.
offer_discount_typeenum
(OfferDiscountType)

छूट का टाइप.
gift_card_infoऑब्जेक्ट
(GiftCardInfo)

उपहार कार्ड के ऑफ़र के बारे में खास जानकारी.

पैसे

यह मुद्रा के टाइप के साथ-साथ, पैसे की रकम को दिखाता है.

फ़ील्ड का नामटाइपआवश्यकताब्यौरा
currency_codeस्ट्रिंग

ISO 4217 में तय किया गया तीन अक्षरों वाला करंसी कोड.
unitsसंख्या

रकम की पूरी यूनिट. उदाहरण के लिए, अगर currencyCode की वैल्यू "USD" है, तो एक यूनिट की कीमत एक डॉलर है.
nanosसंख्या

यह रकम की नैनो (10^-9) यूनिट की संख्या होती है. वैल्यू, -999,999,999 और +999,999,999 के बीच होनी चाहिए. हालांकि, इन दोनों में से भी कोई संख्या हो सकती है. अगर units की वैल्यू पॉज़िटिव है, तो nanos की वैल्यू पॉज़िटिव या शून्य होनी चाहिए. अगर units की वैल्यू शून्य है, तो nanos की वैल्यू पॉज़िटिव, शून्य या नेगेटिव हो सकती है. अगर units नेगेटिव है, तो nanos नेगेटिव या शून्य होना चाहिए. उदाहरण के लिए, -1.75 डॉलर को units=-1 और nanos=-750,000,000 के तौर पर दिखाया जाता है.

शुल्क

फ़ील्ड का नामटाइपआवश्यकताब्यौरा
unitenum
(FeeUnit)

typeenum
(FeeType)

oneOf
(cost)

इस oneOf में मौजूद फ़ील्ड में से सिर्फ़ एक को सेट किया जा सकता है.

MoneyRange

फ़ील्ड का नामटाइपआवश्यकताब्यौरा
min_amountऑब्जेक्ट
(Money)

max_amountऑब्जेक्ट
(Money)

AdditionalFee

फ़ील्ड का नामटाइपआवश्यकताब्यौरा
nameस्ट्रिंग

ज़रूरी है

अतिरिक्त शुल्क का नाम. उदाहरण: सुविधा शुल्क, हैंडलिंग के लिए लगने वाला शुल्क वगैरह. ज़रूरी है.
feeऑब्जेक्ट
(Fee)

GiftCardInfo

फ़ील्ड का नामटाइपआवश्यकताब्यौरा
oneOf
(denomination_type)

इस oneOf में मौजूद फ़ील्ड में से सिर्फ़ एक को सेट किया जा सकता है.

FixedDenominations

फ़ील्ड का नामटाइपआवश्यकताब्यौरा
amountsऑब्जेक्ट का कलेक्शन
(Money)

अलग-अलग उपलब्ध सभी वैल्यू की सूची (जैसे, [100, 500, 1000]).

OfferRestrictions

फ़ील्ड का नामटाइपआवश्यकताब्यौरा
combinable_with_other_offersबूलियन

इस ऑफ़र को अन्य ऑफ़र के साथ इस्तेमाल किया जा सकता है या नहीं. 'सही है' पर सेट होने पर, पार्टनर यह तय कर सकते हैं कि इस ऑफ़र को किन अन्य ऑफ़र के साथ जोड़ा जा सकता है. अगर combinable_offer_categories और combinable_offer_ids, दोनों सेट हैं, तो ऊपर दी गई किसी भी शर्त से मैच करने वाले ऑफ़र को जोड़ा जा सकेगा.
combinable_offer_categoriesenum का कलेक्शन
(OfferCategory)

ऑफ़र के टाइप की सूची, जिनके साथ इस ऑफ़र को जोड़ा जा सकता है. उदाहरण के लिए, इस ऑफ़र को अन्य कूपन के साथ इस्तेमाल किया जा सकता है. अगर combinable_with_other_offers की वैल्यू true है और इस फ़ील्ड को सेट नहीं किया गया है, तो सभी तरह के ऑफ़र जोड़े जा सकेंगे.
combinable_offer_idsस्ट्रिंग का कलेक्शन

उन offer_id की सूची जिनके साथ इस ऑफ़र को जोड़ा जा सकता है. ऐसा हो सकता है कि कुछ ऑफ़र सिर्फ़ कुछ खास offer_id (इन्हें पैरंट ऑफ़र माना जा सकता है) के साथ इस्तेमाल किए जा सकें. अगर combinable_with_other_offers की वैल्यू true पर सेट है और इस फ़ील्ड को सेट नहीं किया गया है, तो सभी ऑफ़र आईडी को जोड़ा जा सकेगा.
inclusionsobject
(OfferCondition) का कलेक्शन

उन शर्तों की सूची जो ऑफ़र के मान्य होने के लिए पूरी होनी चाहिए. जैसे, बिना अल्कोहल वाली ड्रिंक, खाना.
exclusionsऑब्जेक्ट का कलेक्शन
(OfferCondition)

उन शर्तों की सूची जिनकी वजह से ऑफ़र अमान्य हो जाएगा. जैसे, बुफ़े, कॉम्बो ऑफ़र, और कॉकटेल.
min_guestसंख्या

ऑफ़र का फ़ायदा पाने के लिए, कम से कम इतने लोग होने चाहिए. ध्यान दें: यह फ़ील्ड सिर्फ़ डाइनिंग के लिए बुकिंग पर लागू होता है. इसका इस्तेमाल अन्य वर्टिकल के लिए नहीं किया जाना चाहिए.
food_offer_restrictionsऑब्जेक्ट
(FoodOfferRestrictions)

खाने-पीने की चीज़ों के ऑफ़र पर लागू होने वाली पाबंदियां.
max_redemption_countसंख्या

इस ऑफ़र को इस्तेमाल करने की संख्या से जुड़ी पाबंदियां. वैल्यू 0 का मतलब है कि कोई सीमा नहीं है. उदाहरण के लिए, अगर आपने वैल्यू के तौर पर 3 चुना है, तो इसका मतलब है कि उपयोगकर्ता इस ऑफ़र का इस्तेमाल तीन बार कर सकता है.
max_total_discount_valueobject
(Money)

इस ऑफ़र के तहत, कई लेन-देन करने पर मिलने वाली ज़्यादा से ज़्यादा छूट.
special_conditionsस्ट्रिंग का कलेक्शन

इस ऑफ़र के लिए खास शर्तें, जो उपयोगकर्ता को दिखानी ज़रूरी हैं. उदाहरण: "सिर्फ़ [area] में पेमेंट के लिए मान्य है", "ऑनलाइन पेमेंट शामिल नहीं है", "सेल के दौरान, उपहार वाउचर का इस्तेमाल किया जा सकता है."

OfferCondition

फ़ील्ड का नामटाइपआवश्यकताब्यौरा
descriptionस्ट्रिंग

FoodOfferRestrictions

फ़ील्ड का नामटाइपआवश्यकताब्यौरा
meal_typesenum
(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बूलियन

यह तय करना कि जब कोई उपयोगकर्ता इस ऑफ़र का फ़ायदा लेता है, तो सदस्यता अपने-आप जुड़ जाए या नहीं
costobject
(Money)

ज़रूरी है

सदस्यता का शुल्क. ज़रूरी है.
subscription_durationऑब्जेक्ट
(Duration)

ज़रूरी है

सदस्यता शुल्क के हिसाब से, सदस्यता कितने समय तक मान्य है. ज़रूरी है.
terms_and_conditions_urlस्ट्रिंग

इस सदस्यता से जुड़े पार्टनर के नियमों और शर्तों का यूआरएल.

कुल समय

फ़ील्ड का नामटाइपआवश्यकताब्यौरा
secondsसंख्या

समय अवधि के साइन किए गए सेकंड. यह वैल्यू -315,576,000,000 से +315,576,000,000 के बीच होनी चाहिए. ध्यान दें: इन सीमाओं का हिसाब इस तरह लगाया जाता है: 60 सेकंड/मिनट * 60 मिनट/घंटा * 24 घंटे/दिन * 365.25 दिन/साल * 10,000 साल
nanosसंख्या

समय की अवधि के नैनोसेकंड रिज़ॉल्यूशन पर, सेकंड के साइन किए गए फ़्रैक्शन. एक सेकंड से कम की अवधि को 0 seconds फ़ील्ड और पॉज़िटिव या नेगेटिव nanos फ़ील्ड से दिखाया जाता है. एक सेकंड या उससे ज़्यादा की अवधि के लिए, nanos फ़ील्ड की वैल्यू शून्य नहीं होनी चाहिए. साथ ही, यह वैल्यू seconds फ़ील्ड की वैल्यू के साइन से मेल खानी चाहिए. यह -999,999,999 से +999,999,999 के बीच होना चाहिए.

शर्तें

फ़ील्ड का नामटाइपआवश्यकताब्यौरा
urlस्ट्रिंग

पार्टनर के नियमों और शर्तों का यूआरएल.
restricted_to_certain_usersबूलियन

यह ऑफ़र कुछ उपयोगकर्ताओं के लिए प्रतिबंधित है या नहीं.
terms_and_conditionsस्ट्रिंग

पार्टनर की ओर से उपलब्ध कराया गया, मुख्य नियम और शर्तें.
additional_terms_and_conditionsस्ट्रिंग का कलेक्शन

पार्टनर के मुख्य नियम और शर्तों के अलावा, अन्य नियम और शर्तें.

ValidityPeriod

फ़ील्ड का नामटाइपआवश्यकताब्यौरा
valid_periodobject
(ValidityRange)

ऑफ़र के शुरू और खत्म होने का टाइमस्टैंप. ये समय अलग-अलग दिनों के होने चाहिए. इसका मतलब है कि शुरू होने का समय 00:00 (दिन की शुरुआत) होना चाहिए और खत्म होने का समय, मान्य रहने की अवधि खत्म होने के दिन 00:00 (एक्सक्लूसिव) होना चाहिए.
time_of_dayऑब्जेक्ट का कलेक्शन
(TimeOfDayWindow)

इस एट्रिब्यूट की वैल्यू से यह पता चलता है कि किसी दिन ऑफ़र किस समयावधि के लिए मान्य है. साथ ही, यह भी पता चलता है कि ऑफ़र किन दिनों के लिए उपलब्ध है. आधी रात के बाद तक चलने वाली समयावधि (जैसे, रात 10 बजे से सुबह 2 बजे तक) के लिए, हर दिन के लिए अलग-अलग विंडो इस्तेमाल करें: एक विंडो रात 11:59:59 बजे खत्म होगी और दूसरी विंडो अगले दिन रात 12:00 बजे शुरू होगी. उदाहरण के लिए: सोमवार: सुबह 10 बजे से शाम 5 बजे तक मंगलवार: सुबह 10 बजे से दोपहर 2 बजे तक मंगलवार: शाम 5 बजे से शाम 7 बजे तक बुध, गुरु, शुक्र, शनि, रवि: दोपहर 3 बजे से शाम 7 बजे तक अगर कोई समय सेट नहीं किया गया है, तो इसका मतलब है कि ऑफ़र, valid_period के दौरान हर समय उपलब्ध रहेगा.
time_exceptionsobject
(ValidTimeException) का कलेक्शन

इससे ऊपर बताए गए valid_period और valid_time_of_week के अपवादों के बारे में पता चलता है
date_exceptionsऑब्जेक्ट का कलेक्शन
(Date)

इससे valid_period और time_of_day के लिए, दिनों के अपवादों के बारे में पता चलता है
validity_scopeenum
(ValidityScope)

इससे मान्य रहने की अवधि का दायरा तय होता है.
validity_duration_in_daysसंख्या

वाउचर/कूपन खरीदने के बाद, वह कितने दिनों तक मान्य रहेगा.

ValidityRange

क्लोज़्ड-ओपन टाइमस्टैंप रेंज.

फ़ील्ड का नामटाइपआवश्यकताब्यौरा
valid_from_timeऑब्जेक्ट
(Timestamp)

ज़रूरी है

रेंज के शुरू होने का समय (शामिल है). ज़रूरी है.
valid_through_timeऑब्जेक्ट
(Timestamp)

रेंज के खत्म होने का समय (शामिल नहीं है). अगर इसे सेट नहीं किया जाता है, तो इसका मतलब है कि यह अवधि कभी खत्म नहीं होगी. ज़रूरी नहीं.

टाइमस्टैम्प

फ़ील्ड का नामटाइपआवश्यकताब्यौरा
secondsसंख्या

यह Unix epoch 1970-01-01T00:00:00Z के बाद से, यूटीसी समय के सेकंड दिखाता है. यह -62135596800 और 253402300799 के बीच होना चाहिए. इसमें ये दोनों संख्याएं भी शामिल हैं. यह 0001-01-01T00:00:00Z से 9999-12-31T23:59:59Z के बीच होना चाहिए.
nanosसंख्या

नैनोसेकंड रिज़ॉल्यूशन में सेकंड के नॉन-नेगेटिव फ़्रैक्शन. यह फ़ील्ड, अवधि का नैनोसेकंड वाला हिस्सा है. यह सेकंड का विकल्प नहीं है. फ़्रैक्शन वाली नेगेटिव सेकंड वैल्यू में, नॉन-नेगेटिव नैनो वैल्यू होनी चाहिए. ये वैल्यू, समय के साथ आगे बढ़ती हैं. वैल्यू, 0 और 99,99,99,999 के बीच होनी चाहिए. हालांकि, इन दोनों में से भी कोई संख्या हो सकती है.

TimeOfDayWindow

TimeWindow ऑब्जेक्ट एक कंपोज़िट इकाई है. इसमें उन विंडो की सूची होती है जिनमें उपयोगकर्ता का ऑर्डर दिया जा सकता है या पूरा किया जा सकता है.

फ़ील्ड का नामटाइपआवश्यकताब्यौरा
time_windowsobject
(TimeOfDayRange)

ज़रूरी है

वह समयावधि जिसके दौरान ऑर्डर दिया जा सकता है/पूरा किया जा सकता है. ज़रूरी है.
day_of_weekenum का कलेक्शन
(DayOfWeek)

हफ़्ते के उन दिनों की सूची जिनमें विंडो लागू होती हैं. अगर कोई भी दिन सेट नहीं किया गया है, तो इसका मतलब है कि यह नीति हफ़्ते के सभी दिनों के लिए लागू है. ज़रूरी नहीं.
day_of_monthऑब्जेक्ट का कलेक्शन
(DayOfMonthRange)

महीने के वे दिन जब विंडो लागू होती हैं. अगर कोई भी दिन सेट नहीं किया गया है, तो इसका मतलब है कि यह नीति महीने के सभी दिनों के लिए लागू होती है. ज़रूरी नहीं.

TimeOfDayRange

बंद-खुली समयावधि.

फ़ील्ड का नामटाइपआवश्यकताब्यौरा
open_timeobject
(TimeOfDay)

यह टाइम ऑब्जेक्ट, रेंज के दिन के शुरू होने का समय दिखाता है. इसमें शुरू होने का समय शामिल होता है. अगर इसे सेट नहीं किया जाता है, तो इसका मतलब 00:00:00 होता है. ज़रूरी नहीं.
close_timeobject
(TimeOfDay)

यह समय, रेंज के दिन के खत्म होने का समय बताता है (शामिल नहीं). अगर इसे सेट नहीं किया गया है, तो इसका मतलब है कि समय 23:59:59 है. ज़रूरी नहीं.

TimeOfDay

फ़ील्ड का नामटाइपआवश्यकताब्यौरा
hoursसंख्या

दिन के घंटे, 24 घंटे वाले फ़ॉर्मैट में. यह वैल्यू 0 से ज़्यादा या इसके बराबर होनी चाहिए. आम तौर पर, यह वैल्यू 23 से कम या इसके बराबर होनी चाहिए. कारोबार के बंद होने के समय जैसे मामलों के लिए, कोई एपीआई "24:00:00" वैल्यू को अनुमति दे सकता है.
minutesसंख्या

घंटे के मिनट. वैल्यू 0 से ज़्यादा या इसके बराबर और 59 से कम या इसके बराबर होनी चाहिए.
secondsसंख्या

एक मिनट के कुछ सेकंड. यह वैल्यू, 0 से ज़्यादा या इसके बराबर होनी चाहिए. आम तौर पर, यह 59 से कम या इसके बराबर होनी चाहिए. अगर कोई एपीआई लीप सेकंड की अनुमति देता है, तो वह वैल्यू के तौर पर 60 को स्वीकार कर सकता है.
nanosसंख्या

सेकंड के हिस्से, नैनोसेकंड में. यह वैल्यू 0 से ज़्यादा या इसके बराबर और 99,99,99,999 से कम या इसके बराबर होनी चाहिए.

DayOfMonthRange

महीने के दिनों की वह सीमा जो साल के सभी महीनों पर लागू होती है.

फ़ील्ड का नामटाइपआवश्यकताब्यौरा
valid_from_dayसंख्या

ज़रूरी है

यह रेंज का शुरुआती दिन है. रेंज में यह दिन भी शामिल है. ज़रूरी है.
valid_through_dayसंख्या

रेंज के खत्म होने का दिन (शामिल है). अगर यह सेट नहीं है, तो इसका मतलब है कि यह रेंज सिर्फ़ एक दिन (valid_from_day) को दिखाती है. ज़रूरी नहीं.

ValidTimeException

फ़ील्ड का नामटाइपआवश्यकताब्यौरा
exceptional_periodऑब्जेक्ट
(ValidityRange)

शुरू और खत्म होने का वह टाइमस्टैंप जिसके लिए ऑफ़र मान्य नहीं है. ये समय अलग-अलग दिनों के होने चाहिए.जैसे, शुरू होने का समय 00:00 (दिन की शुरुआत) और खत्म होने का समय 00:00 (शामिल नहीं) होना चाहिए. यह समय, अपवाद की अवधि खत्म होने वाले दिन का होना चाहिए.

तारीख

फ़ील्ड का नामटाइपआवश्यकताब्यौरा
yearसंख्या

तारीख का साल. यह 1 से 9999 के बीच होना चाहिए. इसके अलावा, साल के बिना तारीख बताने के लिए 0 होना चाहिए.
monthसंख्या

साल का महीना. यह 1 से 12 के बीच होना चाहिए. इसके अलावा, महीने और दिन के बिना साल की जानकारी देने के लिए, 0 डालें.
dayसंख्या

महीने का दिन. यह 1 से 31 के बीच होना चाहिए और साल और महीने के लिए मान्य होना चाहिए. इसके अलावा, साल या साल और महीने की जानकारी देने के लिए 0 डालें, जहां दिन की जानकारी देना ज़रूरी नहीं है.

OfferSource

नामब्यौरा
OFFER_SOURCE_UNSPECIFIED
OFFER_SOURCE_AGGREGATOR

ActionType

इससे ऑफ़र पूरा करने के तरीके के बारे में पता चलता है. अगर किसी ऑफ़र को खरीदारी के एक से ज़्यादा तरीकों के लिए शेयर किया जा सकता है, तो खरीदारी के हर तरीके के लिए डुप्लीकेट ऑफ़र बनाए जा सकते हैं.

नामब्यौरा
ACTION_TYPE_UNSPECIFIED
ACTION_TYPE_FOOD_DELIVERYयह ऑफ़र, खाने की डिलीवरी की सेवाओं पर लागू होता है.
ACTION_TYPE_FOOD_TAKEOUTयह ऑफ़र, खाने के टेकआउट या पिकअप ऑर्डर पर लागू होता है.
ACTION_TYPE_DININGयह ऑफ़र, रेस्टोरेंट में जाकर खाना खाने के लिए है.
ACTION_TYPE_APPOINTMENTयह ऑफ़र, अपॉइंटमेंट बुक करने की सेवाओं पर लागू होता है.
ACTION_TYPE_SHOPPING_IN_STOREयह ऑफ़र, स्टोर में जाकर ऑफ़लाइन खरीदारी करने पर लागू होता है.

OfferMode

इससे उस तरीके या चैनल के बारे में पता चलता है जिसके ज़रिए उपयोगकर्ता, ऑफ़र का फ़ायदा पा सकता है.

नामब्यौरा
OFFER_MODE_OTHERइसे ऑर्डर पूरा करने के उन तरीकों के लिए इस्तेमाल करें जो अन्य खास मोड में शामिल नहीं हैं.
OFFER_MODE_WALK_INयह ऑफ़र, पहले से बुकिंग किए बिना साइट पर जाने के लिए उपलब्ध है.
OFFER_MODE_FREE_RESERVATIONयह ऑफ़र तब लागू होता है, जब कोई उपयोगकर्ता ऐसी बुकिंग करता है जिसके लिए पहले से कोई शुल्क नहीं देना पड़ता.
OFFER_MODE_PAID_RESERVATIONयह ऑफ़र तब लागू होता है, जब कोई व्यक्ति ऐसी बुकिंग करता है जिसके लिए पहले से पेमेंट करना ज़रूरी है.
OFFER_MODE_ONLINE_ORDERयह ऑफ़र, वेबसाइट या डिजिटल प्लैटफ़ॉर्म से किए गए ऑर्डर के लिए मान्य है.
OFFER_MODE_GIFT_CARD_PURCHASEइससे पता चलता है कि डील पाने के लिए, उपहार कार्ड खरीदना ज़रूरी है.

OfferCategory

ऑफ़र की कैटगरी. बुनियादी ऑफ़र, सभी खरीदारों के लिए उपलब्ध एक स्टैंडर्ड ऑफ़र होता है. जैसे, 10,000 रुपये से ज़्यादा खर्च करने पर 10% की छूट. अगर किसी कूपन या पेमेंट करने के तरीके से बेस ऑफ़र पर पाबंदी लगाई गई है, तो उससे जुड़े फ़ील्ड सेट किए जाएंगे. हमारे पास ADD_ON_PAYMENT_OFFER जैसे x ऐड-ऑन ऑफ़र भी हैं. इस तरह के ऑफ़र को अन्य ऑफ़र के साथ जोड़ा जा सकता है, ताकि ज़्यादा छूट मिल सके.

नामब्यौरा
OFFER_CATEGORY_UNSPECIFIEDफ़ीड में UNSPECIFIED या डिफ़ॉल्ट enum वैल्यू का इस्तेमाल नहीं किया जाना चाहिए.
OFFER_CATEGORY_BASE_OFFER
OFFER_CATEGORY_ADD_ON_PAYMENT_OFFER
OFFER_CATEGORY_ADD_ON_COUPON_OFFER
OFFER_CATEGORY_ADD_ON_SUBSCRIPTION_OFFER
OFFER_CATEGORY_ADD_ON_FEE_REDUCTION_OFFER

FeeUnit

नामब्यौरा
FEE_UNIT_UNSPECIFIEDफ़ीड में UNSPECIFIED या डिफ़ॉल्ट enum वैल्यू का इस्तेमाल नहीं किया जाना चाहिए.
FEE_UNIT_PER_GUEST
FEE_UNIT_PER_TRANSACTION

FeeType

नामब्यौरा
FEE_TYPE_UNSPECIFIEDUNSPECIFIED या डिफ़ॉल्ट एनम वैल्यू का इस्तेमाल फ़ीड में नहीं किया जाना चाहिए.
FEE_TYPE_FIXED
FEE_TYPE_VARIABLE

OfferDiscountType

नामब्यौरा
OFFER_DISCOUNT_TYPE_UNSPECIFIED
OFFER_DISCOUNT_TYPE_INSTANT_DISCOUNT
OFFER_DISCOUNT_TYPE_CASHBACK
OFFER_DISCOUNT_TYPE_REWARD_POINT

MealType

नामब्यौरा
MEAL_TYPE_UNSPECIFIEDफ़ीड में UNSPECIFIED या डिफ़ॉल्ट enum वैल्यू का इस्तेमाल नहीं किया जाना चाहिए.
MEAL_TYPE_BREAKFAST
MEAL_TYPE_LUNCH
MEAL_TYPE_DINNER

PaymentInstrumentType

नामब्यौरा
PAYMENT_INSTRUMENT_TYPE_UNSPECIFIEDफ़ीड में UNSPECIFIED या डिफ़ॉल्ट enum वैल्यू का इस्तेमाल नहीं किया जाना चाहिए.
PAYMENT_INSTRUMENT_CREDIT_CARD
PAYMENT_INSTRUMENT_DEBIT_CARD
PAYMENT_INSTRUMENT_BANK_ACCOUNT
PAYMENT_INSTRUMENT_UPI
PAYMENT_INSTRUMENT_ONLINE_WALLET
PAYMENT_INSTRUMENT_NETBANKING

DayOfWeek

यह हफ़्ते के किसी दिन को दिखाता है.

नामब्यौरा
DAY_OF_WEEK_UNSPECIFIEDहफ़्ते का दिन नहीं बताया गया है.
MONDAYसोमवार
TUESDAYमंगलवार
WEDNESDAYबुधवार
THURSDAYगुरुवार
FRIDAYशुक्रवार
SATURDAYशनिवार
SUNDAYरविवार

ValidityScope

मान्य रहने की अवधि का दायरा. इसका मतलब है कि यह अवधि किन कार्रवाइयों पर लागू होती है.

नामब्यौरा
VALIDITY_SCOPE_UNSPECIFIED
VALIDITY_SCOPE_CLAIM
VALIDITY_SCOPE_REDEEM

OfferTag

नामब्यौरा
OFFER_TAG_UNSPECIFIEDUNSPECIFIED या डिफ़ॉल्ट एनम वैल्यू का इस्तेमाल फ़ीड में नहीं किया जाना चाहिए.
OFFER_TAG_NEW_YEAR_SPECIAL
OFFER_TAG_VALENTINES_SPECIAL

AvailabilityLevel

इससे किसी ऑफ़र के स्टॉक या उपलब्धता की स्थिति का पता चलता है.

नामब्यौरा
AVAILABILITY_LEVEL_UNSPECIFIED
AVAILABILITY_LEVEL_LOWइससे पता चलता है कि ऑफ़र की उपलब्धता कम है. उपयोगकर्ताओं को सलाह दी जाती है कि वे स्टॉक खत्म होने से पहले इसे रिडीम कर लें. हम बाद में, MEDIUM और HIGH को जोड़ सकते हैं.

offer_specification

छूट, प्रतिशत या कुल वैल्यू में से घटाई गई तय वैल्यू हो सकती है. उदाहरण के लिए: 1. कुल बिल पर 10% की छूट. 2. ऑर्डर पर 15 डॉलर की छूट. कारोबारी या कंपनियां, 'एक के साथ एक मुफ़्त पाएं' जैसे कस्टम छूट भी दे सकती हैं. इसके लिए, उन्हें स्पेसिफ़िकेशन फ़ील्ड का इस्तेमाल करना होगा. ज़रूरी है.

फ़ील्ड का नामटाइपआवश्यकताब्यौरा
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) उपलब्ध हैं, तो उनकी जानकारी यहां दी जानी चाहिए.

लागत

फ़ील्ड का नामटाइपआवश्यकताब्यौरा
amountobject
(Money)

amount_range के साथ म्यूचुअली एक्सक्लूसिव

amount_rangeobject
(MoneyRange)

amount के साथ म्यूचुअली एक्सक्लूसिव

denomination_type

फ़ील्ड का नामटाइपआवश्यकताब्यौरा
fixed_denominationsobject
(FixedDenominations)

custom_range के साथ म्यूचुअली एक्सक्लूसिव

इस विकल्प का इस्तेमाल तब किया जाता है, जब उपहार कार्ड की कीमत तय होती है.
custom_rangeऑब्जेक्ट
(MoneyRange)

fixed_denominations के साथ म्यूचुअली एक्सक्लूसिव

इस कुकी का इस्तेमाल तब किया जाता है, जब ब्रैंड उपयोगकर्ताओं को तय की गई सीमा के अंदर, अपनी पसंद के मुताबिक (लचीली) फ़ेस वैल्यू चुनने की अनुमति देता है.

फ़ीड को अपलोड करना

ऑफ़र फ़ीड को Generic फ़ीड के एसएफ़टीपी सर्वर पर अपलोड करना ज़रूरी है. निर्देशों के लिए, जेनरिक फ़ीड के एसएफ़टीपी सर्वर का इस्तेमाल करने का तरीका बताने वाला ट्यूटोरियल देखें. साथ ही, अपनी डिस्क्रिप्टर फ़ाइल में name को google.offer पर सेट करें.

अपलोड करने की फ़्रीक्वेंसी

आम तौर पर, Google को हर दिन एक फ़ीड अपलोड करने की ज़रूरत होती है. फ़ीड अपलोड करने की फ़्रीक्वेंसी को बढ़ाया या घटाया जा सकता है. यह इस बात पर निर्भर करता है कि आपकी ओर से ऑफ़र अपडेट करने की फ़्रीक्वेंसी क्या है. इससे यह पक्का किया जा सकता है कि आपको लगातार सटीक नतीजे मिलते रहें. अपने Google पीओसी से संपर्क करें.

डेटा को 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_ADD_ON_FEE_REDUCTION_OFFER (जैसे, मुफ़्त डिलीवरी या कम शुल्क)

ध्यान देने वाली अन्य बातें:

  • पूरे प्लैटफ़ॉर्म पर लागू होने वाले, फ़ीस में छूट या फ़ीस कम करने वाले ऑफ़र को बुनियादी ऑफ़र (OFFER_CATEGORY_BASE_OFFER) के तौर पर सेट नहीं किया जाना चाहिए. इन्हें सिर्फ़ OFFER_CATEGORY_ADD_ON_FEE_REDUCTION_OFFER के तौर पर सेट किया जाना चाहिए, ताकि किसी अन्य चालू बुनियादी ऑफ़र के साथ इनका इस्तेमाल किया जा सके.
  • अगर किसी रेस्टोरेंट के लिए कोई बुनियादी ऑफ़र सेट नहीं किया गया है, तो अतिरिक्त ऑफ़र नहीं दिखाए जाएंगे. अगर कोई बुनियादी ऑफ़र नहीं है, तो पेमेंट, सदस्यता या कूपन से जुड़े ऐसे किसी भी ऑफ़र को OFFER_CATEGORY_BASE_OFFER के तौर पर टैग किया जाना चाहिए जिस पर किसी दूसरे ऑफ़र को जोड़े बिना दावा किया जा सकता है.
    • टाइप के हिसाब से, PaymentInstrument, Subscription या Coupon के लिए ज़रूरी डेटा सेट किया जाना चाहिए.
    • पार्टनर को इनमें से हर ऑफ़र की दो कॉपी देनी होंगी. इससे उन स्थितियों को कवर किया जा सकेगा जहां वे बुनियादी ऑफ़र और अतिरिक्त ऑफ़र, दोनों के तौर पर काम करते हैं. इसके बाद, entity_ids या add_on_offer_applicable_to_all_entities का इस्तेमाल करके, एक से ज़्यादा रेस्टोरेंट के लिए ऐड-ऑन ऑफ़र की कॉपी सेट की जा सकती है.
  • जब किसी रेस्टोरेंट के पास एक से ज़्यादा बुनियादी ऑफ़र हों और उन्हें एक साथ इस्तेमाल किया जा सकता हो, तो सभी बुनियादी ऑफ़र को OFFER_CATEGORY_BASE_OFFER के तौर पर टैग किया जाना चाहिए. साथ ही, पेमेंट, सदस्यता या कूपन वाले बुनियादी ऑफ़र को अतिरिक्त ऑफ़र के तौर पर अलग से भेजा जाना चाहिए.
  • ValidityPeriod का इस्तेमाल, अतिरिक्त ऑफ़र को बुनियादी ऑफ़र के तौर पर चालू करने के लिए सिर्फ़ तब किया जाना चाहिए, जब कोई बुनियादी ऑफ़र चालू न हो.
  • पेमेंट करने के तरीके के हिसाब से, एक जैसे ऑफ़र को एक साथ दिखाना: अगर पेमेंट करने के कई तरीकों पर एक जैसी छूट मिलती है, तो उन्हें अलग-अलग डुप्लीकेट ऑफ़र के तौर पर भेजने के बजाय, एक ही Offer ऑब्जेक्ट के तहत ग्रुप करें. उदाहरण के लिए, क्रेडिट कार्ड, डेबिट कार्ड, और नेट बैंकिंग, सभी पर 5% की छूट मिल रही है. इसके लिए, payment_instrument.items सूची में पेमेंट करने के सभी मान्य तरीके भरें. इससे Google इंटरफ़ेस पर लेआउट में होने वाली गड़बड़ी कम हो जाती है. साथ ही, डुप्लीकेट कॉन्टेंट पर लगी ज़्यादा पाबंदियों की वजह से, रैंकिंग में होने वाली संभावित गिरावट को रोका जा सकता है.

उदाहरण के तौर पर:

  • एक रेस्टोरेंट, किसी खास क्रेडिट कार्ड से पेमेंट करने पर 5% की छूट और किसी खास कूपन कोड का इस्तेमाल करने पर मुफ़्त ड्रिंक देता है

    • क्रेडिट कार्ड से पेमेंट करने पर 5% की छूट वाले ऑफ़र की दो कॉपी भेजी जानी चाहिए. एक कॉपी को OFFER_CATEGORY_BASE_OFFER के तौर पर टैग किया जाना चाहिए और दूसरी कॉपी को OFFER_CATEGORY_ADD_ON_PAYMENT_OFFER के तौर पर टैग किया जाना चाहिए. साथ ही, इसमें PaymentInstrument की जानकारी शामिल होनी चाहिए.
    • कूपन कोड के साथ मुफ़्त ड्रिंक का ऑफ़र, OFFER_CATEGORY_ADD_ON_COUPON_OFFER के तौर पर भेजा जाना चाहिए. इसमें Coupon की जानकारी शामिल होनी चाहिए.
  • कोई रेस्टोरेंट, वहां जाकर खाना खाने पर 10% की छूट और किसी खास क्रेडिट कार्ड से पेमेंट करने पर 5% की छूट देता है. इन दोनों छूट को एक साथ इस्तेमाल किया जा सकता है.

    • सर्विस सेंटर जाकर फ़ोन ठीक कराने पर मिलने वाले 10% की छूट के ऑफ़र को OFFER_CATEGORY_BASE_OFFER के तौर पर टैग किया जाना चाहिए.
    • क्रेडिट कार्ड से पेमेंट करने पर 5% की छूट वाले ऑफ़र की दो कॉपी होनी चाहिए. इनमें से एक को OFFER_CATEGORY_BASE_OFFER और दूसरी को OFFER_CATEGORY_ADD_ON_PAYMENT_OFFER के तौर पर टैग किया जाना चाहिए.
  • कोई रेस्टोरेंट, हफ़्ते के कामकाजी दिनों में सिर्फ़ दोपहर के खाने पर 10% की छूट देता है. साथ ही, किसी खास क्रेडिट कार्ड से पेमेंट करने पर, कभी भी 5% की छूट देता है.

    • 10% की छूट वाले ऑफ़र को ValidityPeriod पर सेट किया जाना चाहिए, ताकि यह सिर्फ़ हफ़्ते के दिनों में रेस्टोरेंट के लंच के समय दिखे.
    • क्रेडिट कार्ड पर मिलने वाले 5% की छूट के ऑफ़र की दो कॉपी भेजी जानी चाहिए.
      • एक कॉपी को OFFER_CATEGORY_BASE_OFFER के तौर पर टैग किया जाना चाहिए. इसमें PaymentInstrument की जानकारी शामिल होनी चाहिए. ValidityPeriod को इस तरह सेट किया जाना चाहिए कि हफ़्ते के दिनों में दोपहर के खाने के समय को बाहर रखा जा सके. ऐसा तब किया जाना चाहिए, जब दोपहर के खाने पर 10% की छूट वाला ऑफ़र चालू हो
      • एक कॉपी को OFFER_CATEGORY_ADD_ON_PAYMENT_OFFER के तौर पर टैग किया जाना चाहिए. इसमें PaymentInstrument की जानकारी शामिल होनी चाहिए.
    • इस रेस्टोरेंट के लिए, पेमेंट से जुड़े अन्य सभी ऑफ़र को OFFER_CATEGORY_ADD_ON_PAYMENT_OFFER के तौर पर टैग किया जाना चाहिए.

डेवलपमेंट और लॉन्च करने की प्रोसेस

इंटिग्रेशन के दौरान, Partner Portal आपको डेवलपमेंट के आधार पर जानकारी और सुझाव/राय देने में मदद करेगा. डेवलपमेंट की प्रोसेस इस तरह होगी:

  • इंटिग्रेशन को सबसे पहले सैंडबॉक्स एनवायरमेंट में डेवलप किया जाएगा. आपको Google सैंडबॉक्स एनवायरमेंट में, प्रोडक्शन डेटा (या सीधे तौर पर प्रोडक्शन डेटा) का एक्सपोर्ट इस्तेमाल करना चाहिए. इससे यह पक्का करने में मदद मिलती है कि आपके डेवलपमेंट में सभी एज केस शामिल हों. साथ ही, Google को डेटा क्वालिटी का आकलन करने और आपके डेटा मॉडल के आधार पर आपकी बेहतर मदद करने में मदद मिलती है.
  • Google Sandbox एनवायरमेंट में, कारोबारी या कंपनी, सेवाओं, और डील के फ़ीड को रोज़ाना और लगातार अपलोड करने के बाद, Google की टीम आपके फ़ीड की समीक्षा करेगी. Google की टीम से मंज़ूरी मिलने के बाद, अपने कोड को प्रोडक्शन में पुश किया जा सकता है. साथ ही, प्रोडक्शन डेटा को Google के प्रोडक्शन एनवायरमेंट में भेजा जा सकता है.
  • जब आपने प्रोडक्शन इंटिग्रेशन की पूरी तरह से जांच कर ली हो, तब Google की टीम भी इसकी जांच करेगी. सभी जांच पूरी होने के बाद, आपका इंटिग्रेशन लॉन्च हो जाएगा.

मॉनिटर करने के लिए

उपयोगकर्ता को बेहतर अनुभव देने के लिए, Google यह जांच करेगा कि उपलब्ध कराए गए ऑफ़र मान्य और सही हैं या नहीं. साथ ही, यह भी जांच करेगा कि वे लॉन्च से पहले और बाद में, हमारी नीति की ज़रूरी शर्तों को पूरा करते हैं या नहीं. इसके लिए, Google मैन्युअल तरीके से और अपने-आप होने वाली समीक्षा, दोनों का इस्तेमाल करेगा. इन समीक्षाओं के नतीजे, Action Center (सिर्फ़ प्रोडक्शन) के ऑफ़र डैशबोर्ड में ऐक्सेस किए जा सकेंगे. इस मॉनिटरिंग के नतीजे का इस्तेमाल, ऑफ़र की रैंकिंग पर असर डालने के लिए किया जा सकता है.

पक्का करें कि ऑफ़र के साथ पेज को पूरी तरह से लोड होने में पांच सेकंड से कम समय लगे. ऐसा न होने पर, इसे गड़बड़ी माना जाएगा और Bad link के तौर पर फ़्लैग किया जाएगा.

अपने-आप होने वाली जांच (क्रॉलर)

Google की क्वालिटी टीम, क्रॉलर लागू करती है. क्रॉलर ऐसी स्क्रिप्ट होती हैं जो वेब ब्राउज़र को अपने-आप काम करने के लिए सेट करती हैं. इससे कुछ क्लिक किए जा सकते हैं और ऑफ़र की जानकारी निकाली जा सकती है. हालांकि, इनका इस्तेमाल सिर्फ़ क्वालिटी की जांच करने के लिए किया जाता है.

क्वेरी की संख्या

उदाहरण के लिए, अगर हम हर दिन 5,000 जांचें भेजने का फ़ैसला करते हैं, तो इसका मतलब है कि हर दिन 5,000 बार (पूरे दिन में बराबर रूप से, यानी हर 17 सेकंड में एक बार), हमारा क्रॉलर ये सभी कार्रवाइयां करता है. ये कार्रवाइयां, कोई सामान्य उपयोगकर्ता करता है:

  • Google Search से शुरू करें और पार्टनर लिंक पर क्लिक करें.
  • ऑफ़र की जानकारी ढूंढें.
  • अगर ऑफ़र के लिए बुकिंग करना ज़रूरी है, तो बुकिंग फ़्लो जारी रहेगा. इससे यह पुष्टि की जा सकेगी कि ऑफ़र, तय किए गए समय पर उपलब्ध है या नहीं. हालांकि, कोई बुकिंग नहीं की जाएगी.

वेब स्क्रैपर का पता लगाने की सुविधा

यह पक्का करने के लिए कि वेब स्क्रैपर पर पाबंदी न लगे (जिसकी वजह से यह नतीजा निकल सकता है कि ऑफ़र उपलब्ध नहीं हैं), पक्का करें कि आपका सिस्टम हमारे वेब स्क्रैपर को आपके पेज पर हर समय क्वेरी करने की अनुमति देता हो. हमारे वेब स्क्रैपर की पहचान करने के लिए:

  • वेब स्क्रैपर यूज़र-एजेंट में, "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 से आ रहे हैं या नहीं. इसके लिए, रिवर्स डीएनएस का इस्तेमाल करें. इसके बारे में "Googlebot और Google के अन्य क्रॉलर की पुष्टि करना" लेख में बताया गया है. हमारे मामले में, रिवर्स डीएनएस रिज़ॉल्यूशन इस पैटर्न के मुताबिक होता है: google-proxy-***-***-***-***.google.com.

तकनीकी व्यवहार

कैश मेमोरी में सेव करना

पार्टनर की वेबसाइट पर लोड कम करने के लिए, हमारे क्रॉलर आम तौर पर रिस्पॉन्स में मौजूद सभी स्टैंडर्ड एचटीटीपी कैशिंग हेडर का पालन करने के लिए कॉन्फ़िगर किए जाते हैं. इसका मतलब है कि सही तरीके से कॉन्फ़िगर की गई वेबसाइटों के लिए, हम ऐसे कॉन्टेंट को बार-बार फ़ेच करने से बचते हैं जिसमें कभी-कभार ही बदलाव होता है. उदाहरण के लिए, JavaScript लाइब्रेरी. कैश मेमोरी को लागू करने के तरीके के बारे में ज़्यादा जानने के लिए, एचटीटीपी कैश मेमोरी से जुड़ा दस्तावेज़ पढ़ें.