未验证 提交 aadaf501 编写于 作者: DCloud-yyl's avatar DCloud-yyl 提交者: Gitee

update docs/app-payment-aip.md.

上级 b83bcc26
#### 注意事项
1.应苹果审核规范要求,应用中虚拟物品交易必须使用Apple应用内支付,实物才可使用第三方支付(支付宝、微信等)
2.使用沙盒环境测试时每次调用支付接口需要换一个新的测试账号或商品,同一个账号多次购买同一个商品可能会没有回调
1. 应苹果审核规范要求,应用中虚拟物品交易必须使用Apple应用内支付,实物才可使用第三方支付(支付宝、微信等)
2. 使用沙盒环境测试时每次调用支付接口需要换一个新的测试账号或商品,同一个账号多次购买同一个商品可能会没有回调
#### 相关文档
使用前必读:[App内购买配置流程](https://help.apple.com/app-store-connect/#/devb57be10e7)
......@@ -8,9 +8,9 @@
服务端防刷单参考[IAP支付防止刷单](https://www.jianshu.com/p/5cf686e92924)
#### 参考建议
1.提前绑定支付方式可以有效避免丢单情况,示例:
1. 提前绑定支付方式可以有效避免丢单情况,示例:
`plus.runtime.openURL("https://apps.apple.com/account/billing"); //跳转AppStore绑定支付方式`
2.在每个接口调用前后添加打点日志收集,以便快速定位问题
2. 在每个接口调用前后添加打点日志收集,以便快速定位问题
#### 丢单问题说明
通过和用户联调我们发现在调用支付接口后,如果用户未绑定支付方式此时会触发支付失败回调方法,实际上用户可以跳转 AppStrore 绑卡然后继续支付,之前的逻辑在回调失败方法中框架会关闭订单,用户付完钱在回到App中也不会触发成功回调,这样就造成了丢单,解决方法就是在调用支付接口时添加optimize: true参数,并标记 restoreFlag = true;,支付成功回调中清除标记 restoreFlag = false; 然后在支付失败回调中框架就不会关闭订单了,并在页面显示的时候通过标记判断是否需要调用 restoreComplateRequest 方法,如果用户跳转App Store绑定支付方式付款成功后回到 App 就可以通过 restoreComplateRequest 方法恢复之前支付的订单信息,解决丢单的问题;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册