如何将苹果付款通知与我的自定义付款记录相关联?

Posted

技术标签:

【中文标题】如何将苹果付款通知与我的自定义付款记录相关联?【英文标题】:How to associate apple payment notification with my custom payment records? 【发布时间】:2019-05-25 12:27:35 【问题描述】:

我想为我的应用添加订阅。我已经可以进行应用内购买,但我有一个问题:服务器到服务器的付款通知没有与我的系统相关的数据,所以我不知道我必须更新哪个记录通知到达时。

我正在尝试关注this。

我想要一个类似这张图片的流程,但我在支付 API 中找不到允许我添加 bill_id 的参数。

【问题讨论】:

ApplePay 与 IAP 不同。你用的是哪个?您的流程看起来不适合 IAP。 @Paulw11 我更新了描述,我正在使用这个developer.apple.com/documentation/storekit/in-app_purchase/… 您绘制的流程不是它的工作方式。您在设备中发起购买。然后,您将收据从设备发送到您的服务器进行验证。一旦您的应用程序从您的服务器收到确认它已验证收据并激活订阅,设备将完成与 StoreKit 的交易。 Apple 与您的服务器通信是您可以使用的可选流程。您可以将用户最初购买时提供的收据中的数据与 Apple 向您的服务器提供的收据相关联,以确定正在续订的订阅等。 @Paulw11 是这样的吗?用户付款 > 获取收据 > 从我的服务器对苹果服务器进行验证 > 更新用户帐户 > 收听下一个状态更新的通知,如续订、取消等。 【参考方案1】:

最后,您不能将自定义密钥添加到支付流程中(就像其他支付网关允许的那样),您必须将 receipt 关联到您的系统以跟踪用户的账单。您必须使用validate receipt Apple 的 api 来考虑付款已完成且有效。所以付款流程是sync,您无需等待任何通知即可考虑付款完成,但您必须收听通知才能在订阅取消或续订时收到通知。这是解决方案的图形。

【讨论】:

正确如果我错了.. 但在这个流程中,任何拥有收据的人实际上都可以将其用作付费会员,对吧?什么将它与特定用户绑定? 检查流程,您的服务器在中间,您可以将收据与数据库中的特定用户相关联。此过程仅在购买时进行。但是,是的,我想如果您可以从其他用户那里窃取收据并在他/她注册之前使用它,您应该能够将您的会员资格设置为付费。我认为这几乎是不可能的,因为流程会在几秒钟内发生。【参考方案2】:

好像可以在创建购买时使用appAccountToken:

appAccountToken create purchase server notification

【讨论】:

以上是关于如何将苹果付款通知与我的自定义付款记录相关联?的主要内容,如果未能解决你的问题,请参考以下文章

将定期付款(订阅)与 Coinbase 商务相结合

php 在WooCommerce结帐付款之前添加自定义通知

接收 SPLIT_CUSTOM 0.00 美元的自定义投标付款记录

Bluemix 应用程序上的自定义域的 SSL 证书传播问题

Braintree:如何使用自定义 UI 选择付款方式并获取付款方式 nonce?

在Woocommerce管理员,订单和电子邮件中显示自定义付款字段