atol-online/README.md

82 lines
4.2 KiB
Markdown
Raw Normal View History

2020-01-11 06:30:25 +00:00
# АТОЛ Онлайн
2021-12-19 14:58:47 +00:00
Библиотека для фискализации чеков по 54-ФЗ через [облачные ККТ АТОЛ](https://online.atol.ru/).
2021-12-02 08:14:01 +00:00
2021-12-20 02:41:46 +00:00
[![GitHub Workflow Status (master)](https://img.shields.io/github/workflow/status/anthonyaxenov/atol-online/CI/master?logo=github)](https://github.com/anthonyaxenov/atol-online/actions/workflows/ci.yml)
[![codecov](https://codecov.io/gh/anthonyaxenov/atol-online/branch/master/graph/badge.svg?token=WR2IV7FTF0)](https://codecov.io/gh/anthonyaxenov/atol-online)
[![Stable Version](https://img.shields.io/packagist/v/axenov/atol-online?label=stable)](https://packagist.org/packages/axenov/atol-online)
[![Packagist PHP Version Support](https://img.shields.io/packagist/php-v/axenov/atol-online?color=%23787cb4)](https://packagist.org/packages/axenov/atol-online)
[![License](https://img.shields.io/packagist/l/axenov/atol-online?color=%23369883)](LICENSE)
2022-01-30 15:00:48 +00:00
[![Liberapay](https://img.shields.io/liberapay/patrons/AnthonyAxenov.svg?logo=liberapay)](LICENSE)
2021-12-20 02:41:46 +00:00
2021-12-02 08:14:01 +00:00
**[Документация](/docs/readme.md)**
2021-11-20 16:33:43 +00:00
2021-12-19 14:58:47 +00:00
Текущие поддерживаемые версии АТОЛ Онлайн:
2021-11-20 16:33:43 +00:00
2021-12-19 14:58:47 +00:00
| Протокол | API | ФФД | Статус |
|----------|-----|------|----------------|
| v4 | 5.8 | 1.05 | Поддерживается |
| v5 | 2.0 | 1.2 | В планах |
## Плюшечки
* Мониторинг ККТ и ФН
2021-12-20 02:41:46 +00:00
* Фискализация документов на облачной ККТ
* Валидация данных до отправки документа на ККТ (насколько это возможно, согласно схеме)
* Расчёты денег в копейках
2021-12-20 02:41:46 +00:00
* PSR-4 автозагрузка, покрытие настоящими тестами, fluent-setters, докблоки
2020-01-11 06:30:25 +00:00
## Системные требования
* php8.0+
* [composer](https://getcomposer.org/)
* расширения php (скорее всего, устанавливать их отдельно не придётся):
* `php-json`
* `php-curl`
* `php-mbstring`
* `php-tokenizer`
2020-01-11 06:30:25 +00:00
## Начало работы
### Подключение библиотеки
2021-12-19 14:58:47 +00:00
1. Подключить пакет к проекту:
2020-01-11 06:30:25 +00:00
```bash
composer require axenov/atol-online
```
2. В нужном месте проекта подключить автозагрузчик composer-зависимостей, если это не сделано ранее:
2020-01-11 06:30:25 +00:00
```php
require($project_root . '/vendor/autoload.php');
2020-01-11 06:30:25 +00:00
```
где `$project_root` — абсолютный путь к корневой директории вашего проекта.
> При использовании фреймворков это обычно не требуется.
2020-01-11 06:30:25 +00:00
### Тестирование кода библиотеки
Файлы тестов находятся в директории `/tests` корня репозитория.
Для запуска тестов необходимо перейти в корень репозитория и выполнить одну из команд:
2020-01-11 06:30:25 +00:00
```bash
composer test # обычное тестирование
2021-12-19 14:58:47 +00:00
composer coverage # тестирование с покрытием
2020-01-11 06:30:25 +00:00
```
2021-12-19 14:58:47 +00:00
После тестирования с покрытием создаётся отчёт в директории `.coverage` в корне репозитория.
2021-12-20 02:41:46 +00:00
### Использование библиотеки
2020-01-11 06:30:25 +00:00
Весь исходный код находится в директории [`/src`](/src).
2021-12-20 02:41:46 +00:00
Вы имеете право использовать и распространять его на условиях **[лицензии MIT](LICENSE)**.
2020-01-11 06:30:25 +00:00
2021-12-20 02:41:46 +00:00
1. Обращайтесь к [документации библиотеки](/docs)
2. Обращайтесь к [исходному коду](/src) и описанным докблокам
3. Обращайтесь к [тестам](/tests/AtolOnline/Tests)
4. Используйте нормальную IDE
2020-01-11 06:30:25 +00:00
## Дополнительные ресурсы
* [Документация АТОЛ Онлайн](https://online.atol.ru/lib/)
2022-01-30 15:00:48 +00:00
[![Donate using Liberapay](https://liberapay.com/assets/widgets/donate.svg)](https://liberapay.com/AnthonyAxenov/donate)