Облачная Касса: Интеграция с Фискальным Процессингом: различия между версиями
Mediawiki (обсуждение | вклад) |
Mediawiki (обсуждение | вклад) |
||
Строка 91: | Строка 91: | ||
{{ProductTable-2 | {{ProductTable-2 | ||
|title-left='''PaymentType''' - | |title-left='''PaymentType''' - тип оплаты. | ||
|title-right= | |title-right= | ||
|content-left= | |content-left= | ||
Строка 107: | Строка 107: | ||
* (тэг 1216) Сумма оплаты постоплатой (в кредит) | * (тэг 1216) Сумма оплаты постоплатой (в кредит) | ||
* (тэг 1217) Сумма оплаты встречным предоставлением | * (тэг 1217) Сумма оплаты встречным предоставлением | ||
|}}<br> | |||
{{ProductTable-2 | |||
|title-left='''PaymentSubject''' - признак предмета расчета (тэг 1212). | |||
|title-right= | |||
|content-left= | |||
| |||
* '''PRODUCT''' | |||
* '''EXCISABLE_PRODUCT''' | |||
* '''JOB''' | |||
* '''SERVICE''' | |||
* '''GAMBLING_RATE''' | |||
* '''GAMBLING_WIN''' | |||
* '''LOTTERY_TICKET''' | |||
* '''LOTTERY_WIN''' | |||
* '''PROVISION_RID''' | |||
* '''PAYMENT''' | |||
* '''AGENCY''' | |||
* '''COMPOUND_SUBJECT''' | |||
* '''OTHER_SUBJECT''' | |||
* '''PROPERTY_LAW''' | |||
* '''NON_OPERATING_INCOME''' | |||
* '''INSURANCE_CONTRIBUTIONS''' | |||
* '''TRADE_FEE''' | |||
* '''RESORT_FEE''' | |||
* '''PLEDGE''' | |||
|content-right= | |||
| |||
* Товар | |||
* Подакционый товар | |||
* Работа | |||
* Услуга | |||
* Ставка азартной игры | |||
* Выигрыш азартной игры | |||
* Лотерейный билет | |||
* Выигрыш лотерии | |||
* Предоставление РИД | |||
* Платеж | |||
* Агентское вознаграждение | |||
* Составной предмет расчета | |||
* Иной предмет расчета | |||
* Имущественное право | |||
* Внереализованный доход | |||
* Страховые взносы | |||
* Торговый сбор | |||
* Курортный сбор | |||
* Залог | |||
|}}<br> | |}}<br> | ||
Версия 12:03, 14 апреля 2022
Введение
Данное руководство описывает процедуру интеграции ИС (Информационной Системы) заказчика с Фискальным Процессингом (далее ФП) БИФИТ Онлайн. Описаны следующие процедуры:
- Авторизация в ФП - процесс необходимый для подключения клиента к фискальному процессингу,
- Формирование контент чека - формирование информации для дальнейшей отправки на фискализацию,
- Отправка чека в ФП - передача контента чека в фискальный процессинг для дальнейшей фискализации,
- Получение документа по ID - получение документа с фискальными признаками по его номеру.
Нумераторы
ReceiptType - тип фискального документа (тэг 1054) | |
|
|
TaxSystem - cистема налогообложения (тэг 1055). Если при регистрации устройства в ФНС было выбрано более одного режима налогообложения, то в TaxSystem необходимо указать, к какой системе налогообложения относится данный чек. | |
|
|
CalculationMethod - признак способа расчета (тэг 1214). | |
|
|
vat - ставка НДС (тэг 1199). | |
|
|
PaymentType - тип оплаты. | |
|
|
PaymentSubject - признак предмета расчета (тэг 1212). | |
|
|
Авторизация
- Все ссылки будут указаны для тестового контура ФП!
- Для актуального ФП использовать ссылку вида https://fp.bifit.com/processing-api/.../
- Выполнить POST-запрос на адрес https://fp-test.bifit.com/processing-api/oauth/token
в теле (x-www-form-urlencoded) которого содержатся следующие параметры:
token: выданный токен доступа (P5cKbUUD9uSSrSlGdzspLblvBnD0GzTAE0cLmAPSEMxJ79DtLE) client_id:processing-connector-token client_secret:processing-connector-token grant_type:token
Пример:
curl -X POST https://fp-test.bifit.com/processing-api/oauth/token -H 'Content-Type: application/x-www-form-urlencoded' -d 'token=P5cKbUUD9uSSrSlGdzspLblvBnD0GzTAE0cLmAPSEMx J79DtLE&client_id=processing-connector-token&client_secret=processing-connector-token&grant_type=token'
- По истечении времени жизни access_token, выполнить POST-запрос на адрес https://fp-test.bifit.com/processing-api/oauth/token
в теле (x-www-form-urlencoded) которого содержатся следующие параметры:
refresh_token: полученный refresh_token client_id:processing-connector-token client_secret:processing-connector-token grant_type:refresh_token
Пример:
curl -X POST \ https://fp-test.bifit.com/processing-api/oauth/token \ -H 'Content-Type: application/x-www-form-urlencoded' \ -d 'refresh_token=...&client_id=processing-connector-token&client_ secret=processing-connector-token&grant_type=refresh_token'
На оба запроса получится ответ вида:
{ "access_token": "access_token", "token_type": "bearer", "refresh_token": "refresh_token", "expires_in": 3599, "scope": "read write", "connector_id": connector_id, "jti": "jti" }
- Ко всем последующим запросам, в Header`е необходимо указывать: 'Authorization: Bearer полученный_access_token
Формирование контента чека
- Полное описание всех полей присутствует в swagger`е по ссылке https://fp-test.bifit.com/processing-api/swagger-ui.html#
Пример:
{ "type": "SALE", "taxSystem": "COMMON", "cashier": { "name": "Иванов И.И." }, "client": { "address": "7ХХХХХХХХХХ" }, "items": [ { "calculationMethod": "FULL_PAY", "paymentSubject": "SERVICE", "name": "Услуга", "price": 100, "quantity": 1, "vat": "VAT_20", "total": 100 } ], "total": 100, "payments": { "CASH": 100 } }
Примечание
Полученные данные имеют ознакомительный характер, актуальные запросы можно посмотреть по адресу:
- https://fp.bifit.com/processing-api/swagger-ui.html#/ основной контур
- https://fp-test.bifit.com/processing-api/swagger-ui.html#/ тестовый контур
Отправка чека в фискальный процессинг
- Выполните POST-запрос по адресу: https://fp-test.bifit.com/processing-api/protected/documents/registration/receipts
В Header`е указывается Idempotency-Key, который генерируется следующим образом:
SHA256("Номер чека(локальный счетчик на устройстве)/PIN(4 цифры)/Сумма чека(ххх.хх)/ДатаВремя(ДД.ММ.ГГГГ ЧЧ:ММ")
Пример:
curl -X POST \ https://fp-test.bifit.com/processing-api/protected/documents/registration/ receipts \ -H 'Content-Type: application/json' \ -H 'Authorization: Bearer access_token' \ -H 'Idempotency-Key: idempotency_key' \ -d '{ "type": "SALE", "taxSystem": "COMMON", "cashier": { "name": "Иванов И.И." }, "client": { "address": "7ХХХХХХХХХХ" }, "items": [ { "calculationMethod": "FULL_PAY", "paymentSubject": "SERVICE", "name": "Услуга", "price": 100, "quantity": 1, "vat": "VAT_20", "total": 100 } ], "total": 100, "payments": { "CASH": 100 } }'
В ответ вы получите идентификатор документа на процессинге (id)
Примечание
Полученные данные имеют ознакомительный характер, актуальные запросы можно посмотреть по адресу:
- https://fp.bifit.com/processing-api/swagger-ui.html#/ основной контур
- https://fp-test.bifit.com/processing-api/swagger-ui.html#/ тестовый контур
Получение документа по ID
- Для получения чека по id необходимо выполнить GET-запрос по адресу https://fp-test.bifit.com/processing-api/protected/documents/{id} , где необходимо заменить {id} на полученный на предыдущем шаге идентификатор документа (id).
Ответ описан в swagger`е по ссылке https://fp-test.bifit.com/processing-api/swagger-ui.html#/
Пример:
curl -X GET \ https://fp-test.bifit.com/processing-api/protected/documents/{id}\ -H 'Authorization: Bearer access_token'
Оффлайн возможности фискального процессинга
Функционал фискального процессинга позволяет осуществлять формирование ссылки на чек даже в оффлайн режиме, путем генерации QR-кода с ссылкой на страницу отслеживания состояния чека.
Ссылка:
https://fp-test.bifit.com/processing-api/receipts/ + idempotency_key, сгенерированный при отправке чека.