Не удается получить отчет о финансовых транзакциях с помощью API отчетов Amazon MWS


Я использую API Amazon более 2 лет и хорошо знаком с ним. Я пытаюсь запросить и заказать этот отчет "_GET_DATE_RANGE_FINANCIAL_TRANSACTION_DATA_" из amazon с помощью API отчетов, и он генерирует мне запрос отчета, но никогда не создавал никакого отчета, и я запрашиваю его за последние 3 дня. В его статусе постоянно говорится "отправлено", но никогда не обновляется до статуса "готово". Я также пробовал Amazon ScratchPad.

Я запрашиваю множество других отчетов, используя API того же отчета и они работают идеально. Пожалуйста, скажите мне, если кто-нибудь испытывает ту же проблему.

Это код, который я использую для запроса отчета:

     $sdate = new DateTime('-7 days', new DateTimeZone('UTC'));
     $startdate = $sdate->format("Y-m-d\T00:00:00P");

     $edate = new DateTime('-1 days', new DateTimeZone('UTC'));
     $enddate = $edate->format("Y-m-d\T23:59:59P");

     $AWS_ACCESS_KEY_ID = $pos['azn_access_key'];
     $AWS_SECRET_ACCESS_KEY = $pos['azn_secret_access_key'];
     $APPLICATION_NAME = $pos['azn_app_name'];
     $APPLICATION_VERSION = $pos['azn_app_version'];
     $MERCHANT_ID = $pos['azn_merchant_id'];
     $MARKETPLACE_ID = $pos['azn_marketplace_id'];
     $MERCHANT_TOKEN = $pos['azn_merchant_token'];
     $pos_name = $pos['nickname'];
     $pos_id = $pos['id'];
     $serviceURL = $pos['azn_service_url'];

     $config = array(
         'ServiceURL' => $serviceURL,
         '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

     $parameters = array(
         'Merchant' => $MERCHANT_ID,
         'MarketplaceIdList' => $marketplaceIdArray,
         'ReportType' => '_GET_DATE_RANGE_FINANCIAL_TRANSACTION_DATA_',
         'ReportOptions' => 'ShowSalesChannel=true',
         'StartDate' => new DateTime($startdate, new DateTimeZone('UTC')),
         'EndDate' => new DateTime($enddate, new DateTimeZone('UTC')),
     );

     $request = new MarketplaceWebService_Model_RequestReportRequest($parameters);
     $request = new MarketplaceWebService_Model_RequestReportRequest();
     $request->setMarketplaceIdList($marketplaceIdArray);
     $request->setMerchant($MERCHANT_ID);
     $request->setReportType('_GET_DATE_RANGE_FINANCIAL_TRANSACTION_DATA_');
     $request->setReportOptions('ShowSalesChannel=true');

     $request->setStartDate(new DateTime($startdate, new DateTimeZone('UTC')));
     $request->setEndDate(new DateTime($enddate, new DateTimeZone('UTC')));

     $report_requestID = invokeRequestReport($service, $request);
Author: jjthebig1, 2014-10-02

1 answers

Этот отчет нельзя запросить через API. При запросе отчета тег сообщит вам, будет ли он обработан или нет. Для отчета GET_DATE_RANGE_FINANCIAL_TRANSACTION_DATA_ вы всегда будете получать falseЗапланировано>.

Альтернативой является планирование отчета с использованием пользовательского интерфейса, но это оставляет вам единственный вариант ежемесячных, а не пользовательских отчетов о диапазоне дат.

 3
Author: jjthebig1, 2015-01-02 17:15:49