Страница и виджет активации

Оплату принимаете вы, активацию целиком ведём мы. От вас — отдать клиенту ссылку из заказа или поставить на сайт виджет: клиент сам присылает данные, а мы проверяем их, включаем подписку и ведём его до «Подписка включена».

Обновлено 1 октября 2026 г. · 4 мин чтения
Markdown

Как это выглядит

Это живой пример — тот же виджет, что увидит ваш клиент. Вставьте любой ID вида 9959bd2c-8b17-4d16-b9c4-19d972827140 и нажмите «Активировать». Сверху — где открыт виджет и оформление: наше по умолчанию или ваш лейбл.

Всё на нас — от вас только ссылка

Делаем мы
  • Объясняем клиенту, что прислать, и даём кнопку прямо на нужную страницу сервиса
  • Проверяем данные до отправки: неполный ID, ID команды вместо личного, не та страница
  • Включаем подписку и показываем статус до «Подписка включена»
  • Спрашиваем клиента сами, если сервис просит проверку личности или решение «включить сейчас»
  • Отвечаем клиенту по активации — поддержка Astrum Shop
Остаётся вам
  • Принять оплату и создать заказ — POST /v1/orders
  • Отдать клиенту ссылку из заказа или поставить виджет
  • Отвечать по оплате и возврату

Хранить данные клиентов не нужно: ID, токены и session key идут к нам напрямую, мимо вашего сервера.

Подключение

  1. Создайте заказ — как обычно. В ответе — ссылка на страницу активации этого заказа, activation.page_url. У способов без активации (key, account) и у «нового аккаунта» ссылки нет: null.
  2. Отдайте ссылку клиенту кнопкой «Включить подписку», сообщением в боте, письмом. Страница живёт на отдельном адресе для клиентов — https://activate.astrum.shop, витрина магазина там не открывается — и работает на компьютере и на телефоне.
  3. Или поставьте виджет у себя две строки на странице «Спасибо за заказ»: скрипт — один раз на странице, элемент — там, где нужен виджет, в url — page_url из заказа. Адрес сайта сначала добавьте в кабинете: «Интеграция → Страница активации» — на других сайтах виджет не откроется.
<script src="https://activate.astrum.shop/activation.js" async></script>
<astrum-activation url="https://activate.astrum.shop/#t=k7Qm2xR9…"></astrum-activation>

Высоту виджет подбирает сам и подстраивается под колонку от 320 px. Статус у себя на странице — событие status на элементе (event.detail.status): waiting → processing → completed; не вышло — failed. На сервер — как сейчас: order.updated на каждый шаг, в том числе когда данные прислал клиент со страницы.

Если у сайта свой заголовок Content-Security-Policy, разрешите в нём https://activate.astrum.shop — в script-src для скрипта и в frame-src для окна виджета.

В песочнице

Ссылка есть и у тестового заказа: она ведёт на демо-страницу, где активацию можно пройти без оплаты и без настоящего аккаунта клиента.

Что видит клиент

Тексты — наши, на «вы» и без технических слов. Если нужен ответ клиента, страница спросит его сама.

Включаем подписку

Данные получили; обычно это пара минут, статус обновится сам.

Проверка личности

Сервис просит подтвердить личность на аккаунте: кнопка ведёт на страницу сервиса.

На аккаунте уже есть подписка

Можно дождаться её окончания или включить сразу: дни текущей сгорят.

Подписка включена

И кнопка «Вернуться в магазин», если вы указали адрес в кабинете.

Оформление

По умолчанию на странице и в виджете — Astrum Shop: наш дизайн и наше имя. По договорённости — ваш лейбл. Оформление включаем мы: напишите в поддержку, договоримся.

Astrum Shop
по умолчанию

Наш дизайн и наше имя — у всех.

Совместный

Ваши логотип и имя, внизу — «Работает на Astrum Shop».

Свой лейбл

Ваши имя, логотип, цвет и тема; нашего имени на странице нет.

Отдельный адрес страницы под ваш домен не нужен: чтобы клиент не уходил с вашего сайта, поставьте виджет — он открывается прямо у вас на странице, в том же оформлении.

Безопасность

Ссылка — ключ к одному заказу

Она открывает активацию только своего заказа — ни баланса, ни других заказов, ни товара по ней не видно. Ключ стоит после #: браузер не отправляет его на сервер, в логи и Referer он не попадает. Отдавайте ссылку только покупателю.

Если форма у вас своя

Всё по-прежнему: данные клиента отправляйте через POST /v1/orders/{order_id}/activate — раздел «Активация». Страница и API — одна активация: попытки у них общие, и что клиент прислал на странице, вы увидите в заказе.

Страница помогла?