Система обработки транзакций в iTunes устроена следующим образом: developer.apple.com
- Приложение получает информацию о продукте. developer.apple.com
- Приложение запрашивает оплату, когда пользователь выбирает продукт в магазине приложения. developer.apple.com
- Приложение доставляет продукт. developer.apple.com
- App Store вызывает службу наблюдения за очередью транзакций после обработки запроса на оплату. developer.apple.com
- Приложение записывает информацию о покупке для будущих запусков, загружает приобретённый контент и помечает транзакцию как завершённую. developer.apple.com
Центральную роль в обеспечении взаимодействия приложения с App Store через платформу StoreKit играет очередь транзакций. developer.apple.com В неё добавляют работу, с которой App Store должен действовать, например запрос на обработку платежа. developer.apple.com Когда состояние транзакции меняется, например, при успешном выполнении платёжного запроса, StoreKit вызывает наблюдателя очереди транзакций приложения. developer.apple.com
Также в iTunes есть две схемы верификации платёжных транзакций: habr.com
- Простая. habr.com Подтверждение транзакции происходит в результате взаимодействия мобильного приложения и App Store. habr.com
- Сложная. habr.com Во втором случае вводится дополнительный этап подтверждения с собственного сервера посредством обращения к сервису iTunes Connect. habr.com Факт успешного подтверждения платёжной транзакции через iTunes Connect считается достаточным для верификации платежа. habr.com