每ios 文档
approved使用多种因素来确定退款请求是否被批准或拒绝。为了帮助通知和改进退款过程,当用户要求退款时,您可以将用户在应用程序内购买的消费信息发送到App。App使用您提供的消费信息通知其退款决定。当客户启动应用程序内可消费采购的退款请求时,customer通过App通知向您的服务器发送一个CONSUMPTION_REQUEST notification_type。如果客户提供了同意,则通过调用这个API并将ConsumptionRequest中的消费数据发送到customer来响应。如果没有,则通过调用此API并在customerConsented中将ConsumptionRequest值设置为false来响应;不要发送任何其他信息。
现在我们得到了一个CONSUMPTION_REQUEST notification_type,其内容是
{Environment:PROD
NotificationType:CONSUMPTION_REQUEST
Password:xxxx0b91b407f5xxxxxxxxx
ExpirationIntent:
AutoRenewAdamID:
AutoRenewStatus:
AutoRenewProductID:
AutoRenewStatusChangeDate:{AutoRenewStatusChangeDate: AutoRenewStatusChangeDateMS: AutoRenewStatusChangeDatePST:}
BID:com.boundle.id
BVRS:89
UnifiedReceipt:{
Status:0
Environment:Production
LatestReceipt:MIISegYJKoZIhvcNXXXXXXXXXX
LatestReceiptInfo:[]
PendingRenewalInfo:[]
}
}似乎没有收据交易身份,客户要求退款。
然后我们尝试通过https://buy.itunes.apple.com/verifyReceipt和通知的LatestReceipt获取收据的详细信息。
{ receipt:
{ receipt_type: 'Production',
adam_id: 125258871623,
app_item_id: 125258871623,
bundle_id: 'com.boundle.id',
application_version: '89',
download_id: null,
version_external_identifier: 843111111,
receipt_creation_date: '2021-07-18 04:48:20 Etc/GMT',
receipt_creation_date_ms: '1626583700000',
receipt_creation_date_pst: '2021-07-17 21:48:20 America/Los_Angeles',
request_date: '2021-07-20 08:02:21 Etc/GMT',
request_date_ms: '1626768141824',
request_date_pst: '2021-07-20 01:02:21 America/Los_Angeles',
original_purchase_date: '2021-07-07 00:03:57 Etc/GMT',
original_purchase_date_ms: '1625616237000',
original_purchase_date_pst: '2021-07-06 17:03:57 America/Los_Angeles',
original_application_version: '87',
in_app: [] },
environment: 'Production',
status: 0 }
{ receipt_type: 'Production',
adam_id: 125258871623,
app_item_id: 125258871623,
bundle_id: 'com.boundle.id',
application_version: '89',
download_id: null,
version_external_identifier: 843111111,
receipt_creation_date: '2021-07-18 04:48:20 Etc/GMT',
receipt_creation_date_ms: '1626583700000',
receipt_creation_date_pst: '2021-07-17 21:48:20 America/Los_Angeles',
request_date: '2021-07-20 08:02:21 Etc/GMT',
request_date_ms: '1626768141824',
request_date_pst: '2021-07-20 01:02:21 America/Los_Angeles',
original_purchase_date: '2021-07-07 00:03:57 Etc/GMT',
original_purchase_date_ms: '1625616237000',
original_purchase_date_pst: '2021-07-06 17:03:57 America/Los_Angeles',
original_application_version: '87',
in_app: [] }也没有退款收据信息。
每个文档,一旦收到CONSUMPTION_REQUEST,我们应该通过API发送消费信息
PUT https://api.storekit.itunes.apple.com/inApps/v1/transactions/consumption/{originalTransactionId}
我们如何从通知中获得originalTransactionId?
发布于 2021-08-18 03:56:08
在我的例子中,通知有效负载的顶层属性中有original_transaction_id。
https://stackoverflow.com/questions/68451858
复制相似问题