Облачная Касса: Интеграция с Фискальным Процессингом: различия между версиями
(Новая страница: «=Авторизация= {{ Note | '''''Примечание''''' *Все ссылки будут указаны для тестового контура ФП! *Для актуального ФП использовать ссылку вида https://fp.bifit.com/processing-api/.../ |800}} * Выполнить '''POST-запрос''' на адрес https://fp-test.bifit.com/processing-api/oauth/token в теле '''(x-www-form-urlencoded)''' кото...») |
|||
Строка 51: | Строка 51: | ||
{{ Note | '''''Примечание''''' | {{ Note | '''''Примечание''''' | ||
* Ко всем последующим запросам, в Header`е необходимо указывать: | * Ко всем последующим запросам, в Header`е необходимо указывать: ''''Authorization: Bearer полученный_access_token''' |800}} | ||
=Формирование контента чека= | =Формирование контента чека= | ||
{{ Note | '''''Примечание''''' | |||
* Полное описание всех полей присутствует в swagger`е по ссылке https://fp-test.bifit.com/processing-api/swagger-ui.html# |800}} | |||
Пример: | |||
{ | |||
"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 | |||
} | |||
} | |||
{{ Note | '''''Примечание''''' <br> | |||
Полученные данные имеют ознакомительный характер, актуальные запросы можно посмотреть по адресу: | |||
* https://fp.bifit.com/processing-api/swagger-ui.html#/ основной контур | |||
* https://fp-test.bifit.com/processing-api/swagger-ui.html#/ тестовый контур|800}} | |||
=Отправка чека в фискальный процессинг= | |||
* Выполните '''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)''' | |||
{{ Note | '''''Примечание''''' <br> | |||
Полученные данные имеют ознакомительный характер, актуальные запросы можно посмотреть по адресу: | |||
* https://fp.bifit.com/processing-api/swagger-ui.html#/ основной контур | |||
* https://fp-test.bifit.com/processing-api/swagger-ui.html#/ тестовый контур|800}} | |||
=Получение документа по 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, сгенерированный при отправке чека. |
Версия 15:56, 16 декабря 2021
Авторизация
- Все ссылки будут указаны для тестового контура ФП!
- Для актуального ФП использовать ссылку вида 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, сгенерированный при отправке чека.