wmakeev / business-gas-moysklad-1c-export

Сервис для выгрузки дополнительной информации недостающей в стандартном файле импорта в 1С

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

moysklad-1c-export-stack

Сервис выгрузки дополнительной информации из МойСклад для файла импорта в 1С

Авторизация

Для доступа к сервису используется Basic авторизация. Необходимо указать логин и пароль пользователя МойСклад.

Параметры запроса

Для вызова сервиса нужно передать GET запрос с параметрами:

https://{endpoint}?dateFrom=2022-03-01T00%3A00%3A00.000Z&dateTo=2022-03-17T11%3A04%3A40.930Z

где:

  • dateFrom - дата с которой необходимо получить документы (включительно)
  • dateTo - дата до которой необходимо получить документы (включительно)

Даты в параметрах передаются в формате даты ISO (напр. 2022-03-01T00:00:00.000Z)

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

Формат ответа

Успешный ответ

Код ответа сервера - 200

Пример тела ответа:

{
  "ok": true,
  "result": {
    "items": [
      {
        "type": "paymentout",
        "name": "88 (2)",
        "moment": "2022-03-09T21:00:00.000Z",
        "expenseType": "Налоги и сборы"
      },
      {
        "type": "paymentin",
        "name": "117",
        "moment": "2022-03-09T21:00:00.000Z",
        "incomingNumber": "117",
        "incomingDate": "2022-03-09T21:00:00.000Z"
      },
      {
        "type": "retaildemand",
        "name": "NV-rdm-02358",
        "moment": "2022-03-03T10:09:00.000Z",
        "taxSystem": "ЕНВД"
      },
      {
        "type": "demand",
        "name": "ИП-01928",
        "moment": "2022-02-13T07:14:00.000Z",
        "taxSystem": "УСН [ОПТ ЮЛ]"
      }
    ],
    "nextQueryString": "dateFrom=2022-01-31T19%3A00%3A00.000Z&dateTo=2022-02-27T19%3A00%3A00.000Z&continueFromEntity=paymentout&continueFromDate=2022-02-27T06%3A23%3A00.000Z"
  }
}
  • Поле ok - true если запрос выполнен успешно, иначе false

  • Поле result.items - содержит массив с объектами

  • Поле result.nextQueryString - (опционально) содержит строку запроса url для получения оставщихся данных которые не удалось получить за время выделенное на ожидание запроса (30 сек).

Если заполнено поле result.nextQueryString, то для получения оставщихся данных нужно повторить запрос по url вида https://{endpoint}?{result.nextQueryString}.

Нужно продолжать получать данные до тех пор, пока в ответе содержится поле nextQueryString.

Возможные варианты объектов:

Для всех объектов присутствуют поля:

  • type - тип документа
  • name - наименование документа
  • moment - дата документа

Поля специфичные для типа документа:

  • Исходящий платеж

    • type - paymentout
    • expenseType - тип исходящего платежа
  • Входящий платеж

    • type - paymentin
    • incomingNumber - номер входящего документа
    • incomingDate - дата исходящего документа
    • taxSystem - система налогооблажения (из пользовательского поля НАЛОГОВАЯ СИСТЕМА в первой наденной связанной с текущим платежом отгрузке)
  • Розничная продажа

    • type - retaildemand

    • taxSystem - система налогооблажения (стандартная МойСклад)

      Варианты поля taxSystem для retaildemand:

      • ОСН
      • УСН. Доход
      • УСН. Доход-Расход
      • ЕСХН
      • ЕНВД
      • Патент
  • Отгрузка

    • type - demand

    • taxSystem - система налогооблажения (из пользовательского поля НАЛОГОВАЯ СИСТЕМА)

      Варианты поля taxSystem для demand:

      • ПСН [РОЗНИЦА]
      • ПСН [СТО]
      • УСН [ОПТ ЮЛ]

Если какое-либо поле в документе не заполнено в МойСклад, то будет иметь значение null.

Ошибка

Код ответа сервера не равен 200

Пример тела ответа:

{
  "ok": false,
  "description": "Ошибка аутентификации: Неправильный пароль или имя пользователя (https://dev.moysklad.ru/doc/api/remap/1.2/#error_1056)"
}
  • Поле ok - false
  • Поле description содержит описание ошибки

Прочее

  • Таймаут запроса 30 секунд
  • Информация о документах из коризины (удаленных в коризну) так же включается в ответ

About

Сервис для выгрузки дополнительной информации недостающей в стандартном файле импорта в 1С


Languages

Language:TypeScript 99.5%Language:Shell 0.5%