"""Т-Банк интернет-эквайринг — чистый интеграционный слой (PR-C). Модули здесь НЕ импортируют `app.core.config` и не пишут в БД: все секреты (`terminal_key`, `password`, `base_url`) принимаются аргументами функций/ конструктора. Причина — параллельный PR-B вводит эти поля в `config.py`, а проводку (роутер, `_PUBLIC_PATHS`, `payments`-таблицы, статус-машина) делает следующий PR-D. См. `mera-tbank-acquiring-recon.md` (корень репо) §3/§9 для полной схемы разбивки. - `token.py` — подпись `Token` запросов + проверка подписи нотификаций (никогда не кидает исключение на враждебном входе). - `notification.py` — строгий типизированный разбор тела нотификации ПОСЛЕ проверки подписи (`parse_notification`) — сырой `dict` дальше не уходит. - `receipt.py` — сборка `Receipt` (54-ФЗ, ФФД 1.05) для услуги. - `tbank_client.py` — httpx-клиент `Init/GetState/CheckOrder/Confirm/Cancel`. Docs: https://developer.tbank.ru/eacq/intro """ from __future__ import annotations