sp-express/php-sdk

v0.0.4 2023-12-05 09:56 UTC

This package is not auto-updated.

Last update: 2024-09-19 23:14:34 UTC


README

Latest Version on Packagist Software License PHP-CS-Fixer Psalm Static analysis

SP Express SDK 使开发者能够轻松访问 sp.express API。

SP Express

跳转至

入门指南

  1. 注册 – 在开始之前,您需要从您的销售人员那里获取登录和API密钥。联系方式可在 您的面板 上找到
  2. 最低要求 – 运行SDK,您的系统需要安装PHP 7.1或更高版本,并已安装cURL扩展。
  3. 安装SDK – 使用 Composer 是安装PHP SP Express SDK的推荐方式
    composer require sp-express/php-sdk
    

快速示例

创建客户端

<?php
// Require the Composer autoloader:
require 'vendor/autoload.php';

use SpExpress\Sdk\Client\ApiClient;

// Instantiate an SP Express client: 
$client = new ApiClient('login', 'api_key');

创建快递预路由

<?php

use SpExpress\Sdk\Exceptions\ApiException;
use SpExpress\Sdk\Objects\Input\AddressObj;
use SpExpress\Sdk\Objects\Input\CustomsDutyObj;
use SpExpress\Sdk\Objects\Input\Options2Obj;
use SpExpress\Sdk\Objects\Input\OptionsPreRoutingObj;
use SpExpress\Sdk\Objects\Input\PackageObj;

try {
    $package = new PackageObj();
    $package->weight = 1;
    $package->size_d = 10;
    $package->size_l = 30;
    $package->size_w = 25;
    $package->value = 10;
    $package->value_currency = "PLN";
    $package->content = 'Books';
   
    $sender = new AddressObj();
    $sender->name = 'Anna Nowak';
    $sender->country = 'PL';
    $sender->email = 'anna.nowak@example.pl';
    $sender->city = 'Warszawa';
    $sender->address_line_1 = 'Krakowska 12/34';
    $sender->tel = '987654321';
    $sender->zip_code = '00-111';
   
    $receiver = new AddressObj();
    $receiver->company = 'ABC Corporation';
    $receiver->country = 'PL';
    $receiver->email = 'delivery@example.pl';
    $receiver->city = 'Kraków';
    $receiver->address_line_1 = 'Długa 5/55';
    $receiver->tel = '111222333';
    $receiver->zip_code = '12-345';
   
    $options = new OptionsPreRoutingObj();
    $options2 = new Options2Obj();
    $customsDuty = new CustomsDutyObj();


    $result = $client
        ->courierPreRouting()
        ->create($package, $sender, $receiver, $options, $options2, $customsDuty);

    $numberOfPackages = $result->getNumber(); // number of packages
    $packages = $result->getPackages(); // array with packages

    foreach ($packages as $package) {
        var_dump($package->getLabels()); // array with labels (one package can contain multiple labels)
        var_dump($package->getPackageId()); // package Id
    }
} catch (ApiException $exception) {
    // exception message contains general information
    var_dump($exception->getMessage());

    // for more detailed information
    var_dump($exception->getError()->getErrorCode());
    var_dump($exception->getError()->getDescription());
    var_dump($exception->getError()->getDetails());
}

取消快递预路由

$client
    ->courierPreRouting()
    ->cancel(['483231127136528']);

文档

完整文档可以在 这里找到

获取帮助

错误报告和功能请求可以在 Github问题跟踪器 上提交。对于您提出的每个问题,都可以自由地打开一个问题。

贡献

我们努力提供高质量且有用的SDK,并非常重视社区反馈和贡献。

许可证

sp-express/php-sdk 在MIT许可证下发布。有关详细信息,请参阅捆绑的LICENSE.md文件。