← Все статьи

REST API для 1С: тестовый стенд за один рабочий день

Пошаговый план: от установки расширения bit_http_api до первого POST-счёта и проверки в Swagger — для разработчика без опыта 1С.

«Интеграция с 1С — это надолго» — миф, который откладывает запуск на месяцы. Для сценария «счета, акты, контрагенты через HTTP» тестовый стенд REST API реально поднять за один рабочий день, если следовать чек-листу. Ниже — пошаговый план для backend-разработчика без глубокого опыта 1С.

Что понадобится

  • Тестовая база 1С:Бухгалтерия предприятия 3.0 (копия обезличенной боевой или демо с сайта 1С).
  • Сервер с IIS или Apache, на котором уже публиковали веб-сервисы 1С (или виртуалка под это).
  • Postman, Insomnia или curl.
  • Расширение bit_http_api — с страницы продукта.

Утро (2–3 часа): 1С и публикация

  1. Установите расширение в конфигураторе или через «Расширения» в пользовательском режиме.
  2. Создайте пользователя api_test с ролью bitHttpApi_ОсновнаяРоль.
  3. Опубликуйте HTTP-сервис на веб-сервере — путь вида /base_name/hs/bit_http_api/.
  4. Проверьте доступность GET-запросом с Basic Auth (даже 401/404 подскажут, где ошибка публикации).
  5. Убедитесь, что время на сервере синхронизировано (NTP) — иначе странные ошибки в логах.

День (2–3 часа): первые документы

Контрагент

POST или GET /counterparties — создайте тестового партнёра с ИНН и наименованием. Проверьте карточку в 1С.

Счёт

POST /invoices с JSON-телом по схеме из Swagger: контрагент, строки номенклатуры или услуг, сумма. Откройте документ в 1С — номер, дата, проведение.

Акт

POST /acts — аналогично. При необходимости привяжите к тому же контрагенту.

PDF

Если в ответе есть ссылка на PDF — скачайте и сверьте реквизиты. Если нет — проверьте печатную форму в конфигурации.

Вечер (1–2 часа): передача команде

  • Зафиксируйте base URL, логин и пароль тестового пользователя в секрет-хранилище (не в git).
  • Экспортируйте коллекцию Postman из Swagger или приложите примеры curl из документации.
  • Опишите коды ошибок, которые видели, и как их устранили.
  • Запланируйте нагрузочный тест: 10–50 последовательных POST — нет ли блокировок.

Типовые проблемы в первый день

  • 401 Unauthorized — неверный Basic Auth или пользователь без роли API.
  • 404 — неверный путь публикации или не перезапустили веб-сервер после публикации.
  • 500 от 1С — смотрите журнал регистрации 1С; часто не заполнено обязательное поле в JSON.
  • SSL — на тесте можно HTTP, на бой только HTTPS.

После стенда

Подключите сайт или CRM к тестовому URL. Прогоните сценарии «создание заказа → счёт → оплата → акт». Только после этого — перенос на боевую базу с отдельным пользователем API и бэкапом.

Swagger, примеры JSON и условия внедрения — REST API для 1С:Бухгалтерия. Пример POST счёта — создать счёт через REST API. Помощь с публикацией на вашем сервере — CodeLab.

Частые вопросы

Реально ли поднять тестовый REST API 1С за один день?

Да, для сценария счета, акты, контрагенты: утром — установка расширения и публикация, днём — первые POST, вечером — передача URL и коллекции Postman команде.

API отвечает 401 Unauthorized — что проверить?

Логин и пароль Basic Auth, пользователь с ролью bitHttpApi_ОсновнаяРоль, нет лишних пробелов в base64. Не используйте учётку полного администратора без роли API.

404 Not Found на /hs/bit_http_api/invoices — причины

Неверный путь публикации базы, HTTP-сервис не опубликован или веб-сервер не перезапущен после публикации. Проверьте URL в браузере с Basic Auth.

Нужен ли опыт 1С backend-разработчику?

Для работы с API — нет, достаточно HTTP и JSON. Для установки расширения и публикации на сервере — нужен 1С-администратор или CodeLab один раз.

Где взять расширение bit_http_api?

Оставить заявку — контакты CodeLab. Документация — REST API для 1С.

Как убедиться, что счёт создался в 1С?

Пример POST — создать счёт через REST API.

Была ли статья полезной?

Нужна интеграция с 1С?

CodeLab проектирует REST API, B2B-порталы и обмен с внешними системами.

Обсудить задачу