deadkash / dhl-api-express
与DHL Express网络服务进行API通信。
2.1.0
2020-09-15 10:17 UTC
Requires (Dev)
- phpstan/phpstan: ^0.12.2
- phpunit/phpunit: ^7.0.0
- squizlabs/php_codesniffer: ^3.4
README
描述
此库允许扩展开发者准备和解析DHL Express API通信的消息,并提供收集请求数据的功能。
要求
- PHP >= 7.1
- DHL Express客户账户能够访问生产端点(可选沙箱)
安装说明
composer require dhl/sdk-api-express
卸载
composer remove dhl/sdk-api-express
特性
DHL ExpressShipping 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);
运单
运输请求操作将允许您生成AWB号码和件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。