一招解决苹果内购漏单问题

苹果内购漏单的问题一直都是个头疼的问题,相信有很多公司都遇到这样的问题,今天来说说我是怎么解决苹果内购漏单的问题的。

解决思路:

1.用户下单成功后我们需要保存用户的下单数据,将productid,orderid,cporderid等信息保存到本地数据库;

2.拉起内购让用户完成购买行为;

3.用户购买成功后,我们可以根据苹果推给我们的productid去数据库查询对应的产品(必须保证transactionid为空,这是为了保证用户最新购买成功的订单),只需要获取数据库相同productid最后一条数据就可以了,然后把这条数据更新,更新的内容是添加receipt,transactionid,这条数据就标记为用户购买成功但是并没有发货的数据了;

4.将这条数据推给服务器,让服务器去和苹果校验并完成发货。如果发货成功则删除这条数据,如果发货不成功,则在用户每次下单的时候先检查数据库是否有没有发货成功的订单,如果有责继续完成发货操作,如果没有就可以重新下单了。

5.用户每次下单前先检查数据库是否存在发货失败的订单(这次可以根据transactionid查询数据库,有这个字段的都是购买成功但是没有发货的订单),如果有则通知服务器发货,发货成功删除,发货不成功继续保存,下次继续这样的操作,如果数据库没有查询到数据,则可以开始心的下单操作。

猜你喜欢

转载自blog.csdn.net/qq_37792992/article/details/82150640