ওভারভিউ

অফার ইন্টিগ্রেশনে অংশগ্রহণকারী অংশীদারদের অবশ্যই মার্চেন্ট বা এন্টিটি (পাইলট) ভিত্তিক ইন্টিগ্রেশন ধাপের জন্য অ্যাকাউন্ট সেটআপটি শুরু করার আগে সম্পূর্ণ করতে হবে। অফার ইন্টিগ্রেশনের বাস্তবায়ন, পরীক্ষা এবং লঞ্চ এই গাইডে বিস্তারিত থাকবে। ইন্টিগ্রেশন ধাপের মধ্য দিয়ে যাওয়ার আগে এই ওভারভিউ এবং অফার নীতিগুলি পড়ুন।

অফার করে

অফার ইন্টিগ্রেশন আপনাকে বণিক প্রচার এবং নির্দিষ্ট সময়ে নির্দিষ্ট পরিষেবাগুলিতে প্রযোজ্য ডিসকাউন্ট সম্পর্কে কাঠামোগত তথ্য রিলে করতে দেয়৷ অফারগুলি প্রকৃত অফার (শতাংশ-অফ, ডলার-অফ ...), বৈধতা উইন্ডো (নির্দিষ্ট সময়, সপ্তাহের দিন ...), এবং প্রযোজ্য ব্যবহারগুলি (অফারটি শুধুমাত্র নির্দিষ্ট পরিষেবাগুলিতে ব্যবহার করা যেতে পারে) পাশাপাশি জটিল বিধিনিষেধের সমন্বয়ে গঠিত।

অফারগুলির উদাহরণ:

  • ডিসেম্বরের বুধ ও বৃহস্পতিবার দুপুর ১২টা থেকে বিকেল ৫টা পর্যন্ত হাফ-অফ অ্যাপেটাইজার
  • সন্ধ্যা 6 টা থেকে 10 টা পর্যন্ত মা দিবসের ডিনারের জন্য একটি ডেজার্ট বিনামূল্যে কিনুন
  • প্রতি রবিবার সকাল ১০টা থেকে দুপুর ২টা পর্যন্ত একটি ব্রাঞ্চ এন্ট্রিতে $5 ছাড়
  • প্রিমিয়াম গ্রাহকদের জন্য 5% ছাড়ের সাথে ওয়াক-ইন অফার হিসাবে 10% ছাড় এবং ব্যবহারকারী আপনার অ্যাপের মাধ্যমে অর্থ প্রদান করলে 5% ছাড়৷

একটি অফারকে ইন্টিগ্রেশনে অন্তর্ভুক্ত করার জন্য, এটিকে প্রযুক্তিগত ডেটা মডেলের সাথে সাথে আমাদের যোগ্যতার প্রয়োজনীয়তা পূরণ করতে হবে। আপনার ইন্টিগ্রেশন মেনে চলছে এবং প্রযুক্তিগত প্রয়োজনীয়তার সাথে খাপ খায় না এমন অফারগুলির সাথে কী করতে হবে তার নির্দেশাবলীর জন্য আমাদের অফার নীতিগুলি পর্যালোচনা করা নিশ্চিত করুন৷

বাস্তবায়ন প্রস্তাব

অফার ইন্টিগ্রেশনে দুটি ফিড রয়েছে যা প্রতিদিন আপলোড করা হবে বা ফ্রিকোয়েন্সিতে যা উচ্চ নির্ভুলতা নিশ্চিত করে (অর্থাৎ স্থবিরতা হ্রাস করে):

অফারফিড

ক্ষেত্রের নাম টাইপ প্রয়োজনীয়তা বর্ণনা
data বস্তুর বিন্যাস
(Offer)

অফার

ক্ষেত্রের নাম টাইপ প্রয়োজনীয়তা বর্ণনা
offer_id স্ট্রিং

প্রয়োজন

অফারের ইউনিক আইডি। প্রয়োজন।
entity_ids স্ট্রিং এর অ্যারে

এই অফারে অংশগ্রহণকারী ব্যবসায়ীদের তালিকা।
add_on_offer_applicable_to_all_entities বুলিয়ান

সত্য হলে, এই অফারটি অ্যাগ্রিগেটরের অধীনে থাকা সমস্ত সংস্থার জন্য প্রযোজ্য। শুধুমাত্র অ্যাড অন অফারের জন্য প্রযোজ্য।
offer_source enum
(OfferSource)

প্রয়োজন

একটি অফার অ্যাগ্রিগেটর, একজন পৃথক বণিক, এমনকি একটি অ্যাড অন হিসাবে তৃতীয় পক্ষ দ্বারা প্রদান করা যেতে পারে। প্রয়োজন।
action_type enum
(ActionType)

প্রয়োজন

যে পরিষেবাটি অফারটি প্রদান করছে। একটি offer_id শুধুমাত্র একটি কর্ম_টাইপের অন্তর্গত হতে পারে। যদি একটি অফার একাধিক পরিষেবার ধরন জুড়ে ভাগ করা যায় তবে প্রতিটি পরিষেবার জন্য অনন্য আইডি সহ ডুপ্লিকেট অফার তৈরি হবে বলে আশা করা হচ্ছে। প্রয়োজন।
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_ADD_ON_COUPON_OFFER।
payment_instrument বস্তু
(PaymentInstrument)

একটি অর্থপ্রদান যন্ত্রের বিবরণ। অফার_বিভাগের জন্য প্রয়োজনীয়: OFFER_CATEGORY_ADD_ON_PAYMENT_OFFER।
subscription বস্তু
(Subscription)

সাবস্ক্রিপশনের বিশদ বিবরণ। অফার_বিভাগের জন্য প্রয়োজনীয়: OFFER_CATEGORY_ADD_ON_SUBSCRIPTION_OFFER।
terms বস্তু
(Terms)

প্রয়োজন

অফারের শর্তাবলী। প্রয়োজন।
validity_periods বস্তুর বিন্যাস
(ValidityPeriod)

প্রয়োজন

অফারের মেয়াদকাল। অফারটি শুরু এবং শেষের সময়, সপ্তাহের দিন, ইত্যাদি সহ কত সময়ের জন্য বৈধ তা বর্ণনা করে।
offer_url স্ট্রিং

বণিকের অফার পৃষ্ঠার URL। অফার_বিভাগের জন্য প্রয়োজনীয়: OFFER_CATEGORY_BASE_OFFER।
image_url স্ট্রিং

ব্যবসায়ীর অফার ছবির URL।

অফার বিবরণ

ক্ষেত্রের নাম টাইপ প্রয়োজনীয়তা বর্ণনা
offer_display_text স্ট্রিং

প্রয়োজন

অফার প্রদানকারী গ্রাহকদের অনুসন্ধান ফলাফল পৃষ্ঠায় প্রদর্শন করতে চায় অফার টেক্সট. প্রয়োজন।
oneof
(offer_specification)

প্রয়োজন

এই oneOf ক্ষেত্রগুলির মধ্যে শুধুমাত্র একটি সেট করা যেতে পারে।
max_discount_value বস্তু
(Money)

সর্বোচ্চ ছাড় পাওয়া যাবে। উদাহরণস্বরূপ, $100 পর্যন্ত 10% ছাড়।
min_spend_value বস্তু
(Money)

ডিসকাউন্ট সুবিধা পেতে ন্যূনতম খরচ মান. উদাহরণস্বরূপ, মোট মূল্য $100 বা তার বেশি হলে 10% ছাড়৷
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)

oneof
(cost)

এই oneOf ক্ষেত্রগুলির মধ্যে শুধুমাত্র একটি সেট করা যেতে পারে।

মানিরেঞ্জ

ক্ষেত্রের নাম টাইপ প্রয়োজনীয়তা বর্ণনা
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_ids এর সাথে একত্রিত হতে পারে (মূল অফার হিসেবে বিবেচনা করা যেতে পারে)। যদি 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 স্ট্রিং

প্রয়োজন

ক্রেডিট কার্ডের নামের মত পেমেন্ট ইনস্ট্রুমেন্ট আইটেমের নাম। যেমন: এইচডিএফসি ইনফিনিয়া, আমেরিকান এক্সপ্রেস প্লাটিনাম। প্রয়োজন।

সাবস্ক্রিপশন

ক্ষেত্রের নাম টাইপ প্রয়োজনীয়তা বর্ণনা
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)

একটি নির্দিষ্ট দিনে বৈধ সময়ের ব্যবধান এবং অফারটির জন্য কোন দিনগুলি উপলব্ধ তা উল্লেখ করে৷ যেমন: সোমবার: সকাল ১০টা থেকে বিকেল ৫টা মঙ্গলবার: সকাল ১০টা থেকে দুপুর ২টা মঙ্গলবার: বিকেল ৫টা থেকে সন্ধ্যা ৭টা বুধ, বৃহস্পতি, শুক্র, শনি, রবি: বিকেল ৩টা থেকে সন্ধ্যা ৭টা যদি কোনো সেট না থাকে, তাহলে এর মানে হল অফারটি valid_period মধ্যে সব সময়ের জন্য উপলব্ধ।
time_exceptions বস্তুর বিন্যাস
(ValidTimeException)

উপরের valid_period এবং valid_time_of_week-এর ব্যতিক্রম উল্লেখ করে

বৈধতার পরিসর

একটি বন্ধ-খোলা টাইমস্ট্যাম্প পরিসর।

ক্ষেত্রের নাম টাইপ প্রয়োজনীয়তা বর্ণনা
valid_from_time বস্তু
(Timestamp)

প্রয়োজন

ব্যাপ্তির শুরুর সময় (অন্তর্ভুক্ত)। প্রয়োজন।
valid_through_time বস্তু
(Timestamp)

ব্যাপ্তির শেষ সময় (একচেটিয়া)। যদি সেট না করা হয়, তাহলে এর মানে হল যে এই সময়কাল কখনও শেষ হয় না। ঐচ্ছিক।

টাইমস্ট্যাম্প

ক্ষেত্রের নাম টাইপ প্রয়োজনীয়তা বর্ণনা
seconds স্ট্রিং

ইউনিক্স যুগ 1970-01-01T00:00:00Z থেকে UTC সময়ের সেকেন্ডের প্রতিনিধিত্ব করে। 0001-01-01T00:00:00Z থেকে 9999-12-31T23:59:59Z অন্তর্ভুক্ত হতে হবে।
nanos সংখ্যা

ন্যানোসেকেন্ড রেজোলিউশনে এক সেকেন্ডের অ-নেতিবাচক ভগ্নাংশ। ভগ্নাংশ সহ নেতিবাচক দ্বিতীয় মানগুলিতে এখনও অ-নেতিবাচক ন্যানো মান থাকতে হবে যা সময়ের সাথে সাথে গণনা করা হবে। 0 থেকে 999,999,999 এর মধ্যে থাকতে হবে।

TimeOfDayWindow

টাইমউইন্ডো অবজেক্ট হল একটি যৌগিক সত্তা যা উইন্ডোগুলির একটি তালিকা বর্ণনা করে যেগুলি ব্যবহারকারীর অর্ডার হয় রাখা বা পূরণ করা যেতে পারে।

ক্ষেত্রের নাম টাইপ প্রয়োজনীয়তা বর্ণনা
time_windows বস্তু
(TimeOfDayRange)

প্রয়োজন

টাইম উইন্ডোতে অর্ডার দেওয়া/পূরণ করা যাবে। প্রয়োজন।
day_of_week enum এর অ্যারে
(DayOfWeek)

সপ্তাহে দিনের তালিকায় উইন্ডোজ প্রয়োগ করা হয়। যদি কোনটি সেট না হয়, তাহলে এর মানে হল যে এটি সপ্তাহের সমস্ত দিনের জন্য প্রযোজ্য। ঐচ্ছিক।

টাইমঅফডে রেঞ্জ

একটি বন্ধ-খোলা সময়সীমা।

ক্ষেত্রের নাম টাইপ প্রয়োজনীয়তা বর্ণনা
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 (একচেটিয়া) হতে হবে যেদিন ব্যতিক্রম সময় শেষ হবে৷

অফার সোর্স

নাম বর্ণনা
OFFER_SOURCE_UNSPECIFIED
OFFER_SOURCE_AGGREGATOR

অ্যাকশন টাইপ

নাম বর্ণনা
ACTION_TYPE_UNSPECIFIED
ACTION_TYPE_DINING

অফারমোড

নাম বর্ণনা
OFFER_MODE_OTHER
OFFER_MODE_WALK_IN
OFFER_MODE_FREE_RESERVATION
OFFER_MODE_PAID_RESERVATION
OFFER_MODE_ONLINE_ORDER

অফার ক্যাটাগরি

অফারের ক্যাটাগরি। একটি বেস অফার হল একটি আদর্শ অফার যা সমস্ত গ্রাহকদের জন্য উপলব্ধ যেমন $100 এর বেশি খরচ করলে 10% ছাড়৷ একটি কুপন বা অর্থপ্রদানের উপকরণ দ্বারা সীমাবদ্ধ একটি বেস অফারে সংশ্লিষ্ট ক্ষেত্রগুলি সেট করা থাকবে। আমাদের কাছে 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

ফি ইউনিট

নাম বর্ণনা
FEE_UNIT_UNSPECIFIED
FEE_UNIT_PER_GUEST
FEE_UNIT_PER_TRANSACTION

ফি টাইপ

নাম বর্ণনা
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 রবিবার

অফার_স্পেসিফিকেশন

ডিসকাউন্ট মোট মান থেকে বিয়োগ করা একটি শতাংশ বা একটি নির্দিষ্ট মান হতে পারে। উদাহরণস্বরূপ: 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 নির্বাচিত মেনু আইটেম), এই বিবরণগুলি এখানে বর্ণনা করা উচিত।

খরচ

ক্ষেত্রের নাম টাইপ প্রয়োজনীয়তা বর্ণনা
amount বস্তু
(Money)

amount_range সহ পারস্পরিকভাবে একচেটিয়া

amount_range বস্তু
(MoneyRange)

amount সাথে পারস্পরিকভাবে একচেটিয়া

ফিড আপলোড

অফার ফিড অবশ্যই Generic ফিড SFTP সার্ভারে আপলোড করতে হবে। নির্দেশাবলীর জন্য জেনেরিক ফিড SFTP সার্ভার টিউটোরিয়ালটি কীভাবে ব্যবহার করবেন তা অনুসরণ করুন এবং আপনার বর্ণনাকারী ফাইলে google.offer এ সেট করা name ব্যবহার করুন।

আপলোড ফ্রিকোয়েন্সি

সাধারণভাবে, Google প্রতিদিন 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 বিবরণ সহ পাঠাতে হবে৷
  • একটি রেস্তোরাঁ ওয়াক-ইন-এর জন্য 10% ছাড় এবং একটি নির্দিষ্ট ক্রেডিট কার্ড দিয়ে অর্থপ্রদান করার সময় 5% ছাড় দেয়, উভয়ই একত্রিত করা যেতে পারে।

    • 10% ওয়াক-ইন অফার OFFER_CATEGORY_BASE_OFFER হিসাবে ট্যাগ করা উচিত।
    • ক্রেডিট কার্ড অফারে 5% ছাড়ের 2 কপি থাকা উচিত, একটি OFFER_CATEGORY_BASE_OFFER হিসাবে ট্যাগ করা এবং একটি OFFER_CATEGORY_ADD_ON_PAYMENT_OFFER হিসাবে ট্যাগ করা।
  • একটি রেস্তোরাঁ শুধুমাত্র সপ্তাহের দিনে দুপুরের খাবারের জন্য 10% ছাড় দেয় এবং একটি নির্দিষ্ট ক্রেডিট কার্ড দিয়ে অর্থপ্রদান করার সময় যে কোনো সময় 5% ছাড় দেয়।

    • 10% ছাড়ের অফারে শুধুমাত্র সপ্তাহের দিনগুলিতে রেস্তোরাঁর মধ্যাহ্নভোজের সময় নির্দেশ করার জন্য ValidityPeriod সেট করা উচিত।
    • ক্রেডিট কার্ড অফার 5% ছাড় 2 কপি হিসাবে পাঠাতে হবে।
      • একটি কপি PaymentInstrument বিশদ বিবরণ সহ OFFER_CATEGORY_BASE_OFFER হিসাবে ট্যাগ করা উচিত৷ 10% ছাড়ের মধ্যাহ্নভোজনের অফার সক্রিয় থাকলে কার্যদিবসে দুপুরের খাবারের সময় বাদ দেওয়ার জন্য ValidityPeriod সেট করা উচিত
      • একটি অনুলিপি PaymentInstrument বিবরণ সহ OFFER_CATEGORY_ADD_ON_PAYMENT_OFFER হিসাবে ট্যাগ করা উচিত৷
    • এই রেস্তোরাঁর জন্য অন্যান্য সমস্ত অর্থপ্রদানের অফারগুলিকে OFFER_CATEGORY_ADD_ON_PAYMENT_OFFER হিসাবে ট্যাগ করা উচিত৷

উন্নয়ন এবং লঞ্চ প্রক্রিয়া

আপনার একীকরণের সময়, অংশীদার পোর্টাল আপনার বিকাশের উপর ভিত্তি করে তথ্য এবং প্রতিক্রিয়া দিয়ে আপনাকে সহায়তা করতে সক্ষম হবে। উন্নয়ন প্রক্রিয়া এই প্রবাহ অনুসরণ করবে:

  • ইন্টিগ্রেশনটি প্রথমে স্যান্ডবক্স পরিবেশে তৈরি করা হবে। আপনার Google স্যান্ডবক্স পরিবেশে উৎপাদনের রপ্তানি (বা এমনকি সরাসরি উৎপাদন ডেটা) ব্যবহার করা উচিত। এটি নিশ্চিত করতে সাহায্য করে যে আপনার ডেভেলপমেন্ট সমস্ত এজ কেস ক্যাচ করে এবং Google কে ডেটার গুণমান মূল্যায়ন করতে এবং আপনার ডেটা মডেলের উপর ভিত্তি করে আপনাকে আরও ভালভাবে সহায়তা করার অনুমতি দেয়।
  • একবার আপনি Google স্যান্ডবক্স পরিবেশে ধারাবাহিকভাবে সম্পূর্ণ এবং দৈনিক বণিক, পরিষেবা এবং ডিল ফিড আপলোড করলে Google টিম আপনার ফিডগুলি মূল্যায়ন করবে৷ একবার Google টিম অনুমোদন প্রদান করলে, আপনি আপনার কোডটি প্রোডাকশনে পুশ করতে পারেন এবং Google প্রোডাকশন পরিবেশে প্রোডাকশন ডেটা পাঠানো শুরু করতে পারেন।
  • আপনি প্রোডাকশন ইন্টিগ্রেশন সম্পূর্ণভাবে পরীক্ষা করার পরে Google টিমও পরীক্ষা করবে। একবার সমস্ত পরীক্ষা সম্পূর্ণ হলে, তারপর আপনার ইন্টিগ্রেশন চালু হবে।

মনিটরিং

একটি ভাল ব্যবহারকারীর অভিজ্ঞতা নিশ্চিত করতে, Google প্রদত্ত অফারগুলি বৈধ, সঠিক এবং লঞ্চের আগে এবং পরে আমাদের নীতির মানদণ্ড পূরণ করে তা পরীক্ষা করবে। এটি করার জন্য, Google মানবিক এবং স্বয়ংক্রিয় পর্যালোচনার সমন্বয় ব্যবহার করবে। এই পর্যালোচনার ফলাফল অ্যাকশন সেন্টারের অফার ড্যাশবোর্ডে অ্যাক্সেসযোগ্য হবে (শুধুমাত্র উৎপাদন)। এই পর্যবেক্ষণের ফলাফল অফারগুলির র‌্যাঙ্কিংকে প্রভাবিত করতে ব্যবহার করা হতে পারে।

স্বয়ংক্রিয় চেক (ক্রলার)

Google গুণমান দল ক্রলার প্রয়োগ করে। ক্রলার হল এমন স্ক্রিপ্ট যা কিছু ক্লিক করার জন্য একটি ওয়েব ব্রাউজারকে স্বয়ংক্রিয় করে এবং শুধুমাত্র গুণমানের পরীক্ষার উদ্দেশ্যে অফার তথ্য বের করে।

প্রশ্নের সংখ্যা

উদাহরণস্বরূপ, যদি আমরা প্রতিদিন 5000টি চেক পাঠানোর সিদ্ধান্ত নিই, তাহলে এর অর্থ হল প্রতিদিন 5000 বার ( সমভাবে সারাদিনে বিতরণ করা হয়, যা প্রতি 17 সেকেন্ডে প্রায় একটি হয় ), আমাদের ক্রলার নিম্নলিখিত সমস্ত কাজ সম্পাদন করে যা একজন নিয়মিত ব্যবহারকারী সম্পাদন করবে:

  • Google অনুসন্ধান থেকে শুরু করুন এবং অংশীদার লিঙ্কে ক্লিক করুন।
  • অফার তথ্য জন্য দেখুন.
  • অফারটির জন্য বুকিং প্রয়োজন হলে, নির্দিষ্ট সময়ে অফারটি উপলব্ধ কিনা তা নিশ্চিত করতে এটি বুকিং প্রবাহের দিকে এগিয়ে যাবে (কোনও বুকিং করা হবে না)।

ওয়েব স্ক্র্যাপার সনাক্তকরণ

ওয়েব স্ক্র্যাপার যাতে নিষিদ্ধ না হয় তা নিশ্চিত করতে (যা অফারগুলি উপলভ্য নয় বলে উপসংহারে নিয়ে যেতে পারে) নিশ্চিত করুন যে আপনার সিস্টেম আমাদের ওয়েব স্ক্র্যাপারকে সর্বদা আপনার পৃষ্ঠাটি জিজ্ঞাসা করার অনুমতি দেয়। আমাদের ওয়েব স্ক্র্যাপার সনাক্ত করতে:

  • ওয়েব স্ক্র্যাপার ইউজার-এজেন্টে " Google-অফার " স্ট্রিং থাকবে:
    • উদাহরণ: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, যেমন Gecko; Google-Offers ) Chrome/104.0.5112.101 Safari/537.36
  • আপনি "Googlebot এবং অন্যান্য Google ক্রলার যাচাইকরণ" -এ সুপারিশ অনুসারে বিপরীত DNS ব্যবহার করে Google থেকে কল এসেছে কিনা তাও পরীক্ষা করতে পারেন। আমাদের নির্দিষ্ট ক্ষেত্রে, বিপরীত DNS রেজোলিউশন এই প্যাটার্ন অনুসরণ করে: google-proxy-***-***-***-***.google.com

প্রযুক্তিগত আচরণ

ক্যাশিং

অংশীদার ওয়েবসাইটে লোড কমানোর উদ্দেশ্যে, আমাদের ক্রলারগুলি সাধারণত প্রতিক্রিয়াতে উপস্থিত সমস্ত স্ট্যান্ডার্ড HTTP ক্যাশিং শিরোনামগুলিকে সম্মান করার জন্য কনফিগার করা হয়৷ এর মানে হল যে সঠিকভাবে কনফিগার করা ওয়েবসাইটগুলির জন্য আমরা বারবার এমন সামগ্রী আনা থেকে বিরত থাকি যা খুব কমই পরিবর্তিত হয় (যেমন জাভাস্ক্রিপ্ট লাইব্রেরি)। কিভাবে ক্যাশে প্রয়োগ করতে হয় সে সম্পর্কে আরো বিস্তারিত জানার জন্য, এই HTTP ক্যাশিং ডকুমেন্টেশন পড়ুন।