Russian Federal Tax Service API connector
Project description
Коннектор к апи ФНС для проверки чеков от ОФД в ФНС
Проверяет данные чеков, полученных от оператора фискальных данных в Федерельной налоговой службе.
Установка и настройка
Получите master token
в Федеральной налоговой службе.
Установите пакет
pip install fnsapi
Добавьте переменную окружения в своё виртуально окружение
FNS_API_MASTER_TOKEN=master_token_from_fns
Если базовый адрес апи ФНС отличается от https://openapi.nalog.ru:8090/
, то укажите его через перменную окружения
FNS_API_BASE_URL=https://openapi.nalog.ru:8090/
Принцип работы
Чтобы запросить информацию о чеке в ФНС, нужно
- Получить токен сессии
- Сгенерерировать имя пользователя в вашей системе, от имени которого осуществляется запрос
- Вызвать функцию проверки чека или получения информации о чеке
Пример использования
Например, данные получены из qr-кода:
t=20201225T1016&s=1113.99&fn=9282440300829880&i=10556&fp=189504453&n=1
t — timestamp, нужно переформатировать в %Y-%m-%dT%H:%M:%S — 2020-12-25T10:16:00
s — sum, нужно умножить на 100 — 1111399
fn - fiscal_number — 9282440300829880
i - fiscal_document_id — 10556
fp - fiscal_sign — 189504453
n - operation_type — 1
from fnsapi.api import FNSApi
fns_api = FNSApi()
# получение сессионного токена
session_token = fns_api.get_session_token()
user_id = 'ofd_user' # любое текстовое значение на ваш вкус
# проверка существования чека
result = fns_api.check_ticket(
session_token,
user_id,
sum, # сумма чека в формате РРРКК, 12 рублей 23 копейки передавайте как 1223
timestamp, # дата и время в формате %Y-%m-%dT%H:%M:%S
fiscal_number, # код ККТ
operation_type, # тип операции
fiscal_document_id, # номер фискального документа
fiscal_sign # фискальный признак
)
# в результате придёт структура
status = result['status'] # success, если апи фНС отработало запрос, еrror, если нет.
code = result['code'] # код ошибки от апи ФНС.
message= result['message'] # сообщение от ФНС.
# получение информации о чеке
result = fns_api.get_ticket(
session_token,
user_id,
sum, # сумма чека в формате РРРКК, 12 рублей 23 копейки передавайте как 1223
timestamp, # дата и время в формате %Y-%m-%dT%H:%M:%S
fiscal_number, # код ККТ
operation_type, # тип операции
fiscal_document_id, # номер фискального документа
fiscal_sign # фискальный признак
)
# в результате придёт структура
status = result['status'] # success, если апи фНС отработало запрос, еrror, если нет.
code = result['code'] # код ошибки от апи ФНС.
message= result['message'] # сообщение от ФНС в случае ошибки или JSON-строка с информацией о чеке.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
fnsapi-0.0.3.tar.gz
(6.5 kB
view details)
Built Distribution
File details
Details for the file fnsapi-0.0.3.tar.gz
.
File metadata
- Download URL: fnsapi-0.0.3.tar.gz
- Upload date:
- Size: 6.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.3.0 pkginfo/1.6.1 requests/2.25.1 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.55.0 CPython/3.8.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 |
958d15357ec29a9f58a538ce022c9b015c671961fe5098d4d3d86c19f5a7a029
|
|
MD5 |
9f642e211213747ebad164e1af7eb6b9
|
|
BLAKE2b-256 |
6cfa8c2e1a48d1f23356e6fed497c8eeac4ba3477b66290091ed716793b3efb1
|
File details
Details for the file fnsapi-0.0.3-py3-none-any.whl
.
File metadata
- Download URL: fnsapi-0.0.3-py3-none-any.whl
- Upload date:
- Size: 8.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.3.0 pkginfo/1.6.1 requests/2.25.1 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.55.0 CPython/3.8.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 |
cde0bac98dcef7ffd9e01602b9e860c80a3dea394d4a267b9cf67de1366b0c2f
|
|
MD5 |
25eb0a71d957df363e801a31cc27c618
|
|
BLAKE2b-256 |
738aa64b8cbab423f315286d8531911ac92c620d0847dcd7a2ee7df399d8e552
|