This repository has been archived on 2025-07-14. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
atol-online/README.md
T

91 lines
4.0 KiB
Markdown
Raw Normal View History

2020-01-11 14:30:25 +08:00
# АТОЛ Онлайн
2021-11-21 00:33:43 +08:00
---
2021-11-28 12:01:28 +08:00
**В этой ветке проводится глубокий рефакторинг, стабилизация и активная подготовка к `v1.0.0`. Документация
актуализируется постепенно.**
2021-11-21 00:33:43 +08:00
---
2021-05-25 11:48:37 +08:00
[![Master build](https://github.com/anthonyaxenov/atol-online/actions/workflows/master.yml/badge.svg)](https://github.com/anthonyaxenov/atol-online/actions/workflows/master.yml)
[![Dev build](https://github.com/anthonyaxenov/atol-online/actions/workflows/dev.yml/badge.svg)](https://github.com/anthonyaxenov/atol-online/actions/workflows/dev.yml)
2020-01-11 14:30:25 +08:00
Библиотека для фискализации чеков по 54-ФЗ через [облачную ККТ АТОЛ](https://online.atol.ru/).
**[Документация](/docs/readme.md)**
2021-11-28 12:01:28 +08:00
Текущие поддерживаемые версии:
| Протокол | API | ФФД | Статус |
|----------|-----|------|-------------|
| v4 | 5.7 | 1.05 | Рефакторинг |
| v5 | 2.0 | 1.2 | В планах |
## Плюшечки
* Мониторинг ККТ и ФН
* Фискализация докумнетов на облачной ККТ
* Валидация данных до отправки документа на ККТ (насколько это возможно, согласно схеме)
* Расчёты денег в копейках
* Фактически полное покрытие тестами
* PSR-4 автозагрузка
2020-01-11 14:30:25 +08:00
## Системные требования
2021-11-28 12:01:28 +08:00
* php8.0+
* [composer](https://getcomposer.org/)
* расширения php (скорее всего, устанавливать их отдельно не придётся):
* `php-json`
* `php-curl`
* `php-mbstring`
* `php-tokenizer`
2020-01-11 14:30:25 +08:00
## Начало работы
### Подключение библиотеки
2021-11-28 12:01:28 +08:00
1. Установить библиотеку пакет к проекту:
2020-01-11 14:30:25 +08:00
```bash
composer require axenov/atol-online
```
2021-11-28 12:01:28 +08:00
2. В нужном месте проекта подключить автозагрузчик composer-зависимостей, если это не сделано ранее:
2020-01-11 14:30:25 +08:00
```php
2021-11-28 12:01:28 +08:00
require($project_root . '/vendor/autoload.php');
2020-01-11 14:30:25 +08:00
```
2020-01-11 15:57:39 +08:00
где `$project_root` — абсолютный путь к корневой директории вашего проекта.
2021-11-28 12:01:28 +08:00
> При использовании фреймворков это обычно не требуется.
2020-01-11 14:30:25 +08:00
### Тестирование кода библиотеки
Файлы тестов находятся в директории `/tests` корня репозитория.
Для запуска тестов необходимо перейти в корень вашего проекта и выполнить команду:
```bash
2021-11-28 12:01:28 +08:00
composer test
2020-01-11 14:30:25 +08:00
```
## Использование библиотеки
Весь исходный код находится в директории [`/src`](/src).
2021-11-28 12:01:28 +08:00
**Комментарии phpdoc есть буквально везде. Прокомментировано вообще всё.**
2020-01-11 14:30:25 +08:00
2021-11-28 12:01:28 +08:00
1. Обращайтесь к [документации библиотеки](/docs).
2020-01-11 14:30:25 +08:00
2. Обращайтесь к [исходному коду](/src).
2021-11-28 12:01:28 +08:00
3. Обращайтесь к [тестам](/tests).
4. Используйте подсказки вашей IDE.
2020-01-11 14:30:25 +08:00
Тогда у вас не возникнет затруднений.
## Дополнительные ресурсы
2021-11-28 12:01:28 +08:00
* [Документация АТОЛ](https://online.atol.ru/lib/)
**[Документация к библиотеке](/docs/readme.md)**
* Telegram-канал: [@atolonline_php](https://t.me/atolonline_php)
* Функционал, находящийся в разработке: [ROADMAP.md](ROADMAP.md)
2020-01-11 14:30:25 +08:00
## Лицензия
2021-11-28 12:01:28 +08:00
Вы имеете право использовать и распространят код из этого репозитория на условиях **[лицензии MIT](LICENSE)**.