Обработка уведомлений о возврате средств за покупки расходных материалов в приложении

#ios #in-app-purchase #storekit #receipt-validation

#iOS #покупка в приложении #storekit #получение-проверка

Вопрос:

Согласно документации Apple, чтобы идентифицировать транзакцию, ProductID и соответствующие даты, мы должны «Найти самую последнюю транзакцию для product_id в unified_receipt.latest_receipt_info».

Мой вопрос в том, как мне узнать product_id? В моем приложении есть несколько покупок расходных материалов в приложении.

Один вариант, который я изучал, заключался в том, чтобы [локально подтвердить получение]2 двоичных объекта квитанции в поле ResponseBody.unified_receipt.latest_receipt. Но для этого мне нужен identifierForVendorId, а identifierForVendorId не отправляется в запросе.

Я не упоминаю удаленную проверку получения, потому что Apple четко указала в документации, что «Возвращенные транзакции отсутствуют в ответе JSON при вызове конечной точки verifyReceipt с квитанцией, содержащей возвращенные транзакции, за исключением автоматически возобновляемых подписок»..

Спасибо! С нетерпением ждем новостей о том, как другие компании осуществили возврат средств за свои продукты без подписки.

Комментарии:

1. Зачем вам это identifierForVendor ? Идентификаторы продуктов — это ваши идентификаторы продуктов. Вы должны знать, что это такое.

2. У меня много идентификаторов product_id. Хотите рассматривать это как непрозрачную строку. Кроме того, мы не будем знать, какой расходный product_id был возвращен, если запрос содержит несколько квитанций.

3. Вы нашли решение для этого? Есть ли у вас собственный сервер, на котором вы проверяете это?