用 HTML5+ payment方法碰到的第一个坑就是如果是支付宝的话签约那种支付方式。
因为 Dcloud的文档没有更新的原因你可以看到他们说的都是‘移动支付’,但是你去支付宝平台的时候看到的根本就没有‘移动支付’!如图所示!
其实这里的‘移动支付就’是‘app支付’因为支付宝已经更新了的原因,所以你在论坛上看到的都是签约app支付。申请了app支付就会有移动支付的权限。
第二个疑问就是我如果签约了App支付需要在开放平台上申请appid,创建app吗!
如果你用的是老的'移动支付'的接口服务(service="mobile.securitypay.pay"),那请你忽略这一步,因为老的接口是不需要appid的,只有最新的接口(service="alipay.trade.app.pay"),是需要appid的,但是新的接口5+ payment方法应该不支持的。
然后我们遇到最多的问题就是支付宝报这个错误‘交易订单处理失败,请稍后再试(ali64)’
我们排查我们的订单犯的错误有
1、服务端向客户端传送的订单的值的顺序,必须和服务端传送给支付宝的订单的值的顺序一致。
2、sign签名必须经过urlencode 。
3、notify_url必须是可以访问的网路地址。
希望这些能给需要帮助的人提供一点帮助。