最近在对接微信支付接口的时候,发现目前的微信支付接口文档中有些地方写的不够清楚和 明确,有些地方也不够准确。现在把这些地方写出来,希望能帮助其它开发相关程序的程序 员减少一些调试时间。
关于微信支付接口的测试
不能使用微信公众平台接口测试账号,只能使用有微信支付功能的正式公众号进行测试。
收货地址共享接口
-
签名中使用的
access_token
是每个用户不同的。获取access_token
时,scope
参数使用snsapi_base
和snsapi_userinfo
都是可以的,这样不影响同时使用“收货地址共享接 口”和“在网页中获取微信用户信息”两个接口。 -
参与签名的url不需要带上微信服务器返回的
code
和state
参数。 -
文档中作为示例计算出的签名值是错误的。不过这点网上已经有不少文章指出了。
支付接口
支付结果通知(notify_url
)接口中,对通知接口参数(URL中的参数,不是body
xml中的参数)进行签名验证时,只有sign
字段不参加签名计算,
input_charset
和sign_type
都要参加签名计算。在某些签名中是不包含
sign_type的,但在这里要包含sign_type,这点需要注意。