gitlog / FNSApi

PHP API для проверки и получения фискальных чеков через официальное API ФНС России.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Библиотека FNSApi

PHP API для проверки и получения фискальных чеков через официальное API ФНС России.

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

Установка библиотеки через Composer

Для установки библиотеки через Composer используйте эту команду:

composer require codus/fns-api

Использование библиотеки

Приведенный ниже код проверяет чек на существование и получает информацию по чеку.

ВАЖНО! Перед получением информации по чеку обязательно проверяйте чек на существование.

ВАЖНО! Методы для проверки существования чека (checkTicket) и получения информации о чеке (getTicket) возвращают ответ который выполняется асинхронно, учтите это при написании кода. У ответов на запрос существует метод getProcessingStatus, который возвращает статус запроса. Существуют два статуса: PROCESSING и COMPLETED. Если статус у ответа на запрос возвращается COMPLETED, вы можете получить результат запроса в ответе с помощью метода getResult.

// Создание класса для взаимодействия с API.
// Имя пользователя может быть любое.
$api = new FNSApi(<АДРЕС_СЕРВЕРА>, <ИМЯ_ПОЛЬЗОВАТЕЛЯ>, <МАСТЕР-ТОКЕН>);
// Создание модели, содержащую информацию о чеке.
// Тип операции
//   Тип данных: int
//     Возможные значения:
//       1 - Приход
//       2 - Возврат прихода
//       3 - Расход
//       4 - Возврат расхода
// Дата и время осуществления расчета
//   Тип данных: Carbon
// Сумма, в копейках
//   Тип данных: int
//     Возможные значения:
//       От 0 до 281474976710655
// Заводской номер фискального накопителя (ФН)
//   Тип данных: int
//     Возможные значения:
//       16 символов (только цифры)
// Порядковый номер фискального документа (ФД)
//   Тип данных: int
//     Возможные значения:
//       От 1 до 4294967295
// Фискальный признак документа (ФП или ФПД)
//   Тип данных: int
//     Возможные значения:
//       От 1 до 4294967295
$ticket = new Ticket(
    <ТИП_ОПЕРАЦИИ>,
    <ДАТА_И_ВРЕМЯ>,
    <СУММА>,
    <НОМЕР_ФН>,
    <ПОРЯДКОВЫЙ_НОМЕР_ФД>,
    <ФИСКАЛЬНЫЙ_ПРИЗНАК_ДОКУМЕНТА>
);
// Получение идентификатора сообщения для проверки чека на существование.
$messageId = $api->getCheckTicketMessageId($ticket);
// Получение ответа на запрос о проверке чека на существование.
$checkTicketResponse = $api->checkTicket($messageId);
// Получение результата выполнения запроса о проверке чека на существование.
$checkTicketResult = $checkTicketResponse->getResult();
// Получение идентификатора сообщения для получения информации по чеку.
$messageId = $api->getGetTicketMessageId($ticket);
// Получение ответа на запрос о получении информации по чеку.
$getTicketResponse = $api->getTicket($messageId);
// Получение результата выполнения запроса о получении информации по чеку.
$getTicketResult = $getTicketResponse->getResult();

About

PHP API для проверки и получения фискальных чеков через официальное API ФНС России.

License:MIT License


Languages

Language:PHP 100.0%