Клиентский экран не является источником истины
Поля, отправленные из браузера Mini App, могут быть изменены пользователем. Нельзя принимать цену, роль администратора или статус оплаты только потому, что они пришли из интерфейса. Сервер должен получать авторитетные значения из собственных данных и проверять допустимость операции.
Проверяйте личность и доступ
Данные запуска Telegram необходимо валидировать на сервере по актуальной документации платформы и учитывать срок их действия. После установления личности каждый запрос всё равно проверяется на право доступа к конкретному объекту. Знание номера заказа не должно давать возможность читать чужой заказ.
Разделяйте показ и подтверждение
Экран может показать предварительную сумму или уведомление об оплате, но выдача товара требует подтверждённого события от провайдера. Повторные запросы не должны создавать вторую операцию. До запуска включите в проверку подмену идентификаторов, изменение полей и повторную отправку одного действия.
