Tempoline API

API

xml api

API

Описание АПИ

Доступ, описание метода, перечень команд                                                                         

На сервисе действует ограничение доступа по IP адресам, необходим отдельный запрос для внесения адресов в фильтр.

Адрес рабочего сервиса: https://api.tempoline.ru/production
Адрес сервиса для тестирования: https://api.tempoline.ru/test

Сервис содержит основной метод Execute - выполнить команду записи номенклатуры, приемки или отгрузки, выдача отчетов и прочее. Метод выполняет заданную команду. Команда представляет собой XML файл, который передается через POST запрос на вход сервиса.

<Command id="Имя команды" Login="Логин" Password="Пароль">
... содержимое команды
</Command>

Перечень команд

Имя команды

Описание

PutItems

Создает карточки номенклатуры в системе 3PL провайдера. Предварительное заполнение номенклатуры обязательно перед выгрузкой заданий на прием или отгрузку.

PutContractors

Создает карточки контрагентов (пример: поставщики, грузоотправители, грузополучатели, перевозчики и т.д.)

PurchaseOrder

Создает задание на приемку (предварительное уведомление о поставке товара на склад 3PL) в системе 3PL провайдера.

PurchaseOrderReport

Возвращает отчет по приемкам

SalesOrder

Создает задание на формирование и отгрузку заказов в системе 3PL.

SalesReport

Возвращает отчет по выполнению заказов

StockCorrectionOrder

Создает задание на коррекцию стока

StockCorrectionReport

Отчет по заданиям коррекции стока

StockReport

Возвращает отчет по срезу остатков

ItemsReport

Возвращает отчет по загруженной номенклатуре

ShipmentReport

Возвращает отчет по отгрузкам со склада

ReturnsReport

Возвращает отчет по приемке возвратов на склад

InnerMovementReport

Перемещение между складами 3PL

API

Команда PutItems (запись номенклатуры)

Метод осуществляет запись номенклатуры в систему 3PL.                                                             

Если запись с данным ID уже существует, она обновляется, иначе - создается новая карточка.

Если продукция имеет только один вариант упаковки (или нет необходимости хранить продукцию в различных вариантах упаковки), то передавать <Packings> не требуется.

В поле <Name> следует указывать наименование, которое уникально и однозначно характеризует позицию номенклатуры.

Визуально оператор склада по этому наименованию должен однозначно определить какая позиция у него в руках.

Пример некорректного наименования: <Name>Туфли</Name>
Пример корректного наименования: <Name>03894507|Замшевые туфли Albert|42|синий</Name>

В поле <Fullname> следует передавать наименование, которое понятно получателю, так как именно оно будет печататься во всех печатных формах (бланк заказа, ТОРГ-12 и т.д.).

Пример запроса

<Command id="PutItems" Login="test" Password="test">
      <Items>
            <Item>
                  <Id>700</Id>
                  <Article>DF-2122</Article>
                  <Name>Рубашка Cacharel DF-2212</Name>
                  <Fullname>Рубашка DF-2212</Fullname>
                  <ParentID/>
                  <BasePackingID/>
                  <ItemType/>
                  <Image>https://some-url-to-image.com/image.jpg</Image>
                  <ImagePreview>https://some-url-to-image.com/image_preview.jpg</ImagePreview>
                  <Packings>
                        <Packing>
                              <Id>EA</Id>
                              <ParentID/>
                              <Name>штука</Name>
                              <Quantity>1</Quantity>
                              <Height>0.5</Height>
                              <Width>1</Width>
                              <Length>2</Length>
                              <Volume>1</Volume>
                        </Packing>
                  </Packings>
                  <Barcodes>
                        <Barcode>
                              <Code>456465456475</Code>
                              <PackingID>EA</PackingID>
                        </Barcode>
                  </Barcodes>
                  <AccountingAttributes>
                        <AccountingAttribute>
                             <Code>chestnyznak</Code>
                             <Title>Честный знак</Title>
                             <Wildcard>44?????</Wildcard>
                       </AccountingAttribute>
                  </AccountingAttributes>
            </Item>
      </Items>
</Command>

Пример ответа (успешно создана номенклатура, код в системе 3PL - 30212)

<Reply>
    <IsError>false</IsError>
    <Comment/>
    <Result>
        <Items>
            <Item>
                <Id>700</Id>
                <Success>true</Success>
                <Comment/>
                <Code>30212</Code>
            </Item>
        </Items>
    </Result>
</Reply>

Структура содержимого запроса

Тег

Тип значения

Описание

Command

Корневой тег

Атрибуты: Id (имя команды), Login, Password

    Items

 

Список товаров

        Item

 

Элемент товара

           ID

Строка

Уникальный идентификатор позиции в системе Партнера

           Article

Строка (25)

Артикул товара

           Name

Строка (100)

Краткое наименование товара.
Должно быть уникальным и однозначно характеризовать позицию номенклатуры

           Fullname

Строка (1024)

Полное наименование товара, как оно должно выводиться на печать

           InternationalDescription

Строка (60)

Международное описание товара на английском языке

           IsService

Булево

Для услуг true

           BasePackingID

Строка

Идентификатор базовой упаковки.
Если упаковка только одна, параметр игнорируется

           Description

Строка (1024)

Описание товара.
Может содержать знаки переноса строки

           VendorID

 

Идентификатор поставщика в системе партнера

           Height

Число 15,3

Высота (м)

           Width

Число 15,3

Ширина (м)

           Length

Число 15,3

Глубина (м)

           Volume      

Число 15,3

Объем (м^3).
Если не задан, рассчитывается из размеров

           VAT

Число

Ставка НДС по умолчанию

           TnvedCode

Строка(1 024)

Код ТН ВЭД.
Заполняется для международных отправлений и товаров с честным знаком.
Минимальная длина 4 символа

           MaskUniqueNumber

Строка

Маска для уникального номера.
Знак вопроса - любой символ, любой иной символ - обязательный.

Например, если ваши серийные номера всегда имеют префикс 44 и длину 7 символов:
4400001
4400002

4400003
Тогда маска будет:
44?????

 

Система будет требовать от оператора именно это значение

           Properties

 

Коллекция дополнительных свойств товара

              Property

 

 

              ID

Строка

ID свойства.
Доступные свойства согласовываются заранее

              Name

Строка

Наименование свойства

              Value

Строка

Значение свойства

           Packings

 

Список упаковок номенклатуры (единиц измерения номенклатуры).
Параметр необязательный, если у продукции один вариант упаковки (или требуется вести учет только в одном варианте).

              Packing

 

 

                 ID

Строка

Идентификатор упаковки

                 ParentID

Строка

Идентификатор родительской упаковки.
Для базовой единицы измерения можно не указывать

                 Name

Строка (20)

Наименование

                 Quantity

Число 15,3

Коэффициент (количество родительских упаковок)

                 Height

Число 15,3

Высота (м)

                 Width

Число 15,3

Ширина (м)

                 Length

Число 15,3

Глубина (м)

                 Volume            

Число 15,3

Объем (м^3).
Если не задан, рассчитывается из размеров

                 Weight             

Число 15,3

Вес брутто (кг)

           Barcodes

 

Штрихкоды

              Barcode

 

 

                 Code

Строка

Значение штрихкода

                 PackingID

Строка

Идентификатор упаковки

                 NotUsed

Булево

Отменяет привязку штрихкода к номенклатуре

           AccountingAttributes

 

Штрихкоды

               AccountingAttribute

 

 

                   Code

Строка

Внешний ключ кода.
Все внешние ключи согласовываются отдельно

                   Title

Строка

Описание

                   Wildcard

Строка

Маска для уникального номера.
Знак вопроса - любой символ, любой иной символ - обязательный.

Например, если ваши серийные номера всегда имеют префикс 44 и длину 7 символов:
4400001
4400002

4400003
Тогда маска будет:
44?????

 Структура ответа

Тег

Тип значения

Описание

Reply

Корневой тег

 

    IsError

Булево

Флаг общей ошибки обработки (когда невозможно интерпретировать XML в целом, ошибка формата и прочие глобальные ошибки).
Значения: «true»/«false».

Стоит учитывать, что вполне нормальная ситуация, когда этот флаг «false» (нет общей ошибки), но при этом есть ошибки при записи номенклатуры.

    Comment

Строка (1024)

Комментарий к общей ошибке

    Result

 

 

        Items

 

 

            Item

 

 

                ID

Строка

Идентификатор номенклатуры

                Success

Булево

Признак успешной записи.
Значения: «true»/«false»

                Comment

Строка (1024)

Комментарий

                Code

Строка

Код номенклатуры в базе 3PL

API

PurchaseOrder (запись документа приемки)

Метод осуществляет запись распоряжения на прием поставки.                                                    

Один документ поставки должен быть равен одному транспортному средству (допускается несколько приемок на одно транспортное средство, но не наоборот).

Пример запроса

<Command Id="PurchaseOrder" Login="test" Password="test">
            <Documents>
                  <Document>
                        <ID>1002</ID>
                        <Date>2014-05-07</Date>
                        <DateOfDelivery>2014-05-08</DateOfDelivery>
                        <Items>
                              <Item>
                                   <ID>700</ID>
                                   <Quantity>1</Quantity>
                                   <Price>90</Price>
                              </Item>
                        </Items>
                  </Document>
                  <Document>
                        <ID>1003</ID>
                        <Date>2014-05-07</Date>
                        <DateOfDelivery>2014-05-09</DateOfDelivery>
                        <Items>
                              <Item>
                                   <ID>700</ID>
                                   <Quantity>5</Quantity>
                                   <Price>100</Price>
                              </Item>
                        </Items>
                  </Document>
            </Documents>
</Command>

Пример ответа (успешно записано два документа)

<Reply>
    <IsError>false</IsError>
    <Comment/>
    <Result>
        <Documents>
            <Document>
                <ID>1002</ID>
                <Success>true</Success>
                <Comments/>
            </Document>
            <Document>
                <ID>1003</ID>
                <Success>true</Success>
                <Comments/>
            </Document>
        </Documents>
    </Result>
</Reply>

Структура содержимого запроса

Тег

Тип значения

Описание

Command

Корневой тег

Атрибуты: Id (имя команды), Login, Password

  Documents

 

 

    Document

 

 

      ID

Строка (28)

Уникальный номер документа в системе партнера

      Date

Дата

Дата документа в системе партнера

      DateOfDelivery

Дата

Ориентировочная дата прихода поставки

      VendorID

 

Поставщик.

Идентификатор ранее переданного контрагента

      FreighterID

 

Грузоотправитель.

Идентификатор ранее переданного контрагента

      Comment

Строка (1024)

Комментарий к документу

      OperativeComment

Строка

Комментарий для оператора

      Items

 

Строки с товарами

          Item

 

Строка с товаром

              ID

Строка

Идентификатор товара в системе партнера

              PackingID

Строка

Идентификатор упаковки.
По умолчанию - базовая

              Series

Строка

Срок годности для серии.
Например:

«20.07.2019» - для срока годности 20 июля 2019

              Quantity

Число (15, 3)

Количество упаковок

              Price

Число (15, 2)

Цена позиции с НДС

              SSCC

Строка (18)

Штрихкод паллеты

              SalesOrderID

Строка

Идентификатор заказа.

Если указан, то позиция считается поставляемой под заказ и может быть обработана кроссдокингом

              VAT Число (3,0)

Ставка НДС:
0 - НДС 0

20 - НДС 20

120 - НДС 20/120
18 - НДС 18
118 - НДС 18/118
10 - НДС 10
110 - НДС 110
-1 - Без НСД 

 

По умолчанию 18%, с 01.01.2019 – 20%

Структура ответа

Тег

Тип значения

Описание

Reply

 

 

   IsError

Булево

Признак глобальной ошибки вызова команды

   Comment

 Строка

 

   Result

 

 

      Documents

 

 

      Document

 

 

          ID

Строка (50)

Идентификатор документа в системе партнера

          Success

Булево

Признак успешной записи

          Comments

Строка (1024)

Комментарий

 

API

SalesOrder (запись документа отгрузки)

Метод осуществляет запись документов отгрузки в систему 3PL.                                                  

Правила заполнения адреса для доставки через курьерскую службу
Должны быть заполнены поля "Регион", "Город", "Улица" (в поле улицы можно включить номер дома и квартиры).

Пример запроса

<Command Id="SalesOrder" Login="test" Password="test">
      <Orders>
            <Order>
                  <Document>
                        <ID>100004</ID>
                        <Date>2014-10-28</Date>
                        <Comment/>
                        <TotalSum>250</TotalSum>
                        <SumOfDelivery>200</SumOfDelivery>
                        <VATDelivery>18</VATDelivery>
                        <SumVATOfDelivery>36</SumVATOfDelivery>
                        <PaymentType/>
                        <IsPayed>false</IsPayed>
                        <DeliveryInformation>
                              <FullAddress>г. Москва, ул. Чоботовская, д. 2, кв. 200</FullAddress>
                              <Postcode>119634</Postcode>
                              <State>Москва</State>
                              <City>Москва</City>
                              <Street>ул. Чоботовская, д.2, кв. 200</Street>
                              <Building/>
                              <Room/>
                              <Phone>79161112233</Phone>
                        </DeliveryInformation>
                        <ConsumerID>100001</ConsumerID>
                  </Document>
                  <Items>
                        <Item>
                              <ID>700</ID>
                              <OptionID/>
                              <Quantity>1</Quantity>
                              <Price>50</Price>
                              <VAT>18</VAT>
                              <VatSum>9</VatSum>
                              <SumVATPrice>9</SumVATPrice>
                              <TotalWithoutVat>41</TotalWithoutVat>
                              <TotalWithVat>50</TotalWithVat>
                              <CancelItem>false</CancelItem>
                              <CommCancelItem/>
                        </Item>
                  </Items>
            </Order>
      </Orders>
</Command>

Пример ответа (успешно записан документ, статус документа - "Поступил")

<Reply>
    <IsError>false</IsError>
    <Comment/>
    <Result>
        <Documents>
            <Document>
                <ID>100004</ID>
                <Status>Поступил</Status>
                <Success>true</Success>
                <Comments/>
            </Document>
        </Documents>
    </Result>
</Reply>

Структура содержимого запроса

Тег

Тип значения

Описание

Command

Корневой тег

Атрибуты: Id (имя команды), Login, Password

Orders

 

 

Order

 

 

     Document

Группа

Обвязка шапки документа

               ID

Строка (12)

Номер документа в системе партнера.

Должен быть уникальным.

Если в ID используется кириллица, то следует учитывать, что при транслитерации некоторые кириллические буквы заменяются двумя и более латинскими (например, Э, Ю, Щ, …). Длину номера необходимо рассчитывать с учетом транслитерации

               Date

Дата

Дата документа в системе партнера

               Comment

Строка (1024)

Комментарий к заказу.

Поле общего пользования, видно операторам КЦ, курьерам и получателям отправления

               OperativeComment

Строка

Дополнительная информация для операций с заказом.

Доступна только операторам фулфилмента

               Currency

Строка (3)

Валюта, международный код (EUR, RUB, USD).

По умолчанию поддерживается только RUB, остальные валюты по отдельному согласованию.

               TypeOrder

Строка (2)

Тип отгрузки.
Возможные значения:

- B2C
- B2B

По умолчанию B2C.

               TotalSum

Число (15, 3)

Общая сумма по документу.

Должна быть равна сумме всех строк TotalWithVat + сумма доставки SumOfDelivery.

 

Если поле не указано или равно 0, проверка не производится.

               DateOfDispatch

Дата

Желаемая дата отгрузки заказа

               SumOfDelivery

Число (15, 3)

Стоимость доставки

              VATDelivery

Число (10,0)

Ставка НДС.

Возможные значения:

-1 – Без НСД 
0 – НДС 0
18 – НДС 18
118 – НДС 18/118
10 – НДС 10
110 – НДС 10/110

             SumVATOfDelivery

Число (10, 2)

Сумма НСД за доставку

               DateOfDelivery

Дата

Желаемая дата  доставки.

Заполняется в зависимости от курьерской службы

               TimeOfDelivery_b

Число

В данных полях указывается интервал доставки, в часах с начала суток.

 

Например, интервал с 9:00 до 18:00:

TimeOfDelivery_b = 9

TimeOfDelivery_e = 18

 

В зависимости от используемой курьерской службы может носить рекомендательный характер.

 

В зависимости от переданных в параметре TimeOfDelivery значениях, будет выбран максимально близкий интервал доставки из доступных.

 

Выделенные жирным интервалы доступны только для Москвы (тег City должен содержать "Москва").

               TimeOfDelivery_e

Число

               IsPayed

Булево

Флаг оплаты заказа.

По умолчанию false.

Тrue - заказ предоплачен.

 

Если не передан параметр "PaymentType", тогда в случае:

False - способ оплаты "Наличными курьеру"

True - способ оплаты "Не оплачивается"

              Disposal

Строка

Утилизация.
1 – истина

Другое – ложь

              ProcessType

Число

Описывает действия с заказом.

Если не указан, заказ не обновляется и загружается в статусе из настроек по умолчанию.

 

Доступные значения:

0 - Отмена

1 - Прозвон заказа (без отгрузки)

2 - Прозвон и доставка + отгрузка

3 - Отгрузка (по умолчанию)

4 - Отгрузка после появления товара на складе (отложенная отгрузка или кроссдокинг).

 

Заказ обновляется только в статусах "Поступил", "Перезвон", "Подтвержден"

              CancelReasonID

Строка

Код причины отмены заказа.

Список причин согласовывается заранее.

Указывается если ProcessType = 0

              FreighterID

Контрагент

Указывается контрагент-перевозчик, который осуществляет сбор отправления со склада.

По умолчанию, если не указан, используется соответствующий способу доставки

              DeliveryContract

Строка

Договор доставки (например, для возможности доставки различными продуктами выбранной службы доставки)

              PrintOrderFormNum

Число

Количество копий бланка заказа клиента.

По умолчанию 1 шт.

              PrintPackingListService

Булево

Необходимость печати упаковочного листа (печать и вложение в содержимого каждого транспортного места)

              PrintInvService

Булево

Необходимо распечатать ТОРГ-12 к заказу

              PrintInvNum

Строка

Номер документа ТОРГ-12 (для печати)

              PrintInvDate

Дата

Дата документа ТОРГ-12 (для печати)

              PrintTaxInvService

Булево

Необходимо распечатать Счет-Фактуру к заказу

              PrintTaxInvNum

Строка

Номер счет-фактуры (для печати)

              PrintTaxInvDate

Дата

Дата счет-фактуры (для печати)

              Warehouse

Строка

Идентификатор склада, с которого производится отгрузка. Уточняется отдельно

              Properties

 

Коллекция свойств заказа (свойства, специфичные для партнера)

                 Property

 

 

                    ID

Строка

ID свойства.

Доступные свойства согласовываются заранее

                    Name

Строка

Наименование свойства

                    Value

Строка

Значение свойства

              Driver

Физическое лицо

Информация по водителю (для B2B отгрузок)

                  ID

Строка (30)

ID физического лица в базе партнера

                  Name

Строка

ФИО

                  Phone1

Строка

Мобильный телефон

                  Phone2

Строка

Рабочий телефон

                  DocType

Число

Тип документа, удостоверяющего личность:

1 - Паспорт

2 - Водительское удостоверение

                  DocSer

Строка

Серия документа

                  DocNum

Строка

Номер документа

                  DocDate

Дата

Дата выдачи документа

              Vehicle

ТС

Транспортное средство

                  ID

Строка

Идентификатор транспортного средства в системе Партнера

                  BrandModel

Строка

Марка и модель транспортного средства

                  StateNum

Строка

Государственный номер транспортного средства.

Пример: н033на197

                  StateNumTrailer

Строка

Государственный номер прицепа транспортного средства

              DeliveryInformation

 

Информация об адресе доставки и контактах принимающего лица.

Если тег отсутствует или пустой, информация о доставке не записывается.

Обязательно к заполнению только при первой выгрузке заказа

                           FullAddress

Строка (500)

Если нет возможности разбить адрес по отдельным полям, можно выгружать целиком в это поле.

                           Country

Строка

Код страны по ISO 3166-1.

Требуется только для международных отправлений.

Если подходящей страны не будет найдено, заказ не будет загружен

                           Postcode

Строка

Почтовый индекс

                           State

Строка

Область (регион).

Поле обязательное, если адрес не валидирован через DaData

                           Area

Строка

Район

                           City

Строка

Город.

Поле обязательное, если адрес не валидирован через DaData

                           City2

Строка

Населенный пункт.

Поле обязательное, если адрес не валидирован через DaData

                           Street

Строка

Улица.

Поле обязательное, если адрес не валидирован через DaData

                           Building

Строка

Дом

                           Building2

Строка

Строение / Корпус

                           Room

Строка

Квартира / офис

                           Email

Строка

Контактная почта получателя

                           Phone

Строка

Мобильный телефон получателя.

Только цифры, желаемый формат «79103191360» - код страны, номер.

Если вы используете доставку СПСР, желаемый формат «89103191360»

                           Phone2

Строка

Городской телефон получателя.
Только цифры, желаемый формат «74957830001» - код страны, код города, номер

                           PostStationID

Строка

Идентификатор постамата.

Обязательно к заполнению в случае доставки через Pickpoint.

              ConsumerID

Строка

Контрагент - получатель

    Items

 

Строки с товарами

        Item

 

Строка с товаром

            ID

Строка

Идентификатор товара в системе партнера

            Barcode

Строка

Если штрихкод указан, сверяется с данными в системе 3PL, и, если расходятся, тогда генерируется ошибка

            OptionID

 

Идентификатор характеристики

            Quantity

Число (15, 3)

Количество товара в базовых единицах

            Price

Число (15, 3)

Цена.

Цена включает НДС и должна указываться с учетом всех скидок

            PriceInsurance

Число (15, 3)

Если не указано, то страховая цена идет из Цены товара

 

 

 

            VAT

Число (15, 3)

Ставка НДС:
0 - НДС 0
18 - НДС 18
118 - НДС 18/118
10 - НДС 10
110 - НДС 110
-1 - Без НСД 

            VatSum

Число (15, 3)

Сумма НДС

            SumVATPrice

Число (10, 2)

Сумма НДС за единицу товара

            TotalWithVat

Число (15, 3)

Сумма с НДС

            CancelItem

Булево

Флаг отмены товара в заказе

            CommCancelItem

Строка

Описание отмены товара в заказе (идентификатор)

            SupplyType

Число(1)

Тип обеспечения товара:

0 - со стока (по умолчанию)

1 - кроссдокинг (ожидается поступление товара в одной из будущих приемок)

2 - со стока, необязательный (если товар отсутствует на свободных остатках, позиция с данным товаров помечается на отмену и не отгружается)

    Stickers

 

Указывается, если требуется стикерование отгружаемых товаров

        Sticker

 

Описание стикера

            ItemID

 

Ссылка на товар

            PackingID

 

Идентификатор упаковки (если используются упаковки)

            Price

Число (15, 3)

Цена

            PriceDisc

Число (15, 3)

Цена со скидкой

            Barcode

Строка

Штрихкод

            Template

Строка

Код шаблона.
Шаблоны согласовываются заранее

            Properties

 

Дополнительные свойства стикера

                 Property

 

 

                    ID

Строка

ID свойства

                    Name

Строка

Наименование свойства

                    Value

Строка

Значение свойства

additionalDocumentsToPrint

 

 

print_form

 

 

     name

Строка

Наименование печатной формы

     url

Строка

Ссылка на печатную форму

     copies_qty

Число(10,0)

Количество экземпляров для печати

    AdAttachments

 

 

         Attachment

 

 

             Name

Строка

Наименование дополнительного вложения

             Quantity

Число

Количество

             Note

Строка

Примечание

Структура ответа

Тег

Тип значения

Описание

Reply

 

 

    IsError

Булево

Признак глобальной ошибки вызова команды

    Comment

 Строка

 

    Result

 

 

         Documents

 

 

             Document

 

 

                    ID

Строка (50)

Идентификатор документа в системе партнера

                    Success

Булево

Признак успешной записи

                    Comments

Строка (1024)

Комментарий

 

API

Команда Shipments (отправления)

Метод возвращает данные по отгрузкам.

Метод :  /resources/shipments

Тип вызова: GET

Параметры запроса: ?fields=field1,…fieldN&param1=param1_value& … paramN_paramN_value&tables=table1,…tableN

Описание полей в ответе

Данные адреса доставки:

Табличные части (tables):

goods (товары):

delivery_packages (упаковки в заказе):

returns (возвраты):

API LK

API LK

Авторизация

Метод: POST

URI: /auth/login

Тело запроса: email=mail@email.ru&password=pass

 

 

 

 

API LK

Shipments

API LK

Receipts

API LK

Items