Goods.ru: Partner API PHP Library
https://packagist.org/packages/mzubkov/goods-api-php-library, (*1)
Инициализация, (*2)
Для работы необходим конфигурационный .ini файл., (*3)
Инициализация заказа на основе данных, полученных магазином от Goods.ru с помощью POST order/new:, (*4)
$goodsMarket = new GoodsMarket($token); $json = file_get_contents("php://input"); //получение данных о новом заказе от Goods.ru $goodsOrder = $goodsMarket->newOrder($json);
newOrder($json) - возвращает объект класса GoodsOrder, (*5)
$json - данные запроса, полученного от Goods.ru, (*6)
Инициализация заказа по номеру:, (*7)
$goodsOrder = new GoodsOrder($token, $merchantId, $shipmentId, $orderCode);
$token - токен, (*8)
$merchantId - идентификатор продавца, (*9)
$shipmentId - номер заказа, (*10)
$orderCode - номер заказа продавца (необязательный аргумент), (*11)
Подтверждение заказа, (*12)
Перевод указанных лотов в статус "Подтверждено"., (*13)
$itemsConfirm = [106449, 70992, 106449, 47940]; $resultConfirm = $goodsOrder->orderConfirm($itemsConfirm);
Возвращает массив вида:, (*14)
["success" => 1, "result" => "OK"]
$itemsConfirm - массив с офферами для подтверждения в любом порядке (offerId). Не переданные в массиве лоты будут отменены (отправлен order/reject), (*15)
Комплектация заказа, (*16)
Перевод указанных лотов в статус "Скомплектовано"., (*17)
$goodsOrder->setOrderCode("abc123"); //установка номера заказа (если не был задан на этапе инициализации) $itemsPacking = [array(106449, 47940), array(106449)]; $resultPacking = $goodsOrder->orderPacking($itemsPacking);
Возвращает массив вида:, (*18)
["success" => 1, "result" => "OK"]
$itemsPacking - массив массивов с офферами для комплектации (распределения по грузовым местам) в любом порядке (offerId). Не переданные в массиве лоты будут отменены (отправлен order/reject), (*19)
Получение статуса заказа, (*20)
$result = goodsOrder->getOrderStatus();
Возвращает массив вида:, (*21)
["success" => 1, "result" => $orderStatus]
где $orderStatus - статус заказа (NEW, CONFIRMED, PACKED, CANCELED, Заказ в обработке), (*22)
Получение информации по заказу, (*23)
$result = goodsOrder->getOrderInfo();
Возвращает массив вида:, (*24)
["success" => 1, "result" => $orderInfo]
где $orderInfo - массив с подробной информацией по заказу, (*25)
Получение этикетки, (*26)
$label = $goodsOrder->getLabel();
Отдает этикетки по всем лотам в формате HTML. В случае, если заказ не был ранее скомплектован, возвращается шаблон этикетки без штрих-кода, (*27)
Возвращает массив вида:, (*28)
["success" => 1, "result" => "label_in_html_format"]
Дополнительные методы, (*29)
$goodsOrder->setOrderCode($orderCode); //Установка номера заказа
$orderCode = $goodsOrder->getOrderCode(); //Получение номера заказа
$shipmentId = $goodsOrder->getShipmentId(); //Получение номера отправления