|
@@ -750,7 +750,7 @@ class InAppPurchaseView(View):
|
|
|
refund_progress=2)
|
|
|
return HttpResponse(status=200)
|
|
|
|
|
|
- elif str(decoded_payload.rawNotificationType) == "REFUND_DECLINED":
|
|
|
+ elif str(decoded_payload.rawNotificationType) == "REFUND_REVERSED":
|
|
|
# 一种通知类型,表示 App Store 由于客户提出的争议而撤销了先前批准的退款。如果您的应用程序因相关退款而撤销了内容或服务,则需要恢复这些内容或服务。
|
|
|
# 此通知类型可适用于任何应用程序内购买类型:消耗品、非消耗品、不可续订订阅和自动续订订阅。对于自动续订,当 App Store 撤销退款时,续订日期保持不变。
|
|
|
decoded_transaction_information = signed_data_verifier.verify_and_decode_signed_transaction(
|
|
@@ -758,6 +758,7 @@ class InAppPurchaseView(View):
|
|
|
transaction_id = decoded_transaction_information.transactionId
|
|
|
logger.info(
|
|
|
'App Store服务器通知,撤销了批准的退款,不恢复套餐,手动处理 transaction_id:{}'.format(transaction_id))
|
|
|
+ return HttpResponse(status=200)
|
|
|
|
|
|
elif str(decoded_payload.rawNotificationType) == "REFUND_DECLINED":
|
|
|
decoded_transaction_information = signed_data_verifier.verify_and_decode_signed_transaction(
|
|
@@ -766,6 +767,8 @@ class InAppPurchaseView(View):
|
|
|
orders_qs = Order_Model.objects.filter(transaction_id=transaction_id)
|
|
|
if not orders_qs.exists():
|
|
|
return HttpResponse(status=400)
|
|
|
+ logger.info(
|
|
|
+ 'App Store服务器通知, 不批准退款, transaction_id:{}'.format(transaction_id))
|
|
|
InAppRefund.objects.filter(transaction_id=transaction_id).update(refund_progress=3)
|
|
|
|
|
|
else:
|