wildtuna/iml-sdk

此包已被弃用且不再维护。未建议替代包。

用于操作 IML delivery API (api.iml.ru) 的 SDK

0.6.8 2023-12-04 15:55 UTC

This package is auto-updated.

Last update: 2024-02-09 11:01:35 UTC


README

IML 公司已关闭。项目已存档。

68747470733a2f2f6c6170617967726f75702e72752f696d672f6c6170617967726f75702e737667 68747470733a2f2f6c6170617967726f75702e72752f696d6c6c6f676f2e706e67




Latest Stable Version Total Downloads License Telegram Chat

用于与 IML 软件集成 IML 的 SDK。

查看所有项目或向作者赠送咖啡可以 在此

内容

变更日志

  • 0.6.8 - 添加了依赖 guzzle ^7.0 和 psr/log ^2.0|^3.0
  • 0.6.7 - 与 Guzzle 7.4 兼容;
  • 0.6.6 - 与 Guzzle 7.3 兼容;
  • 0.6.5 - 与 Guzzle 7.2 兼容;
  • 0.6.4 - 与 Guzzle 7.1 兼容;
  • 0.6.3 - 与 Guzzle 7 兼容;
  • 0.6.2 - 更新了 Guzzle 依赖;
  • 0.6.1 - 优化了日志记录;
  • 0.6.0 - 添加了对 API 请求和响应的日志记录;
  • 0.5.0 - 实现了 https://api.iml.ru 的功能;
  • 0.4.0 - 实现了 https://list.iml.ru 的功能,添加了 说明
  • 0.3.0 - 实现了部分 https://list.iml.ru 的功能;
  • 0.2.0 - 创建了用于处理订单和更改账户信息的实体;
  • 0.1.0 - SDK 骨架;

安装


可以使用 Composer 软件包管理器进行安装

composer require wildtuna/iml-sdk

术语和定义

  • API_IML - https://api.iml.ru 的 API 集成;
  • LIST_IML - https://list.iml.ru 的 IML 客户服务;
  • УЗ - 账户;
  • ИМ - 在线商店;
  • ПВЗ - 订单提取点;
  • БД - 数据库(数据库管理系统);
  • ОФД - 财务数据运营商;
  • ФФД - 财务文件格式;
  • EAN-13 - 条码格式。

配置认证


API 客户端允许使用多个 IML 账户,并在它们之间切换。
添加账户时,最后添加的账户会自动选中。

初始化时添加账户

<?php
$imlClient = new \WildTuna\ImlSdk\Client();
$imlClient->setAuthParams('main', 'api_login', 'api_password'); // Заносим данные IML и присваиваем им ключ main
$imlClient->setAuthParams('another', 'api_login', 'api_password');

切换账户

<?php
$imlClient->switchLogin('main');
$imlClient->switchLogin('another');

调试


用于日志记录请求和响应的是 PSR-3 日志器标准。下面是使用 Monolog 进行日志记录的示例。

<?php
    use Monolog\Logger;
    use Monolog\Handler\StreamHandler;
    
    $log = new Logger('name');
    $log->pushHandler(new StreamHandler('log.txt', Logger::INFO));
    
    $imlClient = new \WildTuna\ImlSdk\Client();
    $imlClient->setAuthParams('main', 'api_login', 'api_password');
    $imlClient->setLogger($log);
    $result = $imlClient->getPvzList();

请求和响应将记录在 log.txt 文件中。

API 与 IML 集成


IML 公司的主要 API 功能(订单和标签处理)。

创建订单


在 IML 中创建新订单。有关 \WildTuna\ImlSdk\Entity\Order() 对象属性的详细描述,请参阅 此处
有关字段填写顺序的描述,请参阅 此处

输入参数
\WildTuna\ImlSdk\Entity\Order 对象

输出参数
关联数据数组

调用示例

<?php
$imlClient = new \WildTuna\ImlSdk\Client();
$imlClient->setAuthParams('main', 'api_login', 'api_password');

try {
    $order = new \WildTuna\ImlSdk\Entity\Order();
    $order->testMod(true);
    $order->setNumber(9999111);
    $order->setJob('24КО');
    $order->setDeliveryDate('2019-05-15');
    $order->setPlaces(1);
    $order->setWeight(1.5);
    // $order->setBarcode(123456789);
    $order->setPhone('89992223344');
    $order->setEmail('test@test.ru');
    $order->setFio('Иванов Петр');
    $order->setZipFrom(115551);
    $order->setZipTo(115551);
    $order->setAddress('Красная пл. д. 1 кв. 1');
    $order->setTimeFrom('10:00');
    $order->setTimeTo('19:00');
    $order->setAmount(1000);
    $order->setValuatedAmount(1000);
    $order->setComment('Текст комментария');
    
    $item = new \WildTuna\ImlSdk\Entity\Item();
    $item->setArticul(12345);
    $item->setName('Тестовый товар');
    $item->setParams('красная коробка');
    $item->setWeight(1.5);
    $item->setAmount(1000);
    $item->setValuatedAmount(1000);
    $item->setVatRate(20);
    $item->setUnit('шт.');
    
    $order->setItem($item);
    
    $result = $imlClient->createOrder($order);
    
    /*
     Array
     (
         [Result] => OK
         [Order] => Array
             (
                 [Job] => 24КО
                 [CustomerOrder] => 9999111
                 [DeliveryDate] => 15.05.2019 0:00:00
                 [Volume] => 1
                 [Weight] => 1.5
                 [BarCode] => 7500019030317
                 [DeliveryPoint] =>
                 [Phone] => 89992223344
                 [Email] => test@test.ru
                 [Contact] => Иванов Петр
                 [IndexTo] => 115551
                 [IndexFrom] => 115551
                 [RegionCodeTo] => МОСКВА
                 [RegionCodeFrom] => МОСКВА
                 [Address] => Красная пл. д. 1 кв. 1
                 [TimeTo] => 19:00:00
                 [TimeFrom] => 10:00:00
                 [ValuatedAmount] => 1000
                 [Amount] => 1000
                 [State] => 999
                 [OrderStatus] => 0
                 [Comment] => Текст комментария
                 [GoodItems] => Array
                     (
                         [0] => Array
                             (
                                 [productNo] => 12345
                                 [productName] => Тестовый товар
                                 [productVariant] => красная коробка
                                 [productNote] => красная коробка
                                 [productBarCode] =>
                                 [couponCode] =>
                                 [discount] => 0
                                 [weightLine] =>
                                 [amountLine] => 1000
                                 [statisticalValueLine] => 1000
                                 [deliveryService] => 1
                                 [itemQuantity] => 1
                                 [itemType] => 0
                                 [itemNote] =>
                                 [allowed] => True
                                 [VATRate] => 1
                                 [VATAmount] =>
                                 [Length] => 0
                                 [Height] => 0
                                 [Width] => 0
                                 [GoodsClass] =>
                                 [PaymentItemUnit] => шт.
                                 [VendorName] =>
                                 [VendorINN] =>
                                 [VendorPhone] =>
                                 [PaymentItemSign] => 1
                                 [ExciseAmount] =>
                                 [ItemCountryOrigin] =>
                                 [CustomsDeclaration] =>
                             )
     
                     )
     
                 [ForLocation] => МОСКВА
                 [Draft] =>
                 [DeliveryAmount] =>
                 [Commission] =>
                 [PostIdentifier] => // Номер РПО Почты России
                 [PaymentType] =>
                 [FullDeliveryAmount] =>
             )
     
     )
     */
}

catch (\WildTuna\ImlSdk\Exception\ImlException $e) {
    // Обработка ошибки вызова API IML
    // $e->getMessage(); текст ошибки 
    // $e->getCode(); http код ответа сервиса IML
    // $e->getRawResponse(); // ответ сервиса IML как есть (http response body)
}

catch (\Exception $e) {
    // Обработка исключения
}

获取订单状态(状态)


返回订单状态的详细信息,包括附件列表。

输入参数
$order_id (string) - IМ订单号(不是 IML)

输出参数
关联数据数组

调用示例

<?php
$imlClient = new \WildTuna\ImlSdk\Client();
$imlClient->setAuthParams('main', 'api_login', 'api_password');

try {
    $result = $imlClient->getOrderStatus(8133829);
    /*
     Array
     (
         [Number] => 8133829
         [State] => 13
         [OrderStatus] => 1
         [StateDescription] => Завершено
         [OrderStatusDescription] => Доставлен
         [StatusDate] => 2019-05-10T08:03:09.79
         [ReturnPayment] =>
         [BarCode] => 6034813382910
         [ReturnStatus] => 0
         [CashReceiptAmount] => 4020
         [LocationCode] =>
         [TransferredToDate] =>
         [Details] => Array
             (
                 [0] => Array
                     (
                         [change] => 0001-01-01T00:00:00
                         [productNo] => 72614619
                         [productName] => Сумка спортивная Wenger, серая/салатовая, 48х24x30 см
                         [service] =>
                         [isAllowed] =>
                         [amount] => 3720
                         [cashRecieptAmount] => 3720
                         [cancel] =>
                         [returnCode] =>
                         [productVariant] =>
                         [statisticalValueLine] => 3720
                         [externalBarcode] => 0000000442824
                         [couponCode] =>
                         [productType] => 0
                         [productTypeId] =>
                         [status] =>
                         [side1] =>
                         [side2] =>
                         [side3] =>
                         [weight] =>
                         [vatRate] =>
                         [vatAmount] =>
                         [discount] => 0
                         [consignorPhone] =>
                         [note] =>
                         [quantity] => 1
                     )
         [DeliveryDate] => 2019-05-09T00:00:00
         [PostIdentifier] => // Номер РПО Почты России
         [PaymentType] => 0
     )
     */
}

catch (\WildTuna\ImlSdk\Exception\ImlException $e) {
    // Обработка ошибки вызова API IML
    // $e->getMessage(); текст ошибки 
    // $e->getCode(); http код ответа сервиса IML
    // $e->getRawResponse(); // ответ сервиса IML как есть (http response body)
}

catch (\Exception $e) {
    // Обработка исключения
}

订单列表


返回指定日期范围内的订单列表。

输入参数
$from (string) - 日期范围从(日期可接受任何格式)
$to (string) - 日期范围至(日期可接受任何格式)

输出参数
关联数据数组

调用示例

<?php
$imlClient = new \WildTuna\ImlSdk\Client();
$imlClient->setAuthParams('main', 'api_login', 'api_password');

try {
    $result = $imlClient->getOrdersList('2019-05-01', '2019-05-01');
    /*
     Array
     (
         [0] => Array
             (
                 [Job] => 24КО
                 [CustomerOrder] => 4199130
                 [DeliveryDate] => 01.05.2019 0:00:00
                 [Volume] => 1
                 [Weight] => 0.7
                 [BarCode] => 6034419913013
                 [DeliveryPoint] =>
                 [Phone] => 89995556677
                 [Email] =>
                 [Contact] => Иванов Иван
                 [IndexTo] =>
                 [IndexFrom] =>
                 [RegionCodeTo] => МОСКВА
                 [RegionCodeFrom] => МОСКВА
                 [Address] => 115142, Москва г, Коломенская наб, дом 1, квартира 1
                 [TimeTo] => 18:00:00
                 [TimeFrom] => 10:00:00
                 [ValuatedAmount] => 2838
                 [Amount] => 2838
                 [State] => 13
                 [OrderStatus] => 1
                 [Comment] =>
                 [GoodItems] => Array
                     (
                         [0] => Array
                             (
                                 [productNo] => 702-500 АКУЛА
                                 [productName] => Термос (сититерм-вакуумный) Арктика (0,5 литра),акула
                                 [productVariant] =>
                                 [productNote] =>
                                 [productBarCode] => 2000044959065
                                 [couponCode] =>
                                 [discount] => 0
                                 [weightLine] =>
                                 [amountLine] => 1269
                                 [statisticalValueLine] => 1269
                                 [deliveryService] => 0
                                 [itemQuantity] =>
                                 [itemType] => 0
                                 [itemNote] =>
                                 [allowed] =>
                                 [VATRate] =>
                                 [VATAmount] =>
                                 [Length] =>
                                 [Height] =>
                                 [Width] =>
                                 [GoodsClass] =>
                                 [PaymentItemUnit] =>
                                 [VendorName] =>
                                 [VendorINN] =>
                                 [VendorPhone] =>
                                 [PaymentItemSign] =>
                                 [ExciseAmount] =>
                                 [ItemCountryOrigin] =>
                                 [CustomsDeclaration] =>
                             )
                     )
    
            [ForLocation] =>
            [Draft] =>
            [DeliveryAmount] => 255.6
            [Commission] => 86.85
            [PostIdentifier] => // Номер РПО Почты России
            [PaymentType] => 1
            [FullDeliveryAmount] => 255.6
        )
     )
     */
}

catch (\WildTuna\ImlSdk\Exception\ImlException $e) {
    // Обработка ошибки вызова API IML
    // $e->getMessage(); текст ошибки 
    // $e->getCode(); http код ответа сервиса IML
    // $e->getRawResponse(); // ответ сервиса IML как есть (http response body)
}

catch (\Exception $e) {
    // Обработка исключения
}

打印标签


返回订单标签的 PDF 文件或 PNG 图片链接。

输入参数
$barcode (string) - 订单条码格式 EAN-13。可以接受多个条码,通过 '|' 分隔,无空格。

输出参数
PDF 文件或 PNG 图片链接

调用示例

<?php
$imlClient = new \WildTuna\ImlSdk\Client();
$imlClient->setAuthParams('main', 'api_login', 'api_password');

try {
    $result = $imlClient->printLabel('7500264678517'); // $result = https://api.iml.ru/PrintBar?Barcode=7500264678517
}

catch (\WildTuna\ImlSdk\Exception\ImlException $e) {
    // Обработка ошибки вызова API IML
    // $e->getMessage(); текст ошибки 
    // $e->getCode(); http код ответа сервиса IML
    // $e->getRawResponse(); // ответ сервиса IML как есть (http response body)
}

catch (\Exception $e) {
    // Обработка исключения
}

IML 帮助服务


IML 公司的 API 目录 功能(获取订单提取点、服务、城市等)。

资源目录


返回资源列表。

输入参数

输出参数
关联数据数组

调用示例

<?php
$imlClient = new \WildTuna\ImlSdk\Client();
$imlClient->setAuthParams('main', 'api_login', 'api_password');

try {
    $result = $imlClient->getResourceLimitList();
    /*
     Array
     (
         [0] => Array
             (
                 [JobNo] =>
                 [RegionCode] =>
                 [LocationCode] =>
                 [BeginLimit] =>
                 [EndLimit] =>
                 [CalendarCodeLocation] =>
                 [CalendarCodeOffice] =>
                 [InquiryLimitTime] => 00:00:00
                 [InquiryLimitShiftDay] => 0
                 [DeliveryTimeMIN] => 00:00:00
                 [DeliveryTimeMAX] => 00:00:00
                 [DeliveryPeriod] => 0
                 [AmountMIN] => 0
                 [AmountMAX] => 0
                 [ValuatedAmountMIN] => 0
                 [ValuatedAmountMAX] => 0
                 [WeightMIN] => 0
                 [WeightMAX] => 0
                 [PackagesMin] => 0
                 [PackagesMAX] => 0
                 [SidesAmountMIN] => 0
                 [SidesAmountMAX] => 100
                 [Blocked] =>
                 [Side1Min] => 0
                 [Side1Max] => 0
                 [Side2Min] => 0
                 [Side2Max] => 0
                 [Side3Min] => 0
                 [Side3Max] => 0
             )
     */   
}

catch (\WildTuna\ImlSdk\Exception\ImlException $e) {
    // Обработка ошибки вызова API IML
    // $e->getMessage(); текст ошибки 
    // $e->getCode(); http код ответа сервиса IML
    // $e->getRawResponse(); // ответ сервиса IML как есть (http response body)
}

catch (\Exception $e) {
    // Обработка исключения
}

邮编目录


返回邮编列表。

输入参数

输出参数
关联数据数组

调用示例

<?php
$imlClient = new \WildTuna\ImlSdk\Client();
$imlClient->setAuthParams('main', 'api_login', 'api_password');

try {
    $result = $imlClient->getZipList();
    /*
     Array
     (
         [0] => Array
             (
                 [INDEX] => 101000
                 [CITY] => МОСКВА
                 [REGION] => МОСКВА
                 [AUTONOM] =>
                 [AREA] =>
                 [RATEZONE] => 0
                 [RegionIML] => МОСКВА
                 [AddZone] => ПАРКОВКА
                 [KLADR] => 7700000000000
                 [Name] => МОСКВА
                 [Type] => О
                 [Submission] => 127950
                 [PrevIndex] =>
                 [ActDate] => 2011-01-21T00:00:00
                 [LocationCode] =>
             )
     
         [1] => Array
             (
                 [INDEX] => 101300
                 [CITY] => МОСКВА
                 [REGION] => МОСКВА
                 [AUTONOM] =>
                 [AREA] =>
                 [RATEZONE] => 0
                 [RegionIML] => МОСКВА
                 [AddZone] => ПАРКОВКА
                 [KLADR] =>
                 [Name] => МОСКВА-300
                 [Type] => ТИ
                 [Submission] => 101000
                 [PrevIndex] =>
                 [ActDate] => 2012-02-21T00:00:00
                 [LocationCode] => МСК_ПС202
             )
     */   
}

catch (\WildTuna\ImlSdk\Exception\ImlException $e) {
    // Обработка ошибки вызова API IML
    // $e->getMessage(); текст ошибки 
    // $e->getCode(); http код ответа сервиса IML
    // $e->getRawResponse(); // ответ сервиса IML как есть (http response body)
}

catch (\Exception $e) {
    // Обработка исключения
}

关于邮编的详细信息


返回关于邮编的详细信息。

输入参数

  • $zip (int) - 邮编

输出参数
关联数据数组

调用示例

<?php
$imlClient = new \WildTuna\ImlSdk\Client();
$imlClient->setAuthParams('main', 'api_login', 'api_password');

try {
    $result = $imlClient->getZipInfo(115551);
    /*
     Array
     (
         [0] => Array
             (
                 [INDEX] => 115551
                 [CITY] => МОСКВА
                 [REGION] => МОСКВА
                 [AUTONOM] =>
                 [AREA] =>
                 [RATEZONE] => 0
                 [RegionIML] => МОСКВА
                 [AddZone] => 01V 000
                 [KLADR] => 7700000000000
                 [Name] => МОСКВА 551
                 [Type] => О
                 [Submission] => 109950
                 [PrevIndex] =>
                 [ActDate] => 2011-01-21T00:00:00
                 [LocationCode] =>
             )
     
     )
     */   
}

catch (\WildTuna\ImlSdk\Exception\ImlException $e) {
    // Обработка ошибки вызова API IML
    // $e->getMessage(); текст ошибки 
    // $e->getCode(); http код ответа сервиса IML
    // $e->getRawResponse(); // ответ сервиса IML как есть (http response body)
}

catch (\Exception $e) {
    // Обработка исключения
}

仓库指南


返回关于邮编的详细信息。

输入参数

  • $full (boolean) - 仓库扩展信息标志

输出参数
关联数据数组

调用示例

<?php
$imlClient = new \WildTuna\ImlSdk\Client();
$imlClient->setAuthParams('main', 'api_login', 'api_password');

try {
    $result = $imlClient->getWarehouseList();
    /*
     Array
     (
         [0] => Array
             (
                 [Code] => BEIJING
                 [Name] => Пекин
                 [RequestCode] =>
                 [RegionCode] => КИТАЙ
                 [Index] =>
                 [Address] =>
                 [Phone] =>
                 [EMail] =>
                 [WorkMode] =>
                 [Latitude] => 0
                 [Longitude] => 0
                 [HomePage] =>
                 [ClosingDate] =>
                 [OpeningDate] => 2020-12-31T21:00:00
                 [DaysFreeStorage] => 7
                 [SubAgent] => 0
                 [DeliveryTimeFrom] => 00:00:00
                 [DeliveryTimeTo] => 00:00:00
                 [Submission] =>
                 [ReceiptOrder] => 0
                 [TimeZone] => 0
             )
     */
}

catch (\WildTuna\ImlSdk\Exception\ImlException $e) {
    // Обработка ошибки вызова API IML
    // $e->getMessage(); текст ошибки 
    // $e->getCode(); http код ответа сервиса IML
    // $e->getRawResponse(); // ответ сервиса IML как есть (http response body)
}

catch (\Exception $e) {
    // Обработка исключения
}

可自提区域仓库指南


返回可自提(有自提点)的区域列表。

输入参数

输出参数
关联数据数组

调用示例

<?php
$imlClient = new \WildTuna\ImlSdk\Client();
$imlClient->setAuthParams('main', 'api_login', 'api_password');

try {
    $result = $imlClient->getSelfDeliveryRegions();
    /*
     Array
     (
         [0] => Array
             (
                 [Code] => АБАКАН
                 [Description] => Абакан
             )
     
         [1] => Array
             (
                 [Code] => АЛУШТА
                 [Description] => Алушта
             )
     */
}

catch (\WildTuna\ImlSdk\Exception\ImlException $e) {
    // Обработка ошибки вызова API IML
    // $e->getMessage(); текст ошибки 
    // $e->getCode(); http код ответа сервиса IML
    // $e->getRawResponse(); // ответ сервиса IML как есть (http response body)
}

catch (\Exception $e) {
    // Обработка исключения
}

邮递限制指南


返回通过俄罗斯邮政发送的订单的限制列表。

输入参数

输出参数
关联数据数组

调用示例

<?php
$imlClient = new \WildTuna\ImlSdk\Client();
$imlClient->setAuthParams('main', 'api_login', 'api_password');

try {
    $result = $imlClient->getPostDeliveryLimits();
    /*
     Array
     (
         [0] => Array
             (
                 "INDEX": "sample string 1",
                 "PRBEGDATE": "2019-05-11T01:34:39.0230285+03:00",
                 "PRENDDATE": "2019-05-11T01:34:39.0230285+03:00",
                 "DELIVTYPE": 1,
                 "DELIVINDEX": "sample string 3",
                 "BASECOEFF": 1.0,
                 "TRANSFCNT": 1.0
             )
     */
}

catch (\WildTuna\ImlSdk\Exception\ImlException $e) {
    // Обработка ошибки вызова API IML
    // $e->getMessage(); текст ошибки 
    // $e->getCode(); http код ответа сервиса IML
    // $e->getRawResponse(); // ответ сервиса IML как есть (http response body)
}

catch (\Exception $e) {
    // Обработка исключения
}

区域指南 IML


返回 IML 区域列表。

输入参数

输出参数
关联数据数组

调用示例

<?php
$imlClient = new \WildTuna\ImlSdk\Client();
$imlClient->setAuthParams('main', 'api_login', 'api_password');

try {
    $result = $imlClient->getRegionsList();
    /*
     Array
     (
         [0] => Array
             (
                 [Code] => АБАЗА
                 [Description] => Абаза
             )
     
         [1] => Array
             (
                 [Code] => АБАКАН
                 [Description] => Абакан
             )
     */
}

catch (\WildTuna\ImlSdk\Exception\ImlException $e) {
    // Обработка ошибки вызова API IML
    // $e->getMessage(); текст ошибки 
    // $e->getCode(); http код ответа сервиса IML
    // $e->getRawResponse(); // ответ сервиса IML как есть (http response body)
}

catch (\Exception $e) {
    // Обработка исключения
}

自提点(PVZ)指南


返回订单领取点的列表。

输入参数

输出参数
关联数据数组

调用示例

<?php
$imlClient = new \WildTuna\ImlSdk\Client();
$imlClient->setAuthParams('main', 'api_login', 'api_password');

try {
    $result = $imlClient->getPvzList();
    /*
     Array
     (
         [0] => Array
             (
                 [ID] => 1000002
                 [CalendarWorkCode] => 000476
                 [Code] => АБАКАН_ПС3
                 [Name] => Абакан ПВЗ 3
                 [RequestCode] => 3
                 [RegionCode] => АБАКАН
                 [Index] => 655016
                 [Address] => ул. Кати Перекрещенко, д. 10,  магазин «Фадейка»
                 [Phone] => 8-495-988-49-05
                 [EMail] => call@iml.ru
                 [WorkMode] => Пн-Пт 10:00-19:00 (без п-ва), Сб-Вс 10:00-18:00 (без п-ва)
                 [FittingRoom] => 0
                 [PaymentCard] => 1
                 [PaymentPossible] => 1
                 [ReceiptOrder] => 0
                 [Latitude] => 53.740823
                 [Longitude] => 91.434581
                 [HomePage] => https://iml.ru/p/1000002
                 [ClosingDate] =>
                 [OpeningDate] => 2016-11-30T21:00:00
                 [CouponReceipt] => 0
                 [DaysFreeStorage] => 7
                 [SubAgent] => 0
                 [DeliveryTimeFrom] => 10:00:00
                 [DeliveryTimeTo] => 19:00:00
                 [Carrier] =>
                 [ReplicationPath] =>
                 [Submission] => МОСКВА
                 [Special_Code] => 3
                 [HowToGet] => Проезд: автобус № 3, 5а, 7, 10, 12, 14, 17, троллейбус № 1, 1А, 3А. Остановка Дворец Молодежи: Пройти в сторону рынка Северный 250 метров. Остановка "Рынок "Северный": Пройти в сторону Дворца молодежи 150 метров. ПВЗ в магазине Фадейка.
                 [FormPostCode] =>
                 [FormRegion] => Хакасия Респ.
                 [FormCity] => Абакан г.
                 [FormStreet] => Кати Перекрещенко ул.
                 [FormHouse] => 10
                 [FormBuilding] =>
                 [FormOffice] =>
                 [FormKLADRCode] => 19000001000007200
                 [FormFIASCode] =>
                 [FormalizedArea] =>
                 [FormalizedLocality] =>
                 [Scale] => 0
                 [TimeZone] => 7
                 [Type] => 1
                 [ReplacementLocation] =>
             )
     */
}

catch (\WildTuna\ImlSdk\Exception\ImlException $e) {
    // Обработка ошибки вызова API IML
    // $e->getMessage(); текст ошибки 
    // $e->getCode(); http код ответа сервиса IML
    // $e->getRawResponse(); // ответ сервиса IML как есть (http response body)
}

catch (\Exception $e) {
    // Обработка исключения
}

指定区域中的PVZ列表


返回指定区域(参见区域指南)中的订单领取点列表。

输入参数

输出参数
关联数据数组

调用示例

<?php
$imlClient = new \WildTuna\ImlSdk\Client();
$imlClient->setAuthParams('main', 'api_login', 'api_password');

try {
    $result = $imlClient->getPvzInRegion('МОСКВА');
    /*
     Array
     (
         [0] => Array
             (
                 [ID] => 1001639
                 [CalendarWorkCode] => 001282
                 [Code] => МСК_ПС292
                 [Name] => Пушкинская ПС1
                 [RequestCode] => 1
                 [RegionCode] => МОСКВА
                 [Index] => 125009
                 [Address] => ул. Тверская, д. 12, стр. 2
                 [Phone] => 8-495-988-49-05
                 [EMail] => call@iml.ru
                 [WorkMode] => Пн-Вс 11:00-21:00 (без п-ва)
                 [FittingRoom] => 0
                 [PaymentCard] => 0
                 [PaymentPossible] => 1
                 [ReceiptOrder] => 7
                 [Latitude] => 55.763711
                 [Longitude] => 37.607511
                 [HomePage] => https://iml.ru/p/1000474
                 [ClosingDate] =>
                 [OpeningDate] => 2014-12-31T21:00:00
                 [CouponReceipt] => 0
                 [DaysFreeStorage] => 7
                 [SubAgent] => 0
                 [DeliveryTimeFrom] => 11:00:00
                 [DeliveryTimeTo] => 20:00:00
                 [Carrier] =>
                 [ReplicationPath] =>
                 [Submission] => МОСКВА
                 [Special_Code] => 1
                 [HowToGet] => м. Пушкинская. Выход № 8, двигаться прямо по Тверской. Вход с ул. Тверская, 3й этаж, пом. № 308
                 [FormPostCode] =>
                 [FormRegion] => Москва г.
                 [FormCity] =>
                 [FormStreet] => Тверская ул.
                 [FormHouse] => 12
                 [FormBuilding] => 2
                 [FormOffice] =>
                 [FormKLADRCode] => 77000000000287700
                 [FormFIASCode] =>
                 [FormalizedArea] =>
                 [FormalizedLocality] =>
                 [Scale] => 0
                 [TimeZone] => 3
                 [Type] => 1
                 [ReplacementLocation] =>
             )
     */
}

catch (\WildTuna\ImlSdk\Exception\ImlException $e) {
    // Обработка ошибки вызова API IML
    // $e->getMessage(); текст ошибки 
    // $e->getCode(); http код ответа сервиса IML
    // $e->getRawResponse(); // ответ сервиса IML как есть (http response body)
}

catch (\Exception $e) {
    // Обработка исключения
}

邮编列表


返回邮编列表。

输入参数

  • $kladr (string) - 邮编代码

输出参数
关联数据数组

调用示例

<?php
$imlClient = new \WildTuna\ImlSdk\Client();
$imlClient->setAuthParams('main', 'api_login', 'api_password');

try {
    $result = $imlClient->getPvzByKladr('77000000000287700');
    /*
     Array
     (
         [0] => Array
             (
                 [ID] => 1001639
                 [CalendarWorkCode] => 001282
                 [Code] => МСК_ПС292
                 [Name] => Пушкинская ПС1
                 [RequestCode] => 1
                 [RegionCode] => МОСКВА
                 [Index] => 125009
                 [Address] => ул. Тверская, д. 12, стр. 2
                 [Phone] => 8-495-988-49-05
                 [EMail] => call@iml.ru
                 [WorkMode] => Пн-Вс 11:00-21:00 (без п-ва)
                 [FittingRoom] => 0
                 [PaymentCard] => 0
                 [PaymentPossible] => 1
                 [ReceiptOrder] => 7
                 [Latitude] => 55.763711
                 [Longitude] => 37.607511
                 [HomePage] => https://iml.ru/p/1000474
                 [ClosingDate] =>
                 [OpeningDate] => 2014-12-31T21:00:00
                 [CouponReceipt] => 0
                 [DaysFreeStorage] => 7
                 [SubAgent] => 0
                 [DeliveryTimeFrom] => 11:00:00
                 [DeliveryTimeTo] => 20:00:00
                 [Carrier] =>
                 [ReplicationPath] =>
                 [Submission] => МОСКВА
                 [Special_Code] => 1
                 [HowToGet] => м. Пушкинская. Выход № 8, двигаться прямо по Тверской. Вход с ул. Тверская, 3й этаж, пом. № 308
                 [FormPostCode] =>
                 [FormRegion] => Москва г.
                 [FormCity] =>
                 [FormStreet] => Тверская ул.
                 [FormHouse] => 12
                 [FormBuilding] => 2
                 [FormOffice] =>
                 [FormKLADRCode] => 77000000000287700
                 [FormFIASCode] =>
                 [FormalizedArea] =>
                 [FormalizedLocality] =>
                 [Scale] => 0
                 [TimeZone] => 3
                 [Type] => 1
                 [ReplacementLocation] =>
             )
     */
}

catch (\WildTuna\ImlSdk\Exception\ImlException $e) {
    // Обработка ошибки вызова API IML
    // $e->getMessage(); текст ошибки 
    // $e->getCode(); http код ответа сервиса IML
    // $e->getRawResponse(); // ответ сервиса IML как есть (http response body)
}

catch (\Exception $e) {
    // Обработка исключения
}

所有指南一次性


一次性返回所有指南。指南的顺序可以在这里查看这里
请注意,在描述中指南的键是字符串,实际上数字,但顺序是一致的。

输入参数

输出参数
关联数据数组

调用示例

<?php
$imlClient = new \WildTuna\ImlSdk\Client();
$imlClient->setAuthParams('main', 'api_login', 'api_password');

try {
    $result = $imlClient->allReferenceBooks();
    /*
     Array
     (
         [0] => Array
             (
                 [0] => Array
                     (
                         [Code] => 0
                         [Name] => Не принят
                         [StatusType] => 1
                         [StatusTypeDescription] => Доставка
                         [Description] => Заказ ожидается на складе консолидации
                     )
     
                 [1] => Array
                     (
                         [Code] => 1
                         [Name] => На Складе
                         [StatusType] => 1
                         [StatusTypeDescription] => Доставка
                         [Description] => Заказ на складе консолидации
                     )
         [1] => Array
                 (
                     [0] => Array
                         (
                             [Code] => АБАЗА
                             [Description] => Абаза
                         )
         
                     [1] => Array
                         (
                             [Code] => АБАКАН
                             [Description] => Абакан
                         )
         
                     [2] => Array
                         (
                             [Code] => АБИНСК
                             [Description] => АБИНСК
                         )
     */
}

catch (\WildTuna\ImlSdk\Exception\ImlException $e) {
    // Обработка ошибки вызова API IML
    // $e->getMessage(); текст ошибки 
    // $e->getCode(); http код ответа сервиса IML
    // $e->getRawResponse(); // ответ сервиса IML как есть (http response body)
}

catch (\Exception $e) {
    // Обработка исключения
}

服务指南


返回服务列表。

输入参数

输出参数
关联数据数组

调用示例

<?php
$imlClient = new \WildTuna\ImlSdk\Client();
$imlClient->setAuthParams('main', 'api_login', 'api_password');

try {
    $result = $imlClient->getServicesList();
    /*
     Array
     (
         [0] => Array
             (
                 [Code] => 24
                 [Description] => Доставка предоплаченого заказа
                 [Type] => 0
                 [CommissionType] => 0
                 [ReceiptFromCustomer] =>
                 [AmountMAX] => 0
                 [AmountMIN] => 0
                 [ValuatedAmountMIN] => 0
                 [ValuatedAmountMAX] => 300000
                 [WeightMIN] => 0
                 [WeightMAX] => 25
                 [VolumeMIN] => 0
                 [VolumeMAX] => 0
                 [Scope] => 0
             )
     
         [1] => Array
             (
                 [Code] => 24КО
                 [Description] => Доставка с кассовым обслуживанием
                 [Type] => 0
                 [CommissionType] => 2
                 [ReceiptFromCustomer] =>
                 [AmountMAX] => 300000
                 [AmountMIN] => 0.01
                 [ValuatedAmountMIN] => 0
                 [ValuatedAmountMAX] => 300000
                 [WeightMIN] => 0
                 [WeightMAX] => 27
                 [VolumeMIN] => 0
                 [VolumeMAX] => 0
                 [Scope] => 0
             )
     */
}

catch (\WildTuna\ImlSdk\Exception\ImlException $e) {
    // Обработка ошибки вызова API IML
    // $e->getMessage(); текст ошибки 
    // $e->getCode(); http код ответа сервиса IML
    // $e->getRawResponse(); // ответ сервиса IML как есть (http response body)
}

catch (\Exception $e) {
    // Обработка исключения
}

状态指南


返回服务列表。

输入参数

输出参数
关联数据数组

调用示例

<?php
$imlClient = new \WildTuna\ImlSdk\Client();
$imlClient->setAuthParams('main', 'api_login', 'api_password');

try {
    $result = $imlClient->getStatusesList();
    /*
     Array
     (
         [0] => Array
             (
                 [Code] => 0
                 [Name] => Не принят
                 [StatusType] => 1
                 [StatusTypeDescription] => Доставка
                 [Description] => Заказ ожидается на складе консолидации
             )
     
         [1] => Array
             (
                 [Code] => 0
                 [Name] => -
                 [StatusType] => 2
                 [StatusTypeDescription] => Заказ
                 [Description] => Отсутствует статус заказа
             )
     */
}

catch (\WildTuna\ImlSdk\Exception\ImlException $e) {
    // Обработка ошибки вызова API IML
    // $e->getMessage(); текст ошибки 
    // $e->getCode(); http код ответа сервиса IML
    // $e->getRawResponse(); // ответ сервиса IML как есть (http response body)
}

catch (\Exception $e) {
    // Обработка исключения
}

附加区域配送指南


返回附加区域配送列表。

输入参数

输出参数
关联数据数组

调用示例

<?php
$imlClient = new \WildTuna\ImlSdk\Client();
$imlClient->setAuthParams('main', 'api_login', 'api_password');

try {
    $result = $imlClient->getAdditionalDeliveryZones();
    /*
     Array
     (
         [0] => Array
             (
                 [Index] => 630011
                 [City] => НОВОСИБИРСК
                 [Region] => НОВОСИБИРСКАЯ ОБЛАСТЬ
                 [Autonom] =>
                 [Area] =>
                 [RegionIML] => НОВОСИБИРСК
                 [RateZoneMoscow] => F
                 [RateZoneSpb] => F
                 [AddZone] => 01V 000
                 [KLADR] => 5400000100000
             )
     
         [1] => Array
             (
                 [Index] => 450963
                 [City] => УФА
                 [Region] => БАШКОРТОСТАН РЕСПУБЛИКА
                 [Autonom] =>
                 [Area] =>
                 [RegionIML] => УФА
                 [RateZoneMoscow] => D
                 [RateZoneSpb] => E
                 [AddZone] => 01V 000
                 [KLADR] =>
             )
     */
}

catch (\WildTuna\ImlSdk\Exception\ImlException $e) {
    // Обработка ошибки вызова API IML
    // $e->getMessage(); текст ошибки 
    // $e->getCode(); http код ответа сервиса IML
    // $e->getRawResponse(); // ответ сервиса IML как есть (http response body)
}

catch (\Exception $e) {
    // Обработка исключения
}

评估价值货币指南


返回货币列表。

输入参数

输出参数
关联数据数组

调用示例

<?php
$imlClient = new \WildTuna\ImlSdk\Client();
$imlClient->setAuthParams('main', 'api_login', 'api_password');

try {
    $result = $imlClient->getValuationCurrencies();
    /*
     Array
     (
         [0] => Array
             (
                 [Type] => Код валюты
                 [Option] => 156
                 [PublicNameUnified] => Китайский юань
                 [NameUnified] => Yuan Renminbi
                 [CurrencyCode] => CNY
             )
     
         [1] => Array
             (
                 [Type] => Код валюты
                 [Option] => 643
                 [PublicNameUnified] => Российский рубль
     
                 [NameUnified] => Russian Rouble
                 [CurrencyCode] => RUB
             )
    */
}

catch (\WildTuna\ImlSdk\Exception\ImlException $e) {
    // Обработка ошибки вызова API IML
    // $e->getMessage(); текст ошибки 
    // $e->getCode(); http код ответа сервиса IML
    // $e->getRawResponse(); // ответ сервиса IML как есть (http response body)
}

catch (\Exception $e) {
    // Обработка исключения
}

IML 工作日历


返回 IML 工作日历。

输入参数

输出参数
关联数据数组

调用示例

<?php
$imlClient = new \WildTuna\ImlSdk\Client();
$imlClient->setAuthParams('main', 'api_login', 'api_password');

try {
    $result = $imlClient->getWorkCalendarIml();
    /*
     Array
     (
         [0] => Array
             (
                 [Code] => 000001
                 [RecurringSystem] => 2
                 [Date] =>
                 [DayOfWeek] => 1
                 [Description] =>
                 [Nonworking] => 0
                 [TimeFrom] => 9:00 AM
                 [TimeTo] => 6:00 PM
                 [RecurringSystemDescription] =>
             )
     
         [1] => Array
             (
                 [Code] => 000001
                 [RecurringSystem] => 2
                 [Date] =>
                 [DayOfWeek] => 2
                 [Description] =>
                 [Nonworking] => 0
                 [TimeFrom] => 9:00 AM
                 [TimeTo] => 6:00 PM
                 [RecurringSystemDescription] =>
             )
    */
}

catch (\WildTuna\ImlSdk\Exception\ImlException $e) {
    // Обработка ошибки вызова API IML
    // $e->getMessage(); текст ошибки 
    // $e->getCode(); http код ответа сервиса IML
    // $e->getRawResponse(); // ответ сервиса IML как есть (http response body)
}

catch (\Exception $e) {
    // Обработка исключения
}

分区域和城市配送指南


返回分区域和城市配送列表。

输入参数

输出参数
关联数据数组

调用示例

<?php
$imlClient = new \WildTuna\ImlSdk\Client();
$imlClient->setAuthParams('main', 'api_login', 'api_password');

try {
    $result = $imlClient->getRegionsAndCities();
    /*
     Array
     (
         [0] => Array
             (
                 [City] => 1 МАЯ
                 [Region] => НИЖЕГОРОДСКАЯ ОБЛАСТЬ
                 [Area] => БАЛАХНИНСКИЙ РАЙОН
                 [RegionIML] => НИЖНИЙ НОВГОРОД
                 [RateZoneMoscow] => B
                 [RateZoneSpb] => C
             )
     
         [1] => Array
             (
                 [City] => 11
                 [Region] => НИЖЕГОРОДСКАЯ ОБЛАСТЬ
                 [Area] =>
                 [RegionIML] => АРЗАМАС
                 [RateZoneMoscow] => B
                 [RateZoneSpb] => C
             )
    */
}

catch (\WildTuna\ImlSdk\Exception\ImlException $e) {
    // Обработка ошибки вызова API IML
    // $e->getMessage(); текст ошибки 
    // $e->getCode(); http код ответа сервиса IML
    // $e->getRawResponse(); // ответ сервиса IML как есть (http response body)
}

catch (\Exception $e) {
    // Обработка исключения
}

分区域和城市配送指南


返回分区域和城市配送列表。

输入参数

输出参数
关联数据数组

调用示例

<?php
$imlClient = new \WildTuna\ImlSdk\Client();
$imlClient->setAuthParams('main', 'api_login', 'api_password');

try {
    $result = $imlClient->getPostTariffZones();
    /*
     Array
     (
         [0] => Array
             (
                 [INDEX]: 1,
                 [RATEZONE]: "sample string 2"
             )
     
         [1] => Array
             (
                 [INDEX]: 1,
                 [RATEZONE]: "sample string 2"
             )
    */
}

catch (\WildTuna\ImlSdk\Exception\ImlException $e) {
    // Обработка ошибки вызова API IML
    // $e->getMessage(); текст ошибки 
    // $e->getCode(); http код ответа сервиса IML
    // $e->getRawResponse(); // ответ сервиса IML как есть (http response body)
}

catch (\Exception $e) {
    // Обработка исключения
}

分区域和城市配送指南


返回分区域和城市配送列表。

输入参数

输出参数
关联数据数组

调用示例

<?php
$imlClient = new \WildTuna\ImlSdk\Client();
$imlClient->setAuthParams('main', 'api_login', 'api_password');

try {
    $result = $imlClient->getUnitsList();
    /*
     Array
     (
         [0] => Array
             (
                 [Type] => Единица Измерения
                 [Option] => 2
                 [PublicNameUnified] => Палета
                 [NameUnified] => Paleta
             )
     
         [1] => Array
             (
                 [Type] => Единица Измерения
                 [Option] => 6
                 [PublicNameUnified] => Метр
                 [NameUnified] => Meter
             )
    */
}

catch (\WildTuna\ImlSdk\Exception\ImlException $e) {
    // Обработка ошибки вызова API IML
    // $e->getMessage(); текст ошибки 
    // $e->getCode(); http код ответа сервиса IML
    // $e->getRawResponse(); // ответ сервиса IML как есть (http response body)
}

catch (\Exception $e) {
    // Обработка исключения
}

分区域和城市配送指南


返回分区域和城市配送列表。

输入参数

输出参数
关联数据数组

调用示例

<?php
$imlClient = new \WildTuna\ImlSdk\Client();
$imlClient->setAuthParams('main', 'api_login', 'api_password');

try {
    $result = $imlClient->getRouteSegments();
}

catch (\WildTuna\ImlSdk\Exception\ImlException $e) {
    // Обработка ошибки вызова API IML
    // $e->getMessage(); текст ошибки 
    // $e->getCode(); http код ответа сервиса IML
    // $e->getRawResponse(); // ответ сервиса IML как есть (http response body)
}

catch (\Exception $e) {
    // Обработка исключения
}

获取线路段信息指南


返回分区域和城市配送列表。

输入参数
$segment_code (string) - 线路段代码

输出参数
关联数据数组

调用示例

<?php
$imlClient = new \WildTuna\ImlSdk\Client();
$imlClient->setAuthParams('main', 'api_login', 'api_password');

try {
    $result = $imlClient->getRouteSegmentByCode('segment_code');
}

catch (\WildTuna\ImlSdk\Exception\ImlException $e) {
    // Обработка ошибки вызова API IML
    // $e->getMessage(); текст ошибки 
    // $e->getCode(); http код ответа сервиса IML
    // $e->getRawResponse(); // ответ сервиса IML как есть (http response body)
}

catch (\Exception $e) {
    // Обработка исключения
}

已封锁区域IML列表


按服务分类的已封锁区域IML列表。

输入参数

输出参数
关联数据数组

调用示例

<?php
$imlClient = new \WildTuna\ImlSdk\Client();
$imlClient->setAuthParams('main', 'api_login', 'api_password');

try {
    $result = $imlClient->getBlockedRegionsList();
    /*
     Array
     (
         [0] => Array
             (
                 [RegionCode] =>
                 [JobNo] =>
                 [Open] => 1753-01-01T00:00:00
                 [End] => 9999-12-31T23:59:59.9999999
             )
     
         [1] => Array
             (
                 [RegionCode] =>
                 [JobNo] => 24КО
                 [Open] => 1753-01-01T00:00:00
                 [End] => 9999-12-31T23:59:59.9999999
             )
     
         [2] => Array
             (
                 [RegionCode] => АНАПА
                 [JobNo] => 24НАЛ
                 [Open] => 1753-01-01T00:00:00
                 [End] => 9999-12-31T23:59:59.9999999
             )
     */
}

catch (\WildTuna\ImlSdk\Exception\ImlException $e) {
    // Обработка ошибки вызова API IML
    // $e->getMessage(); текст ошибки 
    // $e->getCode(); http код ответа сервиса IML
    // $e->getRawResponse(); // ответ сервиса IML как есть (http response body)
}

catch (\Exception $e) {
    // Обработка исключения
}

分区域和城市配送指南


列出分区域和城市配送区域,并指明天数。

输入参数

输出参数
关联数据数组

调用示例

<?php
$imlClient = new \WildTuna\ImlSdk\Client();
$imlClient->setAuthParams('main', 'api_login', 'api_password');

try {
    $result = $imlClient->getDeliveryZones();
    /*
     Array
     (
         [0] => Array
             (
                 [FromRegion] => 101000
                 [ToRegion] => 671433
                 [ZoneCode] => ПОЧТА
                 [DayLimit] => 16
                 [NeedVolumetric] => 2
             )
     
         [1] => Array
             (
                 [FromRegion] => 101000
                 [ToRegion] => 671434
                 [ZoneCode] => ПОЧТА
                 [DayLimit] => 16
                 [NeedVolumetric] => 2
             )
     */
}

catch (\WildTuna\ImlSdk\Exception\ImlException $e) {
    // Обработка ошибки вызова API IML
    // $e->getMessage(); текст ошибки 
    // $e->getCode(); http код ответа сервиса IML
    // $e->getRawResponse(); // ответ сервиса IML как есть (http response body)
}

catch (\Exception $e) {
    // Обработка исключения
}