Я читал различные потоки в подписках на автоматическое продление подписки на приложения, и я думаю, что собрал большую часть необходимой мне информации, но есть несколько недостающих частей. Я надеюсь, кто-то может мне помочь.
Ситуация: У меня есть различные пакеты подписки, на которые пользователь может подписаться (например, пакет A за £ 1 в месяц, пакет B за £ 2 в месяц и т.д.). Я сохраняю информацию о подписке пользователя в моей базе данных. Когда пользователь входит в систему, я проверяю, какой пакет он включен, и если он истек или нет. Мой сайт, андроид и iOS используют одну и ту же базу данных, поэтому этот подход имеет смысл.
Подписывание пользователей через покупку через приложение кажется достаточно простым. Я проверяю payQueue, и как только платеж будет очищен, я могу обновить свою базу данных.
Мои вопросы:
1) Мое понимание заключается в том, что пользователь может использовать iTunes для управления своей подпиской. Скажем, они заходят в iTunes и отменяют свою подписку, как я могу получать уведомления, чтобы обновить свою базу данных? Нужен ли мне демон, который проверяет истекшие подписки, чтобы узнать, обновлен ли пользователь?
2) Если пользователь хочет обновить свою подписку из пакета A в пакет B, как мне обрабатывать цены? Скажем, 1 января они покупают пакет A, я беру их в размере 1,00 фунтов стерлингов и устанавливаю дату истечения срока действия до 31 января. 15 января они хотят перейти на пакет B через покупку через приложение. В идеале я бы поручил им 2 фунта за пакет B минус 0,50 доллара за кредит, который у них есть для пакета A, и установил новую дату истечения срока действия 14-го февраля. Тем не менее, Apple заставляет меня связывать каждый пакет с ценой уровня. Как я могу справиться с этим? Я не хочу, чтобы пользователь дождался конца месяца, чтобы разместить их в пакете более высокого уровня... если они обновлены в середине месяца, это означает, что они хотят, чтобы новый пакет контента B доставлял их немедленно.
Любая помощь оценивается!
Спасибо!