定制 dhl/sdk-api-express 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

dhl/sdk-api-express

最新稳定版本:2.1.0

Composer 安装命令:

composer require dhl/sdk-api-express

包简介

API communication to the DHL Express web services.

README 文档

README

Description

This library enables extension developers to prepare and parse messages for DHL Express API communication and provides functionality for collecting request data.

Requirements

  • PHP >= 7.1
  • DHL Express customer account able to access the production endpoints (optionally sandpit too)

Installation Instructions

composer require dhl/sdk-api-express

Uninstallation

composer remove dhl/sdk-api-express

Features

The DHL Express Shipping API SDK supports the following features:

  • Retrieve Shipping Rates
  • Create Shipping Label

Shipping Rates

The Rate Request will return DHL's product capabilities (products, services, and estimated delivery time) and prices (where applicable) for a certain set of input data.

Public API

The library's components suitable for consumption comprise of

  • services:
    • service factory
    • rate service
    • data transfer object builder
  • data transfer objects:
    • rate request
    • rate response

Usage

$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);

Shipping Label

The ShipmentRequest operation will allow you to generate an AWB number and piece IDs, generate a shipping label, transmit manifest shipment detail to DHL, and optionally book a courier for the pickup of a shipment.

Public API

The library's components suitable for consumption comprise of

  • services:
    • service factory
    • shipment service
    • data transfer object builder
  • data transfer objects:
    • shipment request
    • shipment response

Usage

$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);

Support

The DHL Express Shipping API SDK was created to be used in conjunction with the Magento® 2 module DHL Express Rates at Checkout. Any other usage will not receive official support.

Developer

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

License

See LICENSE.md for license details.

统计信息

  • 总下载量: 49.47k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 13
  • 点击次数: 1
  • 依赖项目数: 1
  • 推荐数: 0

GitHub 信息

  • Stars: 13
  • Watchers: 13
  • Forks: 18
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2018-09-18