Не удается запросить _GET_SELLER_FEEDBACK_DATA_ отчет из API отчетов Amazon MWS?

Я использую API отчетов Amazon MWS, чтобы получать отзывы клиентов, используя тип отчета «_GET_SELLER_FEEDBACK_DATA_».

Но, к сожалению, там написано «статус отчета отменен». Используя Scratchpad для запроса этого отчета, он работает нормально.

Вот мой код:

$report_type = "_GET_SELLER_FEEDBACK_DATA_";

$config = array(
'ServiceURL' => "https://mws.amazonservices.co.uk",
'ProxyHost' => null,
'ProxyPort' => -1,
'MaxErrorRetry' => 3,
);

$service = new MarketplaceWebService_Client($AWS_ACCESS_KEY_ID, $AWS_SECRET_ACCESS_KEY, $config, $APPLICATION_NAME, $APPLICATION_VERSION);

$marketplaceIdArray = array("Id" => array($MARKETPLACE_ID));

//Sends Report Request
$request = new MarketplaceWebService_Model_RequestReportRequest();
$request->setMarketplaceIdList($marketplaceIdArray);
$request->setMerchant($MERCHANT_ID);
$request->setReportType($report_type);
$request->setReportOptions('ShowSalesChannel=true');
$request->setStartDate(new DateTime('-90 Days', new DateTimeZone('UTC')));

$report_request_id = invokeRequestReport($service, $request);

Методы класса API отчетов invokeReportRequest(), invokeGetReportRequestList(), invokeGetReportList() а также invokeGetReport() не изменены мной.

0

Решение

Amazon принимает ваш запрос на получение отчета, но затем отказывается предоставить его. Я не уверен, есть ли способ получить какое-либо значимое сообщение об ошибке из MWS, но из прошлого опыта такого рода вещи случаются, когда ваш запрос технически действителен, но имеет логическую ошибку некоторых типов (например, вы отправляете XML файл, который проверяет XSD, но содержит цены на товары, которые не являются частью вашего инвентаря)

Я не проверял это, но, глядя на документы API (Справочник по MWS Reports API стр. 46) кажется, что ShowSalesChannel не является действительным ReportOption за _GET_SELLER_FEEDBACK_DATA_ отчеты (кажется, что это разрешено только в отчетах о заказах, а получение отзывов от продавцов не поддерживает любой ReportOption). Поэтому, пожалуйста, попробуйте и удалите

$request->setReportOptions('ShowSalesChannel=true');

из вашего кода и посмотрим, что произойдет.

2

Другие решения

Других решений пока нет …