Navbar

Документы

Общие сведения

Шаблоны документов

Шаблон - предзаполненный стандартными полями JSON-объект, который затем можно использовать для успешного создания документа. Средствами JSON API можно получать предзаполненные шаблоны документов. Они могут быть предзаполнены как на основе других документов, так и стандартными значениями без связей с другими документами. Для этого, во всех документах, по которым можно получить шаблон, существует специальный ресурс Шаблон документа, адрес которого формируется следующим образом:
https://online.moysklad.ru/api/remap/1.2/entity/<ключевое слово для документа>/new
В тело PUT запроса по данному ресурсу нужно передать метаданные документа, на основе которого будет создан шаблон нового документа, либо просто передать пустое тело запроса. Метаданные должны быть "обернуты" в объект, имя которого есть ключевое слово для документа-основания в JSON API. Для каждого из данных ресурсов есть примеры запросов и ответов.
На данный момент можно получить шаблоны следующих документы на основании других:

Документ Основание, на котором он может быть создан
Cчет покупателю (invoiceout) Заказ покупателя (customerorder)
Возврат покупателя (salesreturn) Отгрузка (demand),
Розничная продажа (retaildemand)
Возврат поставщику (purchasereturn) Приемка (supply)
Входящий платеж (paymentin) Заказ покупателя (salesreturn),
Возврат поставщику (purchasereturn),
Отгрузка (demand),
Счет покупателю (invoiceout),
Полученный отчет комиссионера (commissionreportin)
Заказ на производство (processingorder) Тех. карта (processingplan)
Заказ поставщику (purchaseorder) Внутренний заказ (internalorder)
Исходящий платеж (paymentout) Возврат покупателя (salesreturn),
Приемка (supply),
Счет поставщика (invoicein),
Заказ поставщику (purchaseorder),
Выданный отчет комиссионера (commissionreportout)
Оприходование (enter) Инвентаризация(inventory)
Отгрузка (demand) Заказ покупателя (customerorder)
Перемещение (move) Внутренний заказ (internalorder)
Приходный ордер (cashin) Заказ покупателя (salesreturn),
Возврат поставщику (purchasereturn),
Отгрузка (demand),
Счет покупателю (invoiceout),
Полученный отчет комиссионера (commissionreportin)
Расходный ордер (cashout) Возврат покупателя (salesreturn),
Приемка (supply),
Счет поставщика (invoicein),
Заказ поставщику (purchaseorder),
Выданный отчет комиссионера (commissionreportout)
Розничная продажа (retaildemand) Розничная смена, Заказ покупателя
Списание (loss) Возврат покупателя (salesreturn),
инвентаризация(inventory)
Счет поставщика (invoicein) Заказ поставщику (purchaseorder)
Тех. операция (processing) Заказ на производство (processingorder), Тех. карта (processingplan)

В результате PUT запроса по /entity/entityName/new НЕ будет создано нового документа.
Возвращаемый предзаполненный объект является лишь "болванкой" с некоторыми заполненными полями (поля заполняются по той же логике, что и в аналогичной ситуации в основном интерфейсе), облегчающей создание документа. Он не сохраняется в системе. Этот объект затем можно передать в теле запроса на создание соответствующего документа и тогда уже документ будет создан, и связан с документом-основанием.
Если послать на данный ресурс пустое тело запроса, то в итоговом шаблоне будут предзаполнены лишь стандартные поля в т.ч. указанные в настройках пользователя в учетной записи сервиса МойСклад.

В случае если инвентаризация содержит более 500 подходящих позиций, то шаблон списания (loss) и оприходования (entry) будет создан по первым 500 позициям.

С подробностями и примерами по каждому из документов можно ознакомиться в соответствующих разделах документации. Например, для шаблона отгрузки - смотреть в Шаблонах отгрузки

Контекстный поиск для документов

В JSON API можно осуществлять контекстный поиск среди списка сущностей определенного типа по их строковым полям. Для этого используется URI параметр фильтрации search.

Поиск среди документов на соответствие поисковой строке будет осуществлен по следующим полям: + по наименованию (name) + по описанию (description) + по входящему номеру (incomingNumber)

Удаление в корзину

Корзина позволяет избежать риска случайного удаления важных документов. Удаление в корзину доступно только при наличии у сотрудника соответствующих прав, а также настроек компании на использовании корзины.

Пример удаления Приемки в корзину

Параметры

Параметр Описание
id string (required) Example: 7944ef04-f831-11e5-7a69-971500188b19 id Приемки.

Response 200 (application/json) Успешное удаление Приемки.

Связи документов

Привязка документов к документам

Для того чтобы привязать к уже существующему документу другой документ нужно передать meta привязываемого документа в коллекцию связанных документов или в единственный документ этого типа. Такие поля присутствуют среди аттрибутов документов. В описании сущностей они описаны в секции Связи с другими документами. Для коллекций каждое поле называется как ключевое слово для типов привязываемых документов во множественном числе. Например поле invoicesOut у отгрузок отвечает за связи с счетами покупателю. Если вы хотите привязать к отгрузке счет, в это поле, в составе коллекции, нужно положить meta счета покупателя который вы хотите привязать, Можно привязывать более 1 документа.

Пример привязки 1

Привязка внутреннего заказа к перемещению.

Параметры

Параметр Описание
docname string (required) Example: move ключевое слово для документа со связями.
id string (required) Example: 7944ef04-f831-11e5-7a69-971500188b19 id документа.

Пример привязки 2

Второй пример запроса на привязку одного документа к другому.

Параметры

Параметр Описание
docname string (required) Example: move ключевое слово для документа со связями.
id string (required) Example: 7944ef04-f831-11e5-7a69-971500188b19 id документа.

Привязка платежей к документам

К некоторым документам в JSON API могут быть привязаны платежи. Платежи бывают 4-х типов: Входящий платеж, Приходный ордер, Исходящий платеж, Расходный ордер. Документы, к которым могут быть привязаны платежи содержат вложенную коллекцию payments среди атрибутов документа. Платежи в свою очередь содержат коллекцию operations - операции, к которым привязан данный платеж. Для того, чтобы привязать платеж к документу, нужно в запросах на создание/обновление платежа в составе коллекции operations указать meta документа. Документы в этой коллекции могут иметь разный тип, однако это не значит, что к любому документу можно привязать все 4 типа платежей. Валидные типы платежей определяются самим документом, к которому происходит привязка. К примеру к полученному отчету комиссионера можно привязать только входящий платеж или приходный ордер.
В результате привзяки платежа, в составе коллекции operations платежа появится новый объект, указывающий на документ, а в составе коллекции payments у документа, к которому привязывается платеж, появится новый элемент ссылающийся на данный платеж.

Пример привязки платежа 1

Привязка входящего платежа к полученному отчету комиссионера.

Параметры

Параметр Описание
docname2 string (required) Example: commissionreportin ключевое слово для документа, к которому можно привязать платеж.
id string (required) Example: 7944ef04-f831-11e5-7a69-971500188b19 id документа.

Пример привязки платежа 2

Привязка приходного ордера к заказу покупателя.

Параметры

Параметр Описание
docname2 string (required) Example: commissionreportin ключевое слово для документа, к которому можно привязать платеж.
id string (required) Example: 7944ef04-f831-11e5-7a69-971500188b19 id документа.

Пересчет расчетного остатка в инвентаризации

С помощью json api можно пересчитать расчетный остатки в позициях документа "Инвентаризация". В результате, значение поля calculatedQuantity у позиций инвентаризации изменится и документ будет пересохранен.

Пересчет расчетного остатка в инвентаризации

Параметры

Параметр Описание
id string (required) Example: 7944ef04-f831-11e5-7a69-971500188b19 id инвентаризации.

Пересчитать

Отправить запрос на пересчет расчетных остатков у позиций инвентаризации.

Response 201 (application/json) Успешный запрос. Результат - Пустое тело ответа.

Автозаполнение

Средствами JSON API можно рассчитать значение скидок, цен и ндс для позиций следующих документов:

Заполнение скидок не поддерживает следующие типы:

Заполнение цен не поддерживает Инвентаризация

Заполнение себестоимости поддерживается только для возвратов без основания следующих типов: - Возврат покупателя - Розничный возврат

Шаблон автозаполнения

Атрибуты сущности

Атрибуты сущности нужно передавать в зависимости от типа документа, для которого будет выполнено автозаполнение. В соответствие с типом, будут обрабатываться соответствующие поля.

Ниже приводятся поля, которые влияют на заполнение скидок, цен, ндс и себестоимости.

При этом, если помимо вышеперечисленных полей были добавлены другие, не влияющие на заполнение, то они будут присутствовать в ответе в том же порядке и с теми же значениями.

Примечания

Значения параметра action можно передавать через запятую.

Если в документе не используется поле agent, то для расчета цен evaluate_price и скидок evaluate_discount используется значение поля organization.

Позиции документа

Позиции в шаблоне - это список товаров/услуг/модификаций/серий/комплектов. Объект позиции содержит следующие поля:

Запрос автозаполения

Запрос заполения полей шаблона. Результат: Объект JSON, с заполненным шаблоном.

Параметры

Параметр Описание
action enum (optional) Example: evaluate_discount, evaluate_price, evaluate_discount Определяет какую информацию нужно заполнить: цены (evaluate_price), ндс (evaluate_vat), скидки (evaluate_discount) или себестоимость (evaluate_cost). Допустимые значения: evaluate_price, evaluate_discount, evaluate_vat, evaluate_cost.

Запрос автозаполения цен

Запрос автозаполения с параметром action со значением evaluate_price. Требуется заполнение поля agent (или organization, если поле agent отсутствует). Заполняет поле цены товара price (если явно не передано) ценой переданного в поле agent контрагента, а также поле discountedPrice, с учетом рассчитанной или переданной скидки discount (принимается за 0, если значение отсутствует) и НДС vat (не учитывается, если пустое, поле vatEnabled имеет значение false или vatIncluded имеет значение true). Если передано поле quantity, то будет рассчитано поле sum. При вычислениях используется переданный rate.

Запрос автозаполения скидок

Запрос автозаполения с параметром action со значением evaluate_discount. Требуется заполнение поля agent (или organization, если поле agent отсутствует). Заполняет поле скидки discount (если явно не передано) суммой применимых к данному товару активных скидок переданного в поле agent контрагента.

Запрос автозаполения НДС

Запрос автозаполения с параметром action со значением evaluate_vat. Требуется заполнение поля organization. Заполняет поле vatEnabled на основе того, является ли переданная в поле organization организация плательщиком НДС и поля vat у позиций значением из карточки товара, если организация - плательщик НДС.

Запрос автозаполения себестоимости

Запрос автозаполения с параметром action со значением evaluate_cost. Выполняется только для Возвратов Покупателя и Розничных Возвратов без основания. Требуется заполнение поля store. Заполняет поля cost у позиций значением себестоимости, рассчитанным по FIFO на момент moment. Если поле moment не указано, то себестоимость рассчитывается на текущую дату.

Внесение денег

Средствами JSON API можно создавать и обновлять сведения о Внесениях денег, запрашивать списки Внесений денег и сведения по отдельным Внесениям денег. Кодом сущности для Внесения денег в составе JSON API является ключевое слово retaildrawercashin. Больше о Внесениях денег и работе с ними в основном интерфейсе вы можете прочитать в нашей службе поддержки по этой ссылке.

Внесения денег

Атрибуты сущности

Название Тип Описание
accountId UUID ID учетной записи
Обязательное при ответе Только для чтения
agent Meta Метаданные контрагента
Обязательное при ответе Expand Необходимо при создании
applicable Boolean Отметка о проведении
Обязательное при ответе
attributes Array(Object) Коллекция метаданных доп. полей. Поля объекта
code String(255) Код Внесения денег
created DateTime Дата создания
Обязательное при ответе Только для чтения
deleted DateTime Момент последнего удаления Внесения денег
Только для чтения
description String(4096) Комментарий Внесения денег
externalCode String(255) Внешний код Внесения денег
Обязательное при ответе
files MetaArray Метаданные массива Файлов (Максимальное количество файлов - 100)
Обязательное при ответе Expand
group Meta Отдел сотрудника
Обязательное при ответе Expand
id UUID ID Внесения денег
Обязательное при ответе Только для чтения
meta Meta Метаданные Внесения денег
Обязательное при ответе
moment DateTime Дата Счета
Обязательное при ответе
name String(255) Наименование Внесения денег
Обязательное при ответе
organization Meta Метаданные юрлица
Обязательное при ответе Expand Необходимо при создании
owner Meta Владелец (Сотрудник)
Обязательное при ответе Expand
printed Boolean Напечатан ли документ
Обязательное при ответе Только для чтения
published Boolean Опубликован ли документ
Обязательное при ответе Только для чтения
rate Object Валюта. Подробнее тут
Обязательное при ответе
shared Boolean Общий доступ
Обязательное при ответе
state Meta Метаданные статуса Внесения денег
Expand
sum Int Сумма Внесения денег в копейках
Обязательное при ответе Только для чтения
syncId UUID ID синхронизации. После заполнения недоступен для изменения
updated DateTime Момент последнего обновления Внесения денег
Обязательное при ответе Только для чтения

Связи с другими документами

Название Описание
retailShift Ссылка на розничную смену, в рамках которой было выполнено Внесение денег в формате Метаданных Необходимое

Получить Внесения денег

Запрос на получение всех Внесений денег на данной учетной записи.

Параметры

Параметр Описание
limit number (optional) Default: 1000 Example: 1000 Максимальное количество сущностей для извлечения.Допустимые значения 1 - 1000.
offset number (optional) Default: 0 Example: 40 Отступ в выдаваемом списке сущностей.
search string (optional) Example: 0001 Фильтр документов по указанной поисковой строке.

Создать Внесение денег

Запрос на создание Внесения денег. Обязательные для создания поля:

Массовое создание и обновление Внесений денег

Массовое создание и обновление Внесений денег. В теле запроса нужно передать массив, содержащий JSON представления Внесений денег, которые вы хотите создать или обновить. Обновляемые Внесения денег должны содержать идентификатор в виде метаданных.

Удалить Внесение денег

Запрос на удаление Внесения денег с указанным id.

Параметры

Параметр Описание
id string (required) Example: 7944ef04-f831-11e5-7a69-971500188b19 id Внесения денег.

Response 200 (application/json) Успешный запрос.

Массовое удаление Внесений денег

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

Метаданные Внесений денег

Метаданные Внесений денег

Запрос на получение метаданных Внесений денег. Результат - объект JSON, включающий в себя:

Параметр Описание
meta Ссылка на метаданные Внесений денег
attributes Массив объектов доп. полей Внесений денег в формате Метаданных
states Массив статусов Внесений денег
createShared создавать новые Внесения денег с меткой "Общий"

Структура отдельного объекта, представляющего доп. поле подробно описана в разделе Работа с дополнительными полями.

Отдельное доп. поле

Параметры

Параметр Описание
id string (required) Example: 5290a290-0313-11e6-9464-e4de00000020 id Доп. поля.

Шаблон Внесения денег

Шаблон Внесения денег

Шаблон Внесения денег на основе

Запрос на получение предзаполненного Внесения денег на основе розничной смены. В результате запроса, будет создан предзаполненный шаблон Внесения денег на основе переданной розничной смены.
Внимание! Не забывайте, что поле retailShift должно быть написано с большой S.

Внесение денег

Получить Внесение денег

Изменить Внесение денег

Запрос на обновление Внесения денег.

Внутренний заказ

Средствами JSON API можно создавать и обновлять сведения о Внутренних заказах, запрашивать списки Внутренних заказов и сведения по отдельным Внутренним заказам. Позициями Внутренних заказов можно управлять как в составе отдельного заказа, так и с помощью специальных ресурсов для управления позициями. Кодом сущности для Внутреннего заказа в составе JSON API является ключевое слово internalorder.

Внутренние заказы

Атрибуты сущности

Название Тип Описание
accountId UUID ID учетной записи
Обязательное при ответе Только для чтения
applicable Boolean Отметка о проведении
Обязательное при ответе
attributes Array(Object) Коллекция метаданных доп. полей. Поля объекта
Только для чтения
code String(255) Код Внутреннего заказа
created DateTime Дата создания
Обязательное при ответе Только для чтения
deleted DateTime Момент последнего удаления Внутреннего заказа
Обязательное при ответе Только для чтения
deliveryPlannedMoment DateTime Планируемая дата приемки
description String(4096) Комментарий Внутреннего заказа
externalCode String(255) Внешний код Внутреннего заказа
Обязательное при ответе
files MetaArray Метаданные массива Файлов (Максимальное количество файлов - 100)
Обязательное при ответе Expand
group Meta Отдел сотрудника
Обязательное при ответе Expand
id UUID ID Внутреннего заказа
Обязательное при ответе Только для чтения
meta Meta Метаданные Внутреннего заказа
Обязательное при ответе Только для чтения
moment DateTime Дата смены
Обязательное при ответе Только для чтения
moves Array(Object) Коллекция метаданных на связанные заказы перемещения
Обязательное при ответе
name String(255) Наименование Внутреннего заказа
Обязательное при ответе Необходимо при создании
organization Meta Метаданные юрлица
Обязательное при ответе Expand Необходимо при создании
owner Meta Владелец (Сотрудник)
Обязательное при ответе Expand
positions MetaArray Метаданные позиций Внутреннего заказа
Обязательное при ответе Только для чтения Expand
printed Boolean Напечатан ли документ
Обязательное при ответе Только для чтения
project Meta Метаданные проекта
Expand
published Boolean Опубликован ли документ
Обязательное при ответе Только для чтения
purchaseOrders Array(Object) Коллекция метаданных на связанные заказы поставщику
Обязательное при ответе
rate Object Валюта. Подробнее тут
Обязательное при ответе
shared Boolean Общий доступ
Обязательное при ответе Только для чтения
state Meta Метаданные статуса Внутреннего заказа
Expand
store Meta Метаданные склада
Expand
sum Int Сумма Внутреннего заказа в копейках
Обязательное при ответе Только для чтения
syncId UUID ID синхронизации. После заполнения недоступен для изменения
Только для чтения
updated DateTime Момент последнего обновления Внутреннего заказа
Обязательное при ответе Только для чтения
vatEnabled Boolean Учитывается ли НДС
Обязательное при ответе
vatIncluded Boolean Включен ли НДС в цену
vatSum Float Сумма включая НДС
Обязательное при ответе Только для чтения

Позиции Внутреннего заказа

Позиции Внутреннего заказа - это список товаров/услуг/модификаций/серий. Объект позиции Внутреннего заказа содержит следующие поля:

Название Тип Описание
accountId UUID ID учетной записи
Обязательное при ответе Только для чтения
assortment Meta Метаданные товара/услуги/серии/модификации, которую представляет собой позиция
Обязательное при ответе Expand
id UUID ID позиции
Обязательное при ответе Только для чтения
pack Object Упаковка Товара. Подробнее тут
price Float Цена товара/услуги в копейках
Обязательное при ответе
quantity Int Количество товаров/услуг данного вида в позиции. Если позиция - товар, у которого включен учет по серийным номерам, то значение в этом поле всегда будет равно количеству серийных номеров для данной позиции в документе.
Обязательное при ответе
vat Int НДС, которым облагается текущая позиция
Обязательное при ответе
vatEnabled Boolean Включен ли НДС для позиции. С помощью этого флага для позиции можно выставлять НДС = 0 или НДС = "без НДС". (vat = 0, vatEnabled = false) -> vat = "без НДС", (vat = 0, vatEnabled = true) -> vat = 0%.
Обязательное при ответе

С позициями можно работать с помощью специальных ресурсов для управления позициями Внутреннего заказа, а также в составе отдельного Внутреннего заказа. При работе в составе отдельного Внутреннего заказа, вы можете отправлять запросы на создание отдельного Внутреннего заказа с включенным в тело запроса массивом позиций Внутреннего заказа. Если количество позиций превышает максимально допустимое, то для дальнейшего пополнения позиций нужно будет работать со специальным ресурсом "Позиции Внутреннего заказа". Также, при работе в составе отдельного Внутреннего заказа, можно отправлять запросы на обновление списка позиций с включенным в тело запроса массивом позиций Внутреннего заказа. При этом важно помнить, что коллекция позиций будет восприниматься как "все позиции Внутреннего заказа" и полностью заменит уже существующую коллекцию при обновлении объекта - лишние позиции будут удалены, новые добавлены, существующие - изменены.

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

Получить Внутренние заказы

Параметры

Параметр Описание
limit number (optional) Default: 1000 Example: 1000 Максимальное количество сущностей для извлечения.Допустимые значения 1 - 1000.
offset number (optional) Default: 0 Example: 40 Отступ в выдаваемом списке сущностей.
search string (optional) Example: 0001 Фильтр документов по указанной поисковой строке.

Создать Внутренний заказ

Запрос на создание нового Внутреннего заказа. Обязательные для создания поля:

Шаблон Внутреннего заказа

Шаблон Внутреннего заказа

Запрос на получение шаблона Внутреннего заказа.

Массовое создание и обновление Внутренних заказов

Массовое создание и обновление Внутренних заказов. В теле запроса нужно передать массив, содержащий JSON представления Внутренних заказов, которые вы хотите создать или обновить. Обновляемые Внутренние заказы должны содержать идентификатор в виде метаданных.

Удалить Внутренний заказ

Параметры

Параметр Описание
id string (required) Example: 7944ef04-f831-11e5-7a69-971500188b19 id Внутреннего заказа.

Response 200 (application/json) Успешное удаление Внутреннего заказа.

Массовое удаление Внутренних заказов

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

Метаданные Внутренних заказов

Метаданные Внутренних заказов

Запрос на получение метаданных Внутренних заказов. Результат - объект JSON, включающий в себя:

Параметр Описание
meta Ссылка на метаданные Внутренних заказов
attributes Массив объектов доп. полей Внутренних заказов в формате Метаданных
states Массив статусов Внутренних заказов
createShared создавать новые Внутренние заказы с меткой "Общий"

Структура отдельного объекта, представляющего доп. поле подробно описана в разделе Работа с дополнительными полями.

Отдельное доп. поле

Параметры

Параметр Описание
id string (required) Example: 7944ef04-f831-11e5-7a69-971500188b19 id Доп. поля.

Внутренний заказ

Получить Внутренний заказ

Параметры

Параметр Описание
id string (required) Example: 7944ef04-f831-11e5-7a69-971500188b19 id Внутреннего заказа.

Изменить Внутренний заказ

Запрос на обновление Внутреннего заказа с указанным id.

Параметры

Параметр Описание
id string (required) Example: 7944ef04-f831-11e5-7a69-971500188b19 id Внутреннего заказа.

Позиции Внутреннего заказа

Отдельный ресурс для управления позициями Внутреннего заказа. С его помощью вы можете управлять позициями большого документа, количество строк в котором превышает 1000. Более подробно о лимитах на количество строк документа и работе с большими документами можно прочитать тут.

Получить позиции Внутреннего заказа

Запрос на получение списка всех позиций данного Внутреннего заказа.

Название Тип Описание
meta Meta Метаданные о выдаче,
context Meta Метаданные о сотруднике, выполнившем запрос.
rows Array(Object) Массив JSON объектов, представляющих собой позиции Внутреннего заказа.

Параметры

Параметр Описание
id string (required) Example: 7944ef04-f831-11e5-7a69-971500188b19 id Внутреннего заказа.
limit number (optional) Default: 1000 Example: 1000 Максимальное количество сущностей для извлечения.Допустимые значения 1 - 1000.
offset number (optional) Default: 0 Example: 40 Отступ в выдаваемом списке сущностей.
search string (optional) Example: 0001 Фильтр документов по указанной поисковой строке.

Создать позиции Внутреннего заказа

Запрос на создание новой позиции во Внутреннем заказе. Для успешного создания необходимо в теле запроса указать следующие поля:

Параметры

Параметр Описание
id string (required) Example: 7944ef04-f831-11e5-7a69-971500188b19 id Внутреннего заказа.

Удалить позицию Внутреннего заказа

Параметры

Параметр Описание
positionID string (required) Example: 7944ef04-f831-11e5-7a69-971500188b19 id позиции Внутреннего заказа.

Response 200 (application/json) Успешное удаление позиции Внутреннего заказа.

Позиция Внутреннего заказа

Получить позицию

Параметры

Параметр Описание
id string (required) Example: 7944ef04-f831-11e5-7a69-971500188b19 id Внутреннего заказа.
positionID string (required) Example: 7944ef04-f831-11e5-7a69-971500188b20 id позиции Внутреннего заказа.

Изменить позицию

Запрос на обновление отдельной позиции Внутреннего заказа.

Параметры

Параметр Описание
id string (required) Example: 7944ef04-f831-11e5-7a69-971500188b19 id Внутреннего заказа.
positionID string (required) Example: 7944ef04-f831-11e5-7a69-971500188b20 id позиции Внутреннего заказа.

Возврат покупателя

Средствами JSON API можно создавать и обновлять сведения о Возвратах покупателей, запрашивать списки Возвратов покупателей и сведения по отдельным Возвратам покупателей. Позициями Возвратов покупателей можно управлять как в составе отдельного Возврата, так и отдельно - с помощью специальных ресурсов для управления позициями Возврата покупателя. Кодом сущности для Возврата покупателя в составе JSON API является ключевое слово salesreturn.

Возвраты покупателей

Атрибуты сущности

Название Тип Описание
accountId UUID ID учетной записи
Обязательное при ответе Только для чтения
agent Meta Метаданные контрагента
Обязательное при ответе Expand
agentAccount Meta Метаданные счета контрагента
Expand
applicable Boolean Отметка о проведении
Обязательное при ответе
attributes Array(Object) Коллекция метаданных доп. полей. Поля объекта
code String(255) Код Возврата Покупателя
contract Meta Метаданные договора
Expand
created DateTime Дата создания
Обязательное при ответе Только для чтения
deleted DateTime Момент последнего удаления Возврата Покупателя
Только для чтения
description String(4096) Комментарий Возврата Покупателя
externalCode String(255) Внешний код Возврата Покупателя
Обязательное при ответе
files MetaArray Метаданные массива Файлов (Максимальное количество файлов - 100)
Обязательное при ответе Expand
group Meta Отдел сотрудника
Обязательное при ответе Expand
id UUID ID Возврата Покупателя
Обязательное при ответе Только для чтения
meta Meta Метаданные Возврата Покупателя
Обязательное при ответе
moment DateTime Дата Счета
Обязательное при ответе
name String(255) Наименование Возврата Покупателя
Обязательное при ответе
organization Meta Метаданные юрлица
Обязательное при ответе Expand Необходимо при создании
organizationAccount Meta Метаданные счета юрлица
Expand
owner Meta Владелец (Сотрудник)
Обязательное при ответе Expand
positions MetaArray Метаданные позиций Возврата Покупателя
Обязательное при ответе Expand
printed Boolean Напечатан ли документ
Обязательное при ответе Только для чтения
project Meta Метаданные проекта
Expand
published Boolean Опубликован ли документ
Обязательное при ответе Только для чтения
rate Object Валюта. Подробнее тут
Обязательное при ответе
shared Boolean Общий доступ
Обязательное при ответе
state Meta Метаданные статуса Возврата Покупателя
Expand
store Meta Метаданные склада
Обязательное при ответе Expand Необходимо при создании
sum Int Сумма Возврата Покупателя в копейках
Обязательное при ответе Только для чтения
syncId UUID ID синхронизации. После заполнения недоступен для изменения
updated DateTime Момент последнего обновления Возврата Покупателя
Обязательное при ответе Только для чтения
vatEnabled Boolean Учитывается ли НДС
Обязательное при ответе
vatIncluded Boolean Включен ли НДС в цену
vatSum Float Сумма включая НДС
Обязательное при ответе

Связи с другими документами

Название Описание
demand Ссылка на отгрузку, по которой произошел возврат в формате Метаданных Поле является необходимым для возврата с основанием.
losses Массив ссылок на связанные списания в формате Метаданных
payments Массив ссылок на связанные платежи в формате Метаданных
payedSum Сумма исходящих платежей по возврату покупателя
factureOut Ссылка на Счет-фактуру выданный, с которым связан этот возврат, в формате Метаданных

Позиции Возврата покупателя

Позиции Возврата покупателей - это список товаров/услуг/модификаций/серий. Объект позиции Возврата покупателей содержит следующие поля:

Название Тип Описание
accountId UUID ID учетной записи
Обязательное при ответе Только для чтения
assortment Meta Метаданные товара/услуги/серии/модификации, которую представляет собой позиция
Обязательное при ответе Expand
cost Int Себестоимость (только для услуг)
country Meta Метаданные Страны
Expand
discount Int Процент скидки или наценки. Наценка указывается отрицательным числом, т.е. -10 создаст наценку в 10%
Обязательное при ответе
gtd String(255) ГТД
id UUID ID позиции
Обязательное при ответе Только для чтения
pack Object Упаковка Товара. Подробнее тут
price Float Цена товара/услуги в копейках
Обязательное при ответе
quantity Int Количество товаров/услуг данного вида в позиции. Если позиция - товар, у которого включен учет по серийным номерам, то значение в этом поле всегда будет равно количеству серийных номеров для данной позиции в документе.
Обязательное при ответе
things Array(String) Серийные номера. Значение данного атрибута игнорируется, если товар позиции не находится на серийном учете. В ином случае количество товаров в позиции будет равно количеству серийных номеров, переданных в значении атрибута.
vat Int НДС, которым облагается текущая позиция
Обязательное при ответе
vatEnabled Boolean Включен ли НДС для позиции. С помощью этого флага для позиции можно выставлять НДС = 0 или НДС = "без НДС". (vat = 0, vatEnabled = false) -> vat = "без НДС", (vat = 0, vatEnabled = true) -> vat = 0%.
Обязательное при ответе

С позициями можно работать с помощью специальных ресурсов для управления позициями Возврата покупателей, а также в составе отдельного Возврата покупателей. При работе в составе отдельного Возврата покупателей, вы можете отправлять запросы на создание отдельного Возврата покупателей с включенным в тело запроса массивом позиций Возврата покупателей. Если количество позиций превышает максимально допустимое, то для дальнейшего пополнения позиций нужно будет работать со специальным ресурсом "Позиции Возврата покупателей". Также, при работе в составе отдельного Возврата покупателей, можно отправлять запросы на обновление списка позиций с включенным в тело запроса массивом позиций Возврата покупателей. При этом важно помнить, что коллекция позиций будет восприниматься как "все позиции Возврата покупателей" и полностью заменит уже существующую коллекцию при обновлении объекта - лишние позиции будут удалены, новые добавлены, существующие - изменены.

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

Получить Возвраты покупателей

Запрос всех Возвратов покупателей на данной учетной записи. Результат: Объект JSON, включающий в себя поля:

Название Тип Описание
meta Meta Метаданные о выдаче,
context Meta Метаданные о сотруднике, выполнившем запрос.
rows Array(Object) Массив JSON объектов, представляющих собой Возвраты покупателей.

Параметры

Параметр Описание
limit number (optional) Default: 1000 Example: 1000 Максимальное количество сущностей для извлечения.Допустимые значения 1 - 1000.
offset number (optional) Default: 0 Example: 40 Отступ в выдаваемом списке сущностей.

Создать Возврат покупателя

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

При создании возврата:

Массовое создание и обновление Возвратов покупателя

Массовое создание и обновление Возвратов покупателя. В теле запроса нужно передать массив, содержащий JSON представления Возвратов покупателя, которые вы хотите создать или обновить. Обновляемые Возвраты покупателя должны содержать идентификатор в виде метаданных.

Удалить Возврат покупателя

Параметры

Параметр Описание
id string (required) Example: 7944ef04-f831-11e5-7a69-971500188b19 id Возврата покупателей.

Response 200 (application/json) Успешное удаление Возврата покупателей.

Массовое удаление Возвратов покупателей

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

Метаданные Возвратов покупателей

Метаданные Возвратов покупателей

Запрос на получение метаданных Возвратов покупателей. Результат - объект JSON, включающий в себя:

Параметр Описание
meta Ссылка на метаданные Возвратов покупателей
attributes Массив объектов доп. полей Возвратов покупателей в формате Метаданных
states Массив статусов Возвратов покупателей
createShared создавать новые Возвраты покупателей с меткой "Общий"

Структура отдельного объекта, представляющего доп. поле подробно описана в разделе Работа с дополнительными полями.

Отдельное доп. поле

Параметры

Параметр Описание
id string (required) Example: 7944ef04-f831-11e5-7a69-971500188b19 id Доп. поля.

Шаблон Возврата покупателя

Шаблон Возврата покупателя

Запрос на получение предзаполненого стандартными значениями шаблона возврата покупателя без связи с каким-либо документом.

Шаблон Возврата покупателя на основе

Запрос на получение предзаполненного шаблона возврата покупателя на основе переданной отгрузки. В ответ на запрос вернется предзаполненный шаблон возврата покупателя, который затем можно будет использовать для создания нового возврата с помощью POST запроса.

Возврат покупателя

Получить Возврат покупателя

Параметры

Параметр Описание
id string (required) Example: 7944ef04-f831-11e5-7a69-971500188b19 id Возврата покупателей.

Изменить Возврат покупателя

Запрос на обновление Возврата покупателей с указанным id. В теле запроса можно указать только те поля, которые необходимо изменить у Возврата покупателей, кроме тех, что помечены Только для чтения в описании атрибутов Возврата покупателей. При обновлении поля organization нужно также обновить поле organizationAccount иначе произойдет ошибка. Контрагент должен совпадать с контрагентом, указанным в документе, по которому создается возврат.

При обновлении возврата:

Параметры

Параметр Описание
id string (required) Example: 7944ef04-f831-11e5-7a69-971500188b19 id Возврата покупателей.

Позиции возврата покупателя

Отдельный ресурс для управления позициями Возврата покупателей. С его помощью вы можете управлять позициями большого документа, количество строк в котором превышает лимит на количество строк, сохраняемых вместе с документом. Этот лимит равен 1000. Более подробно о лимитах на количество строк документа и работе с большими документами можно прочитать тут.

Получить Позиции

Запрос на получение списка всех позиций данной Возврата покупателей.

Название Тип Описание
meta Meta Метаданные о выдаче,
context Meta Метаданные о сотруднике, выполнившем запрос.
rows Array(Object) Массив JSON объектов, представляющих собой позиции Возврата покупателей.

Параметры

Параметр Описание
id string (required) Example: 7944ef04-f831-11e5-7a69-971500188b19 id Возврата покупателей.
limit number (optional) Default: 1000 Example: 1000 Максимальное количество сущностей для извлечения.Допустимые значения 1 - 1000.
offset number (optional) Default: 0 Example: 40 Отступ в выдаваемом списке сущностей.

Создать Позицию

Запрос на создание новой позиции в Возврате покупателя. Для успешного создания необходимо в теле запроса указать следующие поля:

Параметры

Параметр Описание
id string (required) Example: 7944ef04-f831-11e5-7a69-971500188b19 id Возврата покупателей.

Позиция Возврата покупателя

Получить Позицию

Параметры

Параметр Описание
id string (required) Example: 7944ef04-f831-11e5-7a69-971500188b19 id Возврата покупателей.
positionID string (required) Example: 34f6344f-015e-11e6-9464-e4de0000006c id позиции Возврата покупателей.

Изменить Позицию

Запрос на обновление отдельной позиции Возврата покупателей. При обновлении отдельной позиции в возврате можно только изменить количество данной позиции. Причем это количество должно быть в пределах , где n - кол-во данной позиции в документе, по которому создан возврат.

Параметры

Параметр Описание
id string (required) Example: 7944ef04-f831-11e5-7a69-971500188b19 id Возврата покупателей.
positionID string (required) Example: 34f6344f-015e-11e6-9464-e4de0000006c id позиции Возврата покупателей.

Удалить позицию

Параметры

Параметр Описание
id string (required) Example: 7944ef04-f831-11e5-7a69-971500188b19 id Возврата покупателей.
positionID string (required) Example: 34f6344f-015e-11e6-9464-e4de0000006c id позиции Возврата покупателей.

Response 200 (application/json) Успешное удаление позиции Возврата покупателей.

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

Средствами JSON API можно создавать и обновлять сведения о Возвратах поставщикам, запрашивать списки Возвратов поставщикам и сведения по отдельным Возвратам поставщикам. Позициями Возвратов поставщикам можно управлять как в составе отдельного Возврата, так и отдельно - с помощью специальных ресурсов для управления позициями Возврата поставщику. Кодом сущности для Возврата поставщику в составе JSON API является ключевое слово purchasereturn.

Возвраты поставщикам

Атрибуты сущности

Название Тип Описание
accountId UUID ID учетной записи
Обязательное при ответе Только для чтения
agent Meta Метаданные контрагента
Обязательное при ответе Expand Необходимо при создании
agentAccount Meta Метаданные счета контрагента
Expand
applicable Boolean Отметка о проведении
Обязательное при ответе
attributes Array(Object) Коллекция метаданных доп. полей. Поля объекта
code String(255) Код Возврата поставщику
contract Meta Метаданные договора
Expand
created DateTime Дата создания
Обязательное при ответе Только для чтения
deleted DateTime Момент последнего удаления Возврата поставщику
Только для чтения
description String(4096) Комментарий Возврата поставщику
externalCode String(255) Внешний код Возврата поставщику
Обязательное при ответе
files MetaArray Метаданные массива Файлов (Максимальное количество файлов - 100)
Обязательное при ответе Expand
group Meta Отдел сотрудника
Обязательное при ответе Expand
id UUID ID Возврата поставщику
Обязательное при ответе Только для чтения
meta Meta Метаданные Возврата поставщику
Обязательное при ответе
moment DateTime Дата Счета
Обязательное при ответе
name String(255) Наименование Возврата поставщику
Обязательное при ответе
organization Meta Метаданные юрлица
Обязательное при ответе Expand
organizationAccount Meta Метаданные счета юрлица
Expand
owner Meta Владелец (Сотрудник)
Обязательное при ответе Expand
printed Boolean Напечатан ли документ
Обязательное при ответе Только для чтения
project Meta Метаданные проекта
Expand
published Boolean Опубликован ли документ
Обязательное при ответе Только для чтения
rate Object Валюта. Подробнее тут
Обязательное при ответе
shared Boolean Общий доступ
Обязательное при ответе
state Meta Метаданные статуса Возврата поставщику
Expand
store Meta Метаданные склада
Обязательное при ответе Expand Необходимо при создании
sum Int Сумма Возврата поставщику в копейках
Обязательное при ответе Только для чтения
syncId UUID ID синхронизации. После заполнения недоступен для изменения
updated DateTime Момент последнего обновления Возврата поставщику
Обязательное при ответе Только для чтения
vatEnabled Boolean Учитывается ли НДС
Обязательное при ответе
vatIncluded Boolean Включен ли НДС в цену
vatSum Float Сумма включая НДС
Обязательное при ответе

Связи с другими документами

Название Описание
positions Ссылка на позиции Возврата поставщику в формате Метаданных
supply Ссылка на приемку, по которой произошел возврат в формате Метаданных Поле является необходимым для возврата с основанием.
factureOut Ссылка на Счет-фактуру выданный в формате Метаданных
factureIn Ссылка на Счет-фактуру полученный в формате Метаданных
payedSum Сумма входящих платежей по возврату поставщику
payments Массив ссылок на связанные платежи в формате Метаданных

Позиции Возврата поставщику

Позиции Возврата поставщику - это список товаров/услуг/модификаций/серий. Объект позиции Возврата поставщику содержит следующие поля:

Название Тип Описание
accountId UUID ID учетной записи
Обязательное при ответе Только для чтения
assortment Meta Метаданные товара/услуги/серии/модификации, которую представляет собой позиция
Обязательное при ответе Expand
discount Int Процент скидки или наценки. Наценка указывается отрицательным числом, т.е. -10 создаст наценку в 10%
Обязательное при ответе
id UUID ID позиции
Обязательное при ответе Только для чтения
pack Object Упаковка Товара. Подробнее тут
price Float Цена товара/услуги в копейках
Обязательное при ответе
quantity Int Количество товаров/услуг данного вида в позиции. Если позиция - товар, у которого включен учет по серийным номерам, то значение в этом поле всегда будет равно количеству серийных номеров для данной позиции в документе.
Обязательное при ответе
things Array(String) Серийные номера. Значение данного атрибута игнорируется, если товар позиции не находится на серийном учете. В ином случае количество товаров в позиции будет равно количеству серийных номеров, переданных в значении атрибута.
vat Int НДС, которым облагается текущая позиция
Обязательное при ответе
vatEnabled Boolean Включен ли НДС для позиции. С помощью этого флага для позиции можно выставлять НДС = 0 или НДС = "без НДС". (vat = 0, vatEnabled = false) -> vat = "без НДС", (vat = 0, vatEnabled = true) -> vat = 0%.
Обязательное при ответе

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

С позициями можно работать с помощью специальных ресурсов для управления позициями Возврата поставщику, а также в составе отдельного Возврата поставщику. При работе в составе отдельного Возврата поставщику, вы можете отправлять запросы на создание отдельного Возврата поставщику с включенным в тело запроса массивом позиций Возврата поставщику. Если количество позиций превышает максимально допустимое, то для дальнейшего пополнения позиций нужно будет работать со специальным ресурсом "Позиции Возврата поставщику". Также, при работе в составе отдельного Возврата поставщику, можно отправлять запросы на обновление списка позиций с включенным в тело запроса массивом позиций Возврата поставщику. При этом важно помнить, что коллекция позиций будет восприниматься как "все позиции Возврата поставщику" и полностью заменит уже существующую коллекцию при обновлении объекта - лишние позиции будут удалены, новые добавлены, существующие - изменены.

О работе с доп. полями Возвратов поставщикамых возвратов можно прочитать здесь

Получить Возвраты поставщикам

Запрос всех Возвратов поставщикам на данной учетной записи. Результат: Объект JSON, включающий в себя поля:

Название Тип Описание
meta Meta Метаданные о выдаче,
context Meta Метаданные о сотруднике, выполнившем запрос.
rows Array(Object) Массив JSON объектов, представляющих собой Возвраты поставщикам.

Параметры

Параметр Описание
limit number (optional) Default: 1000 Example: 1000 Максимальное количество сущностей для извлечения.Допустимые значения 1 - 1000.
offset number (optional) Default: 0 Example: 40 Отступ в выдаваемом списке сущностей.

Создать Возврат поставщику

Обязательные поля при создании нового Возврата поставщику:

При создании возврата: