Более или менее актуальная документация

This commit is contained in:
2021-12-19 22:30:21 +08:00
parent fdc5ab112a
commit 58bc344a86
14 changed files with 405 additions and 1182 deletions

View File

@@ -1,26 +1,42 @@
# Документация к библиотеке
<a id="toc"></a>
## Содержание
* [Общий алгоритм](#getstarted)
* [Сущность](entity.md)
* [Коллекция сущностей](collection.md)
* [Мониторинг ККТ](monitoring.md)
* [Фискализация документа](fiscalizing.md)
* [Обработка ответа API](response.md)
Если вы нашли опечатку или какое-то несоответствие — делайте pull-request.
<a id="getstarted"></a>
## Общий алгоритм
1. Задать настройки ККТ
2. Собрать данные о покупателе
3. Собрать данные о продавце
4. Собрать данные о предметах расчёта (товары, услуги и пр.)
5. Создать документ, добавив в него покупателя, продавца и предметы расчёта
6. Отправить документ на регистрацию:
6.1. *Необязательно:* задать `callback_url`, на который АТОЛ отправит HTTP POST о состоянии документа.
7. Запомнить `uuid` из пришедшего ответа, поскольку он пригодится для последующей проверки статуса фискализации.
> Если с документом был передан `callback_url`, то ответ придёт на этот самый URL.
Если с документом **НЕ** был передан `callback_url` **либо** callback от АТОЛа не пришёл в течение 300 секунд (5 минут), нужно запрашивать вручную по `uuid`, пришедшему от АТОЛа в ответ на регистрацию документа.
8. Проверить состояние документа:
8.1. взять `uuid` ответа, полученного на запрос фискализации;
8.2. отправить его в запросе состояния документа.
1. Создать документ `AtolOnline\Entities\Receipt` или `AtolOnline\Entities\Correction`, добавив в него все необходимые
данные
2. Отправить документ на регистрацию:
2.1. *Необязательно:* при отправке задать `callback_url`, на который АТОЛ отправит HTTP POST о состоянии документа;
2.2. *Необязательно:* при отправке задать `external_id`, чтобы присвоить свой уникальный идентификатор документа;
3. Запомнить `uuid` из пришедшего ответа, поскольку он пригодится для последующей проверки статуса фискализации.
> Если с документом был передан `callback_url`, то ответ придёт на этот самый URL.
> Он должен быть обработан вашим сервисом в соответствии с бизнес-процессом.
> Если с документом **не был** передан `callback_url` **либо** callback от АТОЛа не пришёл в течение 300 секунд
> (5 минут), нужно запрашивать вручную по `uuid`, пришедшему от АТОЛа в ответ на регистрацию документа.
4. Проверить состояние документа:
4.1. взять `uuid` ответа, полученного на запрос фискализации;
4.2. отправить его в запросе состояния документа.
> Данные о документе можно получить только в течение 32 суток после успешной фискализации.
В зависимости от специфики бизнеса, в документах можно/нужно передавать также и другую информацию. Подробности в
документациях и исходниках.
В зависимости от специфики бизнеса, в документах можно/нужно передавать разную информацию. Подробности в документации
АТОЛ Онлайн и исходниках библиотеки.
### Об отправке электронного чека покупателю
## Об отправке электронного чека покупателю
После успешной фискализации документа покупатель автоматически получит уведомление **от ОФД**, который используется в
связке с вашей ККТ:
@@ -31,19 +47,3 @@
* если на стороне ОФД необходима и подключена услуга СМС-информирования (уточняйте подробности о своего ОФД).
> Если заданы email и телефон, то ОФД отдаёт приоритет email.
## Подготовка документа
1. [Работа с клиентами (покупателями)](client.md)
2. [Работа с компанией (продавцом)](company.md)
3. [Работа с оплатами](payments.md)
4. [Работа со ставками НДС](vats.md)
5. [Работа с предметами расчёта](items.md)
6. [Работа с данными коррекции](correction_info.md)
7. [Работа с документами](documents.md)
8. [Работа с ККТ](kkt.md)
9. [Мониторинг ККТ](monitoring.md)
---
Если вы нашли опечатку или какое-то несоответствие — делайте pull-request.