Облачная Касса: Интеграция с Фискальным Процессингом: различия между версиями

Материал из Касса
Перейти к навигации Перейти к поиску
(Новая страница: «=Авторизация= {{ 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}}
''''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

Авторизация

Note.svg  Примечание

  • Все ссылки будут указаны для тестового контура ФП!
  • Для актуального ФП использовать ссылку вида https://fp.bifit.com/processing-api/.../


в теле (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'

в теле (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" }

Note.svg  Примечание

  • Ко всем последующим запросам, в Header`е необходимо указывать: 'Authorization: Bearer полученный_access_token


Формирование контента чека

Note.svg  Примечание

Пример:

{
 "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.svg  Примечание
Полученные данные имеют ознакомительный характер, актуальные запросы можно посмотреть по адресу:

Отправка чека в фискальный процессинг

В 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.svg  Примечание
Полученные данные имеют ознакомительный характер, актуальные запросы можно посмотреть по адресу:

Получение документа по 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, сгенерированный при отправке чека.