کارت‌های هدیه (که با نام کوپن نیز شناخته می‌شوند)

این راهنما، الزامات، توصیه‌های مدل‌سازی داده‌ها و بهترین شیوه‌ها برای پیاده‌سازی کارت‌های هدیه (که به عنوان کوپن نیز شناخته می‌شوند) در فید پیشنهادات شما را تشریح می‌کند. این توصیه‌ها، مستندات استاندارد مرکز اقدامات را تکمیل کرده و به جنبه‌های ادغام خاص کارت هدیه می‌پردازند.

حالت پیشنهاد و دسته‌بندی

هنگام ارسال موجودی کارت هدیه، اطمینان حاصل کنید که ویژگی‌های اصلی زیر به درستی پیکربندی شده‌اند:

  • حالت پیشنهاد : offer_modes همیشه باید به عنوان یک آرایه تک‌قلو حاوی "OFFER_MODE_GIFT_CARD_PURCHASE" تنظیم شود:

    "offer_modes": ["OFFER_MODE_GIFT_CARD_PURCHASE"]
    
  • کوپن‌های ارزش ذخیره‌شده در مقابل تخفیف‌های فوری بدون نیاز به مراجعه حضوری :

    • gift_card_info صرفاً برای کوپن‌های پیش‌خرید شده با ارزش ذخیره شده و کارت‌های هدیه ( OFFER_MODE_GIFT_CARD_PURCHASE ) محفوظ است.
    • اگر مشتری مستقیماً در محل فروشگاه فیزیکی برای دریافت تخفیف فوری و بدون خرید کد تخفیف برای مطالبه یا استفاده بعدی، پرداخت انجام دهد، پیشنهاد را به عنوان یک تخفیف استاندارد بدون نیاز به مراجعه حضوری ( OFFER_MODE_WALK_IN ) مدل‌سازی کرده و پیام gift_card_info را به طور کامل حذف کنید.
  • مدل‌سازی ارزش‌گذاری : ارزش‌گذاری کارت هدیه باید نشان دهنده ارزش کوپن باشد (مبلغ قابل استفاده)، نه مبلغی که کاربر پرداخت می‌کند (کاربر قیمت تخفیف خورده را پرداخت می‌کند).

  • تجمیع چندین واحد پولی : چندین کوپن که درصد تخفیف و شرایط یکسانی دارند، اما از نظر ارزش اسمی متفاوت هستند، باید در یک ورودی پیشنهاد واحد گروه‌بندی شوند. از آنجایی که denomination_type به عنوان oneof عمل می‌کند، شرکا باید بین تنظیم fixed_denominations یا custom_range یکی را انتخاب کنند:

    • مقادیر ثابت : زمانی استفاده می‌شود که مبالغ کارت هدیه از پیش تعیین‌شده و مجزا ارائه می‌شوند (مثلاً ۵۰۰، ۱۰۰۰ و ۲۰۰۰ روپیه، همه با ۱۰٪ تخفیف ثابت). اطمینان حاصل کنید که هرگونه مقدار ثابتی که در صفحه فرود تمام شده یا در دسترس نیست، صریحاً از ارسال‌های فید حذف شده باشد.
    • محدوده سفارشی : زمانی که کاربران می‌توانند آزادانه هر مقدار اسمی دلخواهی را در محدوده‌های تعریف‌شده در صفحه خرید وارد کنند (مثلاً هر مقداری بین ۱۰۰ تا ۵۰۰۰ روپیه با ۵٪ تخفیف)، از این گزینه استفاده کنید. اگر صفحه فرود مقصد مقادیر گسسته و از پیش تعیین‌شده‌ای را ارائه می‌دهد، موجودی را دقیقاً تحت عنوان fixed_denominations مدل‌سازی کنید. علاوه بر این، اگر هم مقادیر ثابت و هم مقادیر سفارشی برای یک پیشنهاد در دسترس باشند، شرکا باید محدوده سفارشی انعطاف‌پذیر را تعیین کنند.

مدیریت زنجیره‌های چند مکانی

برای کوپن‌های هدیه‌ای که در فروشگاه‌های زنجیره‌ای بزرگ یا رستوران‌ها اعمال می‌شوند و شرایط آنها در چندین نقطه مورد علاقه (POI) یکسان است، برای هر فروشگاه یک شیء پیشنهاد جداگانه ارائه ندهید . در عوض، با ارائه یک شیء پیشنهاد واحد حاوی لیستی از تمام شناسه‌های موجودیت فروشگاه‌های شرکت‌کننده ( entity_ids )، از یک رویکرد تغذیه تجمیعی استفاده کنید.

برندسازی پورتال ( brand_id )

برخی از کوپن‌ها به جای سایت اصلی فروشنده، از طریق پورتال‌های بانکی یا وفاداری خاص (مثلاً برنامه‌های وفاداری بانکی یا پلتفرم‌های شریک) ارائه می‌شوند. برای اطمینان از برندسازی دقیق برای این پورتال‌ها، شرکا باید فیلد brand_id را در اشیاء پیشنهاد سطح بالا پر کنند.

در حالی که مقادیر پیش‌فرض brand_id برای برند اصلی حساب حذف می‌شوند (و هنگام استفاده از برند پیش‌فرض حساب، brand_id لازم نیست)، پر کردن صریح brand_id ، موجودی را به طور دقیق با پورتال برند مربوطه مرتبط می‌کند و تضمین می‌کند که لوگوها و نام‌های صحیح مختص هر شریک به کاربران نمایش داده می‌شوند. دستورالعمل‌های بیشتر در مورد پیکربندی برندها را می‌توانید در پیکربندی برندها بیابید.

ساختار اعتبار ( ValidityScope )

کارت‌های هدیه ساختار اعتبار منحصر به فردی دارند که بازه زمانی خرید معامله را از مدت زمان استفاده از کارت متمایز می‌کند. شرکا باید همیشه از مقادیر شمارشی ValidityScope مربوطه استفاده کنند:

  • VALIDITY_SCOPE_CLAIM : بازه زمانی که کارت هدیه برای خرید در پلتفرم همکار در دسترس است را تعریف می‌کند. این ورودی باید همیشه موجود باشد. هنگام ارسال فید، دوره اعتبار درخواست را از تاریخ دقیق ارسال فید پر کنید. علاوه بر این، اگر صفحه فرود به صراحت تاریخ پایان کمپین را تبلیغ می‌کند، هرگز دوره‌های درخواست را باز نگذارید. valid_through_time با تاریخ انقضای تبلیغ شده مطابقت دهید.
  • VALIDITY_SCOPE_REDEEM : مدت زمان استفاده پس از خرید را تعریف می‌کند (بازه زمانی که کاربران باید پس از خرید کوپن، آن را در فروشگاه استفاده کنند، که می‌تواند به عنوان مدت زمان یا بازه زمانی مشخص شود).

نگاشت نوع اقدام

شرکا اغلب کوپن‌ها را با استفاده از ساختارهایی مانند «آنلاین/آفلاین قابل بازخرید»، «آنلاین/فروشگاه» یا «در فروشگاه» دسته‌بندی می‌کنند. در ارسال فید، این باید به شمارش ActionType نگاشت شود تا نحوه مصرف محصول به طور دقیق تعریف شود:

  • غذاخوری / غذا به صورت عمودی : کارت‌های هدیه «غذا خوردن در محل» را به ACTION_TYPE_DINING نگاشت کنید. کارت‌های هدیه «تحویل» را به ACTION_TYPE_FOOD_DELIVERY نگاشت کنید. کارت‌های هدیه «بیرون‌بر» را به ACTION_TYPE_FOOD_TAKEOUT نگاشت کنید.
  • خرید خرده فروشی عمودی : کارت‌های هدیه "در فروشگاه" را به ACTION_TYPE_SHOPPING_IN_STORE نگاشت کنید. (توجه: کوپن‌های خرده فروشی فقط آنلاین پشتیبانی نمی‌شوند).
  • نگاشت تک کاناله : هر offer_id می‌تواند منحصراً به یک ActionType تعلق داشته باشد. اگر یک کالای موجودی از چندین کانال پردازش سفارش پشتیبانی می‌کند (مثلاً هم تحویل غذا و هم بیرون‌بر)، برای هر حالت، اشیاء Offer مجزا با شناسه‌های منحصر به فرد ایجاد کنید.

تخفیف‌های پلکانی و پیشنهادهای ویژه

  • تخفیف‌های پلکانی در روش‌های پرداخت : اگر درصدهای تخفیف متفاوتی بر اساس ابزار پرداخت خاص مورد استفاده ارائه می‌شود (مثلاً تخفیف بالاتر برای کیف پول الکترونیکی در مقابل کارت‌های اعتباری)، این موارد باید به عنوان اشیاء پیشنهاد جداگانه مدل‌سازی شوند. شرکا باید پوشش تبلیغاتی جامعی را در تمام ابزارهای پرداخت پشتیبانی شده (مثلاً کیف پول الکترونیکی، کارت‌های اعتباری، کارت‌های نقدی، بانکداری اینترنتی) ارائه دهند تا یک تجربه پس‌انداز قابل اعتماد تضمین شود. اگر یک پیشنهاد به طور جهانی برای همه روش‌های پرداخت پذیرفته شده در پلتفرم اعمال می‌شود، فیلد ابزار پرداخت نباید تنظیم شود.
  • ساختار پیشنهادهای اضافی : برای نمایش مزایای انباشته، مانند امتیازهای پاداش ویژه بانک یا بازگشت وجه اضافی قابل اعمال برای خرید کارت هدیه، آنها را با استفاده از enum مناسب OfferCategory - OFFER_CATEGORY_ADD_ON_PAYMENT_OFFER - به عنوان پیشنهادهای اضافی کاملاً جداگانه ارسال کنید. پاداش را درون OfferDetails.other_offer_details_text شرح دهید (مثلاً "تا 5 برابر امتیاز پاداش" )، و با پر کردن OfferRestrictions.combinable_offer_ids با offer_id کارت هدیه پایه، آن را به معامله کارت هدیه پایه پیوند دهید.

شرایط و ضوابط ویژه

شرکا باید برای ارائه شرایط و ضوابط کامل قانونی کارت هدیه یا کوپن، به terms.terms_and_conditions تکیه کنند. تمام دستورالعمل‌های کاربری و دستورالعمل‌های استفاده را در این فیلد ادغام کنید.

اگر محدودیت‌های حیاتی نیاز به برجسته‌سازی رابط کاربری اختصاصی دارند (مانند انقضای موجودی یکبار مصرف، عدم قابلیت استرداد وجه، یا سقف‌های ترکیب تراکنش مانند "حداکثر ۲ کوپن را می‌توان در هر صورتحساب ترکیب کرد" )، آنها را در offer_restrictions.special_conditions برجسته کنید.

پیشنهاد عنوان پیشنهادی

طول عنوان پیشنهاد باید کاملاً زیر ۴۰ کاراکتر باقی بماند. نام‌های تجاری فروشنده را از offer_display_text حذف کنید، زیرا پیشنهادها مستقیماً در برگه مکان اختصاصی فروشنده نمایش داده می‌شوند. ما قالب‌های عنوان زیر را توصیه می‌کنیم:

مورد استفاده عنوان پیشنهادی
تخفیف ثابت روی کوپن‌ها X% off on Gift Cards
تخفیف متغیر بر اساس روش پرداخت X% off on Gift Cards using {e-wallet}
تخفیف‌های متغیر برای کارت‌های اعتباری مختلف X% off on Gift Cards (تخفیف‌های مختلف را به صورت پیشنهادهای جداگانه ارسال کنید)
کارت‌های هدیه B2B2C X% off on Gift Cards (برند از طریق تصویر بندانگشتی با استفاده از brand_id نشان داده می‌شود)
پیشنهادهای اضافی Flat/Up to 5X reward points/ <Platform> coins

الزامات صفحه فرود

هر offer_url تبلیغ‌شده باید مستقیماً و بدون ریدایرکت‌های واسطه، HTTP 200 OK را برگرداند و به یک صفحه مقصد فعال که پیشنهاد را اثبات می‌کند، هدایت شود.

فید نباید شامل اقلام فروخته شده یا اقلام ناموجود باشد. همگام‌سازی دقیق موجودی بین فیلدهای اقلام فید و گزینه‌های خرید زنده در صفحه فرود مقصد را حفظ کنید.

صفحه فرود مقصد باید به وضوح ذکر کند که این پیشنهاد به طور خاص برای کارت‌های هدیه یا کوپن‌ها اعمال می‌شود.

برای مثال، اگر صفحه فرود یک شریک فقط دکمه‌های عمومی پرداخت مانند «پرداخت صورتحساب» را نمایش دهد، بدون اینکه صریحاً از قبل اعلام کند که تکمیل تراکنش، یک کوپن کارت هدیه با ارزش افزوده را صادر می‌کند، کاربرانی که از گوگل به سمت خرید کارت هدیه هدایت می‌شوند، ممکن است دچار سردرگمی یا رها کردن صفحه شوند. حتی اگر در مرحله بعدی پرداخت، اطلاعیه کوپن ظاهر شود، وضوح اولیه در صفحه فرود اولیه ضروری است.

پیشنهادات با کد تخفیف

برخی از پیشنهادات نیاز به وارد کردن کد تخفیف توسط کاربر دارند، مانند "با اعمال کد تخفیف SAVE20، 20٪ تخفیف روی کل صورتحساب دریافت کنید". توجه به این نکته ضروری است که گوگل کدهای تخفیف را از تعریف کوپن نمایش نمی‌دهد. شرکا ممکن است این اطلاعات را در OfferDetails.offer_display_text برای نمایش به کاربران قرار دهند. پیشنهادات مبتنی بر کوپن معمولاً به دو دسته تقسیم می‌شوند:

  • پیشنهادهایی که در آنها کوپن به طور خودکار در هنگام پرداخت به هر کاربری که از گوگل وارد می‌شود، ارائه می‌شود. این موارد مجاز هستند.
  • پیشنهادهایی که از کاربر می‌خواهند کد تخفیف را هنگام پرداخت وارد کند اما در صفحه فرود URL پیشنهاد، دستورالعملی در مورد نحوه اعمال کد تخفیف ارائه نمی‌دهند، یا هنگام دنبال کردن URL پیشنهاد، کوپن را به طور خودکار اعمال نمی‌کنند، مجاز نیستند.

مثال پیشنهاد کارت هدیه به فرمت JSON

{
  "data": [
    {
      "offer_id": "example-dining-gift-card-10off",
      "entity_ids": [
        "dining-1",
        "dining-2"
      ],
      "offer_modes": [
        "OFFER_MODE_GIFT_CARD_PURCHASE"
      ],
      "action_type": "ACTION_TYPE_DINING",
      "offer_source": "OFFER_SOURCE_AGGREGATOR",
      "offer_category": "OFFER_CATEGORY_BASE_OFFER",
      "offer_details": {
        "offer_display_text": "10% off on Gift Cards",
        "discount_percent": 10.0,
        "gift_card_info": {
          "fixed_denominations": {
            "amounts": [
              {
                "units": 500,
                "currency_code": "INR"
              },
              {
                "units": 1000,
                "currency_code": "INR"
              },
              {
                "units": 2000,
                "currency_code": "INR"
              }
            ]
          }
        }
      },
      "offer_restrictions": {
        "combinable_with_other_offers": false,
        "special_conditions": [
          "Single-use balance expiration applies",
          "Maximum 2 gift card vouchers can be combined per bill",
          "No cash refund will be provided against this voucher"
        ]
      },
      "terms": {
        "restricted_to_certain_users": false,
        "terms_and_conditions": "1. Redeemable exclusively at participating dining outlets.\n2. Single-use balance expiration applies.\n3. Maximum 2 gift card vouchers can be combined per bill.\n4. No cash refund will be provided against this voucher."
      },
      "validity_periods": [
        {
          "valid_period": {
            "valid_from_time": {
              "seconds": "1774934350"
            },
            "valid_through_time": {
              "seconds": "1806470350"
            }
          },
          "validity_scope": "VALIDITY_SCOPE_CLAIM"
        },
        {
          "validity_duration_in_days": 365,
          "validity_scope": "VALIDITY_SCOPE_REDEEM"
        }
      ],
      "offer_url": "https://www.example-portal.com/dining-gift-cards/buy"
    }
  ]
}