نمای کلی برنامه‌های وفاداری

بااستفاده از برنامه‌های وفاداری، مزایای فروشگاهتان را در Google نمایش دهید. می‌توانید طیف وسیعی از مزایا، مانند ارسال رایگان، امتیازهای پس‌خرید، و قیمت‌گذاری انحصاری اعضا را ارسال کنید. مزایای برنامه وفاداری شما می‌تواند در فهرستگان‌های رایگان، آگهی‌های آماده خرید، و آگهی‌های موجودی محلی در سراسر سطوح Google، ازجمله «جستجوی Google»، زبانه Shopping، و «کیف پول Google» نشان داده شود.

با Merchant API، فروشندگان و ارائه‌دهندگان وفاداری طرف سوم که ازطرف فروشندگان عمل می‌کنند می‌توانند برنامه‌های وفاداری را بااستفاده از LoyaltyProgramService به‌صورت برنامه‌ریزی‌شده پیکربندی و مدیریت کنند. این سرویس به شما امکان می‌دهد برنامه‌های وفاداری را ایجاد، بازیابی، فهرست، به‌روزرسانی، و حذف کنید.

برای کسب اطلاعات بیشتر درباره الزامات کسب‌وکار و رهنمودهای خط‌مشی، به درباره برنامه وفاداری فروشنده در «مرکز راهنمایی Merchant Center» مراجعه کنید.

مفاهیم کلیدی

هنگام کار با برنامه‌های وفاداری، مفاهیم و محدودیت‌های زیر را درنظر داشته باشید:

  • شناسه سطح حساب: Merchant API برنامه‌های وفاداری را با شناسه حساب Merchant Center مالک شناسایی می‌کند.
  • محدودیت برنامه تکی: Merchant API فقط از یک برنامه وفاداری در هر حساب فروشنده پشتیبانی می‌کند.
  • مالکیت مستقیم حساب: برنامه‌های وفاداری باید مستقیماً در حساب فروشنده هدف (accounts/{ACCOUNT_ID}) پیکربندی شوند. این سرویس از مدیریت برنامه‌های وفاداری در سطح حساب پیشرفته برای حساب‌های فرعی پشتیبانی نمی‌کند. ارائه‌دهندگان وفاداری طرف سوم با دسترسی مجاز به حساب فروشنده می‌توانند برنامه را ازطرف فروشنده مدیریت کنند.
  • بازبینی تحریریه: پس‌از ایجاد یا به‌روزرسانی برنامه وفاداری، برنامه تحت بازبینی قرار می‌گیرد. فیلد review_result.review_status نشان می‌دهد که آیا برنامه UNDER_REVIEW،‏ APPROVED، یا REJECTED است.
  • مناطق پشتیبانی‌شده: برنامه‌های وفاداری فروشنده در کشورهای پشتیبانی‌شده، ازجمله آلمان، اسپانیا، استرالیا، ایالات متحده، ایتالیا، برزیل، پادشاهی متحد، فرانسه، کانادا، کره جنوبی، مکزیک، هلند، و هند دردسترس است.
  • الزامات سطح: پیوستن به سطوح می‌تواند بدون هزینه باشد، مستلزم پرداخت هزینه عضویت باشد، مستلزم رسیدن به آستانه هزینه باشد، یا مستلزم داشتن کارت اعتباری با نمانام فروشنده باشد. از سطوح مبتنی بر شغل (مانند سطوح دانشجویی یا نظامی) پشتیبانی نمی‌شود.
  • هدایا و مزایا: برنامه‌ها از ارسال رایگان، امتیازهای قابل‌پس‌خرید کردن، و قیمت‌گذاری اعضا پشتیبانی می‌کنند. در آگهی‌ها، قیمت‌گذاری اعضا نیازمند تخفیف حداقل ۵٪ یا ۵ واحد پولی کمتر از قیمت عادی یا حراجی است.

پیش‌نیازها

قبل‌از مدیریت برنامه‌های وفاداری با «میانای برنامه‌سازی کاربردی فروشنده»، مطمئن شوید که الزامات زیر را برآورده می‌کنید:

  • باید حساب Merchant Center فعال داشته باشید (یا اگر ارائه‌دهنده وفاداری طرف سوم هستید، به حساب فروشنده دسترسی مجاز داشته باشید).
  • برافزای برنامه وفاداری را برای حسابتان فعال کنید. می‌توانید برافزای را بااستفاده از یکی از گزینه‌های زیر فعال کنید:

در اینجا نمونه‌ای از درخواست فعال کردن برافزای «برنامه وفاداری» بااستفاده از میانای برنامه‌سازی کاربردی فرعی «برنامه‌ها» ارائه شده است:

HTTP

POST https://merchantapi.googleapis.com/accounts/v1/accounts/{ACCOUNT_ID}/programs/loyalty:enable

cURL

curl --request POST \
  'https://merchantapi.googleapis.com/accounts/v1/accounts/{ACCOUNT_ID}/programs/loyalty:enable?key={YOUR_API_KEY}' \
  --header 'Authorization: Bearer {YOUR_ACCESS_TOKEN}' \
  --header 'Accept: application/json' \
  --header 'Content-Type: application/json' \
  --data '{}' \
  --compressed

روش‌ها

برنامه‌های وفاداری را بااستفاده از روش‌های زیر مدیریت کنید:

ایجاد برنامه وفاداری

برای ایجاد برنامه وفاداری جدید برای حساب، از روش loyaltyPrograms.create استفاده کنید. جزئیاتی مثل شرح برنامه، نشانی وب ثبت‌نام، و سطوح برنامه با مزایا و الزامات منحصربه‌فردشان را مشخص کنید.

program_label الزامی شناسه یکتای برنامه وفاداری را تنظیم می‌کند. برای مثال، ارائه برچسب my-rewards منجر به منبع name از accounts/{ACCOUNT_ID}/programs/loyalty/loyaltyPrograms/my-rewards می‌شود.

در اینجا یک درخواست نمونه آورده شده است:

HTTP

POST https://merchantapi.googleapis.com/accounts/v1/accounts/{ACCOUNT_ID}/programs/loyalty/loyaltyPrograms

{
  "programLabel": "my-rewards",
  "loyaltyProgram": {
    "programName": "my rewards",
    "tiers": [
      {
        "tierName": "gold",
        "tierLabel": "gold",
        "tierBenefits": [
          {
            "otherBenefit": "free gift on your birthday"
          },
          {
            "structuredBenefit": {
              "pointsEarningBenefit": {
                "minimumMoneySpent": {
                  "currencyCode": "USD",
                  "units": "25"
                },
                "pointsEarningBenefitAnnotation": {
                  "pointsEarned": 1.0,
                  "amountSpent": {
                    "currencyCode": "USD",
                    "units": "1"
                  }
                }
              }
            }
          }
        ],
        "requirements": {
          "freeToJoin": true
        }
      }
    ],
    "programDescriptions": [
      "earn rewards buying products you love"
    ],
    "signupUrl": "https://www.example.com/my_rewards_signup",
    "regionCodes": [
      "US"
    ]
  }
}

{ACCOUNT_ID} را با شناسه یکتای حساب Merchant Center خودتان جایگزین کنید.

در اینجا نمونه‌ای از پاسخ یک درخواست موفق آورده شده است:

{
  "name": "accounts/{ACCOUNT_ID}/programs/loyalty/loyaltyPrograms/my-rewards",
  "programName": "my rewards",
  "tiers": [
    {
      "tierName": "gold",
      "tierLabel": "gold",
      "tierBenefits": [
        {
          "otherBenefit": "free gift on your birthday"
        },
        {
          "structuredBenefit": {
            "pointsEarningBenefit": {
              "minimumMoneySpent": {
                "currencyCode": "USD",
                "units": "25"
              },
              "pointsEarningBenefitAnnotation": {
                "pointsEarned": 1.0,
                "amountSpent": {
                  "currencyCode": "USD",
                  "units": "1"
                }
              }
            }
          }
        }
      ],
      "requirements": {
        "freeToJoin": true
      },
      "signupUrl": "https://www.example.com/my-rewards/gold"
    }
  ],
  "programDescriptions": [
    "earn rewards buying products you love"
  ],
  "signupUrl": "https://www.example.com/my_rewards_signup",
  "reviewResult": {
    "reviewStatus": "UNDER_REVIEW"
  },
  "regionCodes": [
    "US"
  ]
}

بازیابی برنامه وفاداری

برای بازیابی جزئیات برنامه وفاداری خودمالک خاص، از روش loyaltyPrograms.get استفاده کنید.

در اینجا یک درخواست نمونه آورده شده است:

HTTP

GET https://merchantapi.googleapis.com/accounts/v1/accounts/{ACCOUNT_ID}/programs/loyalty/loyaltyPrograms/{PROGRAM_LABEL}

{ACCOUNT_ID} را با شناسه حسابتان و {PROGRAM_LABEL} را با برچسب یکتای برنامه وفاداری (برای نمونه، my-rewards) جایگزین کنید.

در اینجا نمونه‌ای از پاسخ یک درخواست موفق آورده شده است:

{
  "name": "accounts/{ACCOUNT_ID}/programs/loyalty/loyaltyPrograms/my-rewards",
  "programName": "my rewards",
  "tiers": [
    {
      "tierName": "gold",
      "tierLabel": "gold",
      "tierBenefits": [
        {
          "otherBenefit": "free gift on your birthday"
        },
        {
          "structuredBenefit": {
            "pointsEarningBenefit": {
              "minimumMoneySpent": {
                "currencyCode": "USD",
                "units": "25"
              },
              "pointsEarningBenefitAnnotation": {
                "pointsEarned": 1.0,
                "amountSpent": {
                  "currencyCode": "USD",
                  "units": "1"
                }
              }
            }
          }
        }
      ],
      "requirements": {
        "freeToJoin": true
      },
      "signupUrl": "https://www.example.com/my-rewards/gold"
    }
  ],
  "programDescriptions": [
    "earn rewards buying products you love"
  ],
  "signupUrl": "https://www.example.com/my_rewards_signup",
  "reviewResult": {
    "reviewStatus": "UNDER_REVIEW"
  },
  "regionCodes": [
    "US"
  ]
}

فهرست کردن برنامه‌های وفاداری

برای فهرست کردن همه برنامه‌های وفاداری خودمالک مرتبط با حسابتان، از روش loyaltyPrograms.list استفاده کنید.

در اینجا یک درخواست نمونه آورده شده است:

HTTP

GET https://merchantapi.googleapis.com/accounts/v1/accounts/{ACCOUNT_ID}/programs/loyalty/loyaltyPrograms

در اینجا نمونه‌ای از پاسخ یک درخواست موفق آورده شده است:

{
  "loyaltyPrograms": [
    {
      "name": "accounts/{ACCOUNT_ID}/programs/loyalty/loyaltyPrograms/my-rewards",
      "programName": "my rewards",
      "tiers": [
        {
          "tierName": "gold",
          "tierLabel": "gold",
          "tierBenefits": [
            {
              "otherBenefit": "free gift on your birthday"
            },
            {
              "structuredBenefit": {
                "pointsEarningBenefit": {
                  "minimumMoneySpent": {
                    "currencyCode": "USD",
                    "units": "25"
                  },
                  "pointsEarningBenefitAnnotation": {
                    "pointsEarned": 1.0,
                    "amountSpent": {
                      "currencyCode": "USD",
                      "units": "1"
                    }
                  }
                }
              }
            }
          ],
          "requirements": {
            "freeToJoin": true
          },
          "signupUrl": "https://www.example.com/my-rewards/gold"
        }
      ],
      "programDescriptions": [
        "earn rewards buying products you love"
      ],
      "signupUrl": "https://www.example.com/my_rewards_signup",
      "reviewResult": {
        "reviewStatus": "UNDER_REVIEW"
      },
      "regionCodes": [
        "US"
      ]
    }
  ]
}

به‌روزرسانی برنامه وفاداری

برای به‌روزرسانی برنامه وفاداری موجود، از روش loyaltyPrograms.update استفاده کنید. بااستفاده از update_mask، به‌روزرسانی جزئی انجام دهید، یا با حذف کردن پوشش، جایگزینی کامل انجام دهید.

به‌روزرسانی جزئی با پوشش به‌روزرسانی

update_mask به شما امکان می‌دهد فیلدهای دقیق را برای به‌روزرسانی مشخص کنید. فقط فیلدهای فهرست‌شده در پوشش اصلاح می‌شوند، درحالی‌که فیلدهای فهرست‌نشده بدون تغییر باقی می‌مانند. هر فیلدی که از پوشش به‌روزرسانی حذف شده باشد نادیده گرفته می‌شود، حتی اگر در بدنه درخواست ارائه شده باشد.

درخواست نمونه زیر فقط programDescriptions و advancedSettings را به‌روز می‌کند:

HTTP

PATCH https://merchantapi.googleapis.com/accounts/v1/accounts/{ACCOUNT_ID}/programs/loyalty/loyaltyPrograms/{PROGRAM_LABEL}?update_mask=program_descriptions,advanced_settings

{
  "programDescriptions": [
    "a new description of the program"
  ],
  "advancedSettings": {
    "hideDisplayFromNonMembers": true
  },
  "signupUrl": "https://www.example.com"
}

در این مثال، سرویس signupUrl را نادیده می‌گیرد زیرا در update_mask گنجانده نشده است. فیلد programDescriptions به‌طور کامل جایگزین هرگونه شرح پیکربندی‌شده قبلی می‌شود.

در اینجا یک پاسخ نمونه از یک درخواست موفق آورده شده است:

{
  "name": "accounts/{ACCOUNT_ID}/programs/loyalty/loyaltyPrograms/my-rewards",
  "programName": "my rewards",
  "tiers": [
    {
      "tierName": "gold",
      "tierLabel": "gold",
      "tierBenefits": [
        {
          "otherBenefit": "free gift on your birthday"
        },
        {
          "structuredBenefit": {
            "pointsEarningBenefit": {
              "minimumMoneySpent": {
                "currencyCode": "USD",
                "units": "25"
              },
              "pointsEarningBenefitAnnotation": {
                "pointsEarned": 1.0,
                "amountSpent": {
                  "currencyCode": "USD",
                  "units": "1"
                }
              }
            }
          }
        }
      ],
      "requirements": {
        "freeToJoin": true
      },
      "signupUrl": "https://www.example.com/my-rewards/gold"
    }
  ],
  "programDescriptions": [
    "a new description of the program"
  ],
  "signupUrl": "https://www.example.com/my_rewards_signup",
  "reviewResult": {
    "reviewStatus": "UNDER_REVIEW"
  },
  "regionCodes": [
    "US"
  ],
  "advancedSettings": {
    "hideDisplayFromNonMembers": true
  }
}

جایگزینی کامل بدون ماسک به‌روزرسانی

وقتی پارامتر update_mask را حذف می‌کنید، درخواست جایگزینی کامل پیکربندی برنامه وفاداری را انجام می‌دهد.

در اینجا یک درخواست نمونه آورده شده است:

HTTP

PATCH https://merchantapi.googleapis.com/accounts/v1/accounts/{ACCOUNT_ID}/programs/loyalty/loyaltyPrograms/{PROGRAM_LABEL}

{
  "programName": "Updated Program",
  "signupUrl": "https://example.com/updated",
  "programDescriptions": [
    "Updated description"
  ],
  "regionCodes": [
    "US"
  ],
  "tiers": [
    {
      "tierName": "Gold Tier",
      "tierLabel": "gold",
      "tierBenefits": [
        {
          "otherBenefit": "Free shipping"
        }
      ],
      "requirements": {
        "freeToJoin": true
      }
    }
  ]
}

در اینجا یک پاسخ نمونه از یک درخواست موفق آورده شده است:

{
  "name": "accounts/{ACCOUNT_ID}/programs/loyalty/loyaltyPrograms/my-rewards",
  "programName": "Updated Program",
  "tiers": [
    {
      "tierName": "Gold Tier",
      "tierLabel": "gold",
      "tierBenefits": [
        {
          "otherBenefit": "Free shipping"
        }
      ],
      "requirements": {
        "freeToJoin": true
      }
    }
  ],
  "programDescriptions": [
    "Updated description"
  ],
  "signupUrl": "https://example.com/updated",
  "reviewResult": {
    "reviewStatus": "UNDER_REVIEW"
  },
  "regionCodes": [
    "US"
  ]
}

حذف برنامه وفاداری

برای حذف برنامه وفاداری از حسابتان، از روش loyaltyPrograms.delete استفاده کنید.

در اینجا یک درخواست نمونه آورده شده است:

HTTP

DELETE https://merchantapi.googleapis.com/accounts/v1/accounts/{ACCOUNT_ID}/programs/loyalty/loyaltyPrograms/{PROGRAM_LABEL}

اگر موفقیت‌آمیز باشد، بدنه پاسخ خالی است.

مراحل بعدی