Интеграция по API с сервисом формирования чеков(онлайн кассы) — Бизнес.ру
Доброго времени друзья! Сегодня я хочу рассказать об интеграции с сервисом формирования чеков(онлайн-кассы) от портала Бизнес.ру, по средствам предоставляемого им API. Речь пойдет об интеграции нетипичного сайта, который имеет уникальный функционал, в том числе по части приема оплаты от пользователей. Несмотря на то, что данный сервис предоставляет множество готовых решений — плагинов, для популярных CMS, которые позволяют подключиться к онлайн-кассе достаточно просто, в нашем же случае ни один из них для решения наших задач не подошел. По этому было принято решение, разработать свой уникальный плагин.
Описание API
Для работы с API, сервис предоставляет исчерпывающую документацию, также есть готовый PHP SDK, который представляет собой PHP-класс с несколькими методами: открытие смены, закрытие смены, печать чека прихода и печать чека возврата прихода. К сожалению данный класс не содержит метода проверки статуса команды печати чека, поэтому он был мною доработан — добавлен метод проверки статуса печати чека (т.к. нам нужна детальная информация по чеку).
API хорошо задокументирован, все методы описаны в Swagger, ссылка на который доступна из личного кабинета «Онлайн-Чеки», там же можно отправить несколько тестовых запросов, полный список методов включает в себя:
Users — Работа с пользователем / аккаунтом
GET /User — Данные пользователя по ID
Command — Передача команд в ФР
GET /Command/{commandId} -Получение данных о команде в ФР по ID пользователя и ID команды
GET /Command — Получение данных о команде в ФР по ID пользователя и ID команды
POST — /Command Передача команд в ФР по ID пользователя
Token — Получение и восстановление токена
GET /Token — Получить новый токен
Meta — Статистические данные
GET /StateSystem — Получение данных о состоянии системы
GET /Shift — Получение данных о сменах
GET /Check -Получение данных о чеках
GET /Goods — Получение данных о товарах в чеке
API имеет два сервера для обращений, один из которых тестовый — для отладки во время разработки. К сожалению в нашем случае, в момент разработки, по какой-то причине тестовый сервер не позволял авторизировать наше приложение, это несколько усложнило процесс интеграции, но ничего критичного — работа была сделана в срок.
https://check-dev.business.ru/open-api/v1/ — Тестовый сервис.
https://check.business.ru/open-api/v1/ — Stable сервис.
При отправке чека на печать, можно указать следующие данные:
- Имя кассира;
- Емаил или телефон покупателя;
- Номер чека;
- Сумма оплаты наличными;
- Сумма оплаты безналичным расчетом;
- Список товаров, включающий в себя такие значения как: количество, стоимость, общая сумма, наименования, процент ставки НДС, а также способ и предмет расчета.
Функционал
Интегрируемый проект написан на PHP, также он включает в себя форумный движок IP.Board, именно в нем и реализована система учета финансовых операций и выставления счетов пользователям. Таким образом с IPB была произведена интеграция, в админпанель форума был добавлен новый уникальный функционал. Далее о котором подробнее.
Создание и отправка чека на печать с произвольными данными
Как оказалось, это очень востребованная функция, в рамках проекта с которым велась интеграция, т.к. на сайте присутствуют разные типы сделок, с разными условиями, и очень часто для проведения сделки требуется модерация со стороны администратора, что может приводить к ряду корректировок, в том числе в описании сделки и сумме. Принцип работы очень прост, в специальной форме указываются необходимые параметры(наличный или безналичный расчет, имя кассира, сумма, контактные данные покупателя), после чего чек отправляется на печать в онлайн-кассу.

Создание и отправка чека на печать по конкретной сделке в ручном режиме
По каждой сделке, есть возможность отправить чек на печать в ручном режиме, нажав соответствующую кнопку напротив данных о сделке. При этом, будут автоматически отправлены данные по сделке, для печати чека: сумма, информация о товарах, информация о кассире и способ оплаты. После печати чека, прямо из админпанели будет доступна информация по нему:
- Номер чека
- Дата
- Номер смены
- Номер ФД
- ФПД
- Сер. номер ФН
- Прочее

Создание и отправка чека на печать по конкретной сделке в автоматическом режиме
И конечно же создание чеков(отправка на печать в онлайн-кассу) в автоматическом режиме. Данный тип операций актуален для простых сделок, не требующих модерации. При поступлении оплаты от покупателя, автоматически отправляется команда на печать чека в анлайн-кассу. Данные по нему становятся доступны в админпанели. По всем операциям приходят соответствующие уведомления на емаил или телефон — покупателю и если нужно администратору сайта.
Заключение
Онлайн бизнес развивается семимильными шагами, не отстают и фискальные службы, к счастью для нашего удобства всё больше появляется таких сервисов как «Онлайн-Чеки» от портала Бизнес.ру. Зачастую интеграция с онлайн-кассой представляет собой не сложный процесс, но иногда без разработчика не обойтись, и в таком случае вы всегда можете рассчитывать на меня! Не важно какой именно сервис выберите вы, я смогу интегрировать с ним ваш проект, реализовав при этом ваши уникальные идеи, или предложив что-то своё. Обращаетесь!

Автор:






