Ошибка интеграции DHL XML API SV012a и SV014a

Ну, на самом деле я делаю некоторые шаги, используя API с нашим приложением.

(Примечание: я взял все приведенные ниже данные из тестового XML-файла, предоставленного DHL Toolkit, за исключением номера счета доставки и счета для выставления счетов)

use DHL\Entity\GB\ShipmentResponse;
use DHL\Entity\GB\ShipmentRequest;
use DHL\Client\Web as WebserviceClient;
use DHL\Datatype\GB\Piece;
use DHL\Datatype\GB\SpecialService;
//echo __DIR__ . '/../../init.php';exit;
require(__DIR__ . '/../../init.php');

// DHL Settings
$dhl = $config['dhl'];
//echo "<pre>";print_r($dhl);exit;
// Test a ShipmentRequestRequest using DHL XML API
$sample = new ShipmentRequest();
//echo "<pre>";print_r($dhl);exit;
// Set values of the request
$sample->MessageTime = '2019-03-17T09:30:47-05:00';  
$sample->MessageReference = '1234567890123456789012345678901'; 
$sample->SiteID = $dhl['id'];
$sample->Password = $dhl['pass'];

$sample->RegionCode = 'EU';
//$sample->RequestedPickupTime = 'Y';  
$sample->NewShipper = 'N';  
$sample->LanguageCode = 'en';
$sample->PiecesEnabled = 'Y';
$sample->Billing->ShipperAccountNumber = $dhl['shipperAccountNumber'];
$sample->Billing->ShippingPaymentType = 'S';
$sample->Billing->BillingAccountNumber = $dhl['billingAccountNumber']; 

$sample->Consignee->CompanyName = 'ABCDEFGHIJKLMNOPQRSTUV Life Centre';
$sample->Consignee->addAddressLine('Central 1');  
$sample->Consignee->City = 'Singapore';  
$sample->Consignee->PostalCode = '486048';  
$sample->Consignee->CountryCode = 'SG';
$sample->Consignee->CountryName = 'Singapore';
$sample->Consignee->Contact->PersonName = 'raobeert bere';
$sample->Consignee->Contact->PhoneNumber = '11234-325423';

$sample->Dutiable->DeclaredValue = '2.00';  
$sample->Dutiable->DeclaredCurrency = 'EUR';

$sample->ShipmentDetails->NumberOfPieces = 1;

// All optional but add some data
$piece = new Piece();
$piece->PieceID = '1';
$piece->PackageType = 'EE';
$piece->Weight = '5.0';
$piece->DimWeight = '1.0';
$piece->Width = '2';
$piece->Height = '2';
$piece->Depth = '2';
$sample->ShipmentDetails->addPiece($piece);

$sample->ShipmentDetails->Weight = '5.0';
$sample->ShipmentDetails->WeightUnit = 'K';
$sample->ShipmentDetails->GlobalProductCode = 'P';
$sample->ShipmentDetails->LocalProductCode = 'P';
$sample->ShipmentDetails->Date = date('Y-m-d');
$sample->ShipmentDetails->Contents = 'For testing purpose only. Please do not ship';
$sample->ShipmentDetails->DimensionUnit = 'C';  
$sample->ShipmentDetails->CurrencyCode = 'EUR';

$sample->Shipper->ShipperID = $dhl['shipperAccountNumber'];
$sample->Shipper->CompanyName = 'University of QA';
$sample->Shipper->addAddressLine('1 New Orchard Road');
$sample->Shipper->addAddressLine('Senate House');
$sample->Shipper->City = 'London';  
$sample->Shipper->PostalCode = 'WC1E 7HU';  
$sample->Shipper->CountryCode = 'GB';
$sample->Shipper->CountryName = 'United Kingdom';
$sample->Shipper->Contact->PersonName = 'Mr peter';
$sample->Shipper->Contact->PhoneNumber = '11234-325423';

//$sample->EProcShip = 'N';  
$sample->LabelImageFormat = 'PDF';  

// Call DHL XML API
$start = microtime(true);
//echo $sample->toXML();
$client = new WebserviceClient('staging');
$xml = $client->call($sample);
echo "<pre>";print_r($xml);exit;

При этом я получаю ошибки, как показано ниже:

SV012a Системе не удалось проверить номер вашего счета доставки. Пожалуйста, исправьте этот номер и повторите отправку. Для получения помощи позвоните в службу поддержки клиентов DHL.

SV014a Системе не удалось проверить номер вашего платежного счета. Пожалуйста, исправьте этот номер и повторите отправку. Для получения помощи позвоните в службу поддержки клиентов DHL.

Но я просто тестирую процесс запроса процесса «Проверка доставки» с одного URL-адреса тестовой среды. URL-адрес: https://xmlpi-validation.dhl.com/serviceval/jsps/main/Main_menu.jsp

Шаги:

1) Нажмите «Подтверждение отправки».

2) Нажмите «Службы XML».

3) Нажмите «Request_Global_EU».

4) Нажмите «Отправить».

Выполняя этот процесс, я получаю сообщение об ошибке, например: «Системе не удалось проверить номер вашего счета доставки. Пожалуйста, исправьте этот номер и отправьте заявку повторно. Для получения помощи позвоните в службу поддержки клиентов DHL в вашей тестовой среде.

Поэтому я не могу проверить запрос и ответ для «Проверки отгрузки».

Любое предложение или руководство будут оценены. Спасибо.


person Virb    schedule 22.03.2019    source источник


Ответы (1)


Похоже, что либо у вас нет действительного номера ShippingAccount, либо вы используете демонстрационную учетную запись ShippingAccount, с помощью которой вы не можете изменить большинство параметров запроса на доставку самостоятельно. И если вы это сделаете, вы получите ответ, которым поделились.

person irfan mehmood    schedule 10.10.2019
comment
У меня была такая же проблема, поэтому я упомянул выше. у вас нет необходимых полномочий, даже если вы думаете, что они есть. DHL предоставляет вам учетные данные для постановки и работы в реальном времени, похоже, у вас нет действительных учетных данных. Вам необходимо связаться с представителем DHL - person irfan mehmood; 13.10.2019