Rozwiązywanie problemów związanych z interfejsem Merchant Promotions API

Na tej stronie opisaliśmy, jak rozwiązywać problemy związane z interfejsem API promocji dla sprzedawców.

Utwórz promocję

Gdy używasz żądania accounts.promotions.insert, aby wstawić promocję, upewnij się, że w ciele żądania uwzględniono wszystkie wymagane pola. Wymagane są te pola:

  • promotion.promotionId
  • promotion.contentLanguage
  • promotion.redemptionChannel
  • promotion.targetCountry
  • promotion.attributes.longTitle
  • promotion.attributes.promotionEffectiveTimePeriod.startTime
  • promotion.attributes.promotionEffectiveTimePeriod.endTime
  • promotion.attributes.promotionDestinations
  • promotion.attributes.couponValueType
  • promotion.attributes.offerType
  • promotion.attributes.productApplicability
  • promotion.attributes.promotionUrl

Nieprawidłowy okres obowiązywania promocji

Jeśli w żądaniu accounts.promotions.insert podasz nieprawidłowe daty obowiązywania promocji, zobaczysz ten komunikat o błędzie:

Invalid value at 'promotion.attributes.promotion_effective_time_period.start_time'

Aby naprawić ten błąd, sprawdź, czy wartość podana w polu promotionDisplayTimePeriod.startTime jest taka sama lub wcześniejsza niż wartość podana w polu promotionEffectiveTimePeriod.startTime. Upewnij się też, że wartość podana w polu promotionDisplayTimePeriod.endTime jest taka sama lub wcześniejsza niż wartość podana w polu promotionEffectiveTimePeriod.endTime.

Wartości pól startTime i endTime muszą być w formacie UTC RFC3339, czyli yyyy-mm-ddThh:mm:ssZ. Na przykład: 2024-08-15T18:20:20Z.

Nie określono minimalnej wielkości zakupu

Jeśli wartość atrybutu attributes.couponValueType to BUY_M_GET_N_PERCENT_OFF lub BUY_M_GET_N_MONEY_OFF, musisz podać wartość pola attributes.minimumPurchaseQuantity w żądaniu accounts.promotions.insert.

Jeśli w żądaniu accounts.promotions.insert nie podasz wartości pola attributes.minimumPurchaseQuantity, zobaczysz ten komunikat o błędzie:

[minimumPurchaseQuantity] Missing benefit or restriction attributes for its type

Aby naprawić ten błąd, podaj wartość w polu minimumPurchaseQuantity w żądaniu.

Nie określono kwoty rabatu

Jeśli wartość pola attributes.couponValueType to MONEY_OFF, musisz podać wartość pola attributes.moneyOffAmount w żądaniu accounts.promotions.insert.

Jeśli w żądaniu accounts.promotions.insert nie podasz wartości pola attributes.moneyOffAmount, wyświetli się ten komunikat o błędzie:

[moneyOffAmount] Missing benefit or restriction attributes for its type

Aby naprawić ten błąd, podaj wartość w polu attributes.moneyOffAmount w żądaniu. Kwota musi być podana w mikro.

Brak opisu prezentu

Jeśli wartość pola attributes.couponValueType to FREE_GIFT, musisz podać wartość pola attributes.freeGiftDescription w żądaniu accounts.promotions.insert.

Jeśli w żądaniu accounts.promotions.insert nie podasz wartości pola attributes.freeGiftDescription, zobaczysz ten komunikat o błędzie:

[freeGiftDescription] Missing benefit or restriction attributes for its type

Aby naprawić ten błąd, podaj wartość w polu attributes.freeGiftDescription w żądaniu.

Bezpłatna dostawa nie jest obsługiwana w przypadku promocji produktów dostępnych lokalnie

Jeśli wartość pola redemptionChannel to IN_STORE, a wartość pola attributes.couponValueType to FREE_SHIPPING_STANDARD, FREE_SHIPPING_OVERNIGHT lub FREE_SHIPPING_TWO_DAY, pojawi się ten komunikat o błędzie:

[shippingServiceNames] Free shipping types are not supported for local promotions

Aby naprawić ten błąd, sprawdź, czy wartość pola redemptionChannel to ONLINE.

Nie podano kanału wykorzystania

Jeśli w żądaniu accounts.promotions.insert nie jest określona wartość pola redemptionChannel, wyświetli się ten komunikat o błędzie:

[redemptionChannel] Required parameter: redemptionChannel

Aby naprawić ten błąd, podaj wartość w polu redemptionChannel w żądaniu.

Pole contentLanguage w promocji i źródle danych nie są zgodne

Jeśli wartość pola contentLanguage nie jest taka sama jak wartość pola contentLanguage w źródle danych promocji, którego używasz w żądaniu accounts.promotions.insert, zobaczysz ten komunikat o błędzie:

[promotion] Could not find the proper data target for the provided feedLabel and contentLanguage

Aby rozwiązać ten problem, sprawdź, czy wartość pola contentLanguage jest taka sama jak wartość pola contentLanguage w źródle danych z promocjami, którego używasz.

Ten błąd pojawi się też, jeśli wartość atrybutu targetCountry nie jest taka sama jak wartość pola targetCountry w źródle danych promocji, którego używasz.

Więcej informacji