Мы создаем платформу видео по запросу на основе подписки, которая позволяет нашим подписанным пользователям получать доступ к фильмам с различных устройств, включая iOS, Интернет и т. д.
Таким образом, независимо от того, откуда пользователь подписался, он должен иметь доступ к контенту с любых устройств, которые мы поддерживаем.
Поскольку мне нужно поддерживать состояние пользователя в центральной системе (чтобы все устройства могли запрашивать и разрешать/запрещать доступ к платному контенту).
Я прочитал несколько документов по теме «Покупки в приложениях iOS» и пришел к выводу, что мы подходим для категории автоматически продлеваемой подписки.
Я уже интегрировал подписки через Roku и использую это как образец. Для пользователей, оформляющих подписку через Интернет, я также интегрировал платежные системы, такие как Amazon Payments, Stripe и PayPal, транзакции для которых инициируются уже созданной мной платформой выставления счетов за подписки.
Мой сервер (или, по сути, конечная точка) должен иметь возможность получать следующие биты информации, предпочтительно напрямую из iTunes, а не из моего приложения.
- Уведомление об успешной подписке пользователя на один из моих продуктов
- Уведомление, когда iTunes успешно продлевает подписку, т. е. если пользователь подписан на ежемесячный продукт, то в начале следующего месяца мне нужно получить уведомление от iTunes о том, что с пользователя была успешно списана плата за предстоящий месяц.
- Уведомление, когда iTunes успешно возвращает деньги пользователю по какой-либо причине
- Уведомление, когда пользователь отменяет подписку непосредственно из iTunes (не из приложения). Я знаю, что в этом случае это будет означать, что он останавливает автоматическое обновление, но мне все равно нужно знать, что это произошло.
- Уведомление, когда пользователь отменяет автоматическое продление.
Поддерживает ли iTunes какое-либо из этих действий через Webhook, Push или IPN (мгновенные уведомления о платежах) и т. д.? Я не сталкивался с этим, если это так.
Я знаю, что есть что-то, называемое Проверка квитанций, но это кажется мне не очень хорошим решением, так как мне нужно как можно скорее узнать из iTunes, что один из вышеперечисленных потоков произошел.
Каковы обходные пути для получения этой информации, если таковые имеются? Я боюсь, что получение этой информации из моего приложения не является ни своевременным, ни гарантированным.