dhl/sdk-api-express

此包已被废弃,不再维护。未建议替代包。

与DHL Express Web服务进行API通信。

2.1.0 2020-09-15 10:17 UTC

This package is auto-updated.

Last update: 2022-01-20 11:42:41 UTC


README

描述

此库允许扩展开发者准备和解析DHL Express API通信的消息,并提供收集请求数据的功能。

需求

  • PHP >= 7.1
  • DHL Express客户账户能够访问生产端点(可选沙箱)

安装说明

composer require dhl/sdk-api-express

卸载

composer remove dhl/sdk-api-express

特性

DHL Express Shipping API SDK支持以下特性

  • 获取运费
  • 创建运单

运费

运费请求将返回DHL的产品能力(产品、服务和估计递送时间)和价格(如有适用)。

公共API

适用于消费的库组件包括

  • 服务
    • 服务工厂
    • 运费服务
    • 数据传输对象构建器
  • 数据传输对象
    • 运费请求
    • 运费响应

用法

$logger = new \Psr\Log\NullLogger();

$serviceFactory = new SoapServiceFactory();
$service = $serviceFactory->createRateService('api-user', 'api-pass', $logger);

$requestBuilder = new RateRequestBuilder();
$requestBuilder->setIsUnscheduledPickup($isUnscheduledPickup);
$requestBuilder->setShipperAccount($accountNumber);
$requestBuilder->setShipperAddress($countryCode, $postalCode, $city, $etc);
$requestBuilder->setRecipientAddress($countryCode, $postalCode, $city, $etc);
$requestBuilder->setWeightUOM($weightUOM);
$requestBuilder->setDimensionsUOM($dimensionsUOM);
$requestBuilder->setTermsOfTrade($termsOfTrade);
$requestBuilder->setContentType($contentType);
$requestBuilder->setReadyAtTimestamp($readyAtTimestamp);
$requestBuilder->addPackage($weight, $weightUom, $length, $width, $height, $dimensionsUom, $readyAtDate);
$requestBuilder->setInsurance($insuranceValue, $insuranceCurrency);

$request = $requestBuilder->build();
$response = $service->collectRates($request);

运单

ShipmentRequest操作将允许您生成航空货运单号和件ID,生成运单,将装运明细传输给DHL,并可选择预订快递员进行货物的提货。

公共API

适用于消费的库组件包括

  • 服务
    • 服务工厂
    • 装运服务
    • 数据传输对象构建器
  • 数据传输对象
    • 装运请求
    • 装运响应

用法

$logger = new \Psr\Log\NullLogger();

$serviceFactory = new SoapServiceFactory();
$service = $serviceFactory->createShipmentService('api-user', 'api-pass', $logger);

$requestBuilder = new ShipmentRequestBuilder();
$requestBuilder->setIsUnscheduledPickup($unscheduledPickup);
$requestBuilder->setTermsOfTrade($termsOfTrade);
$requestBuilder->setContentType($contentType);
$requestBuilder->setReadyAtTimestamp($readyAtTimestamp);
$requestBuilder->setNumberOfPieces($numberOfPieces);
$requestBuilder->setCurrency($currencyCode);
$requestBuilder->setDescription($description);
$requestBuilder->setServiceType($serviceType);
$requestBuilder->setPayerAccountNumber($accountNumber);
$requestBuilder->setInsurance($insuranceValue, $insuranceCurrency);
$requestBuilder->setShipper($countryCode, $postalCode, $city, $streetLines, $name, $company, $phone);
$requestBuilder->setRecipient($countryCode, $postalCode, $city, $streetLines, $name, $company, $phone);
$requestBuilder->setDryIce($unCode, $weight);
$requestBuilder->addPackage($sequenceNumber, $weight, $weightUOM, $length, $width, $height, $dimensionsUOM, $customerReferences);

$request = $requestBuilder->build();
$response = $service->createShipment($request);

支持

DHL Express Shipping API SDK是为了与Magento® 2模块DHL Express Rates at Checkout一起使用而创建的。其他使用将不会收到官方支持。

开发者

Christoph Aßmann | Netresearch GmbH & Co. KG | @mam08ixo

许可证

有关许可证详细信息,请参阅LICENSE.md。