Хабр Курсы для фронтендеров
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!

Интересно, что вы отдельно не тащите платформу в общую фичу. В TMA я бы еще жестко разделял три вещи: client_hint, initData и источник первого входа. client_hint можно подделать, initData подтверждает Telegram, а first-touch нужен для аналитики. Если смешать эти слои, легко принять «открыли TMA» за подтвержденную атрибуцию. Особенно после оплаты: redirect или deep link лучше считать отдельным транспортным событием, а не новой сессией. Тогда общий код не размывает ни безопасность, ни воронку.
Как я собрал на одном Angular коде: личный кабинет для сайта, Telegram Mini App, iOS и Android