首先应该对微信支付的逻辑有一个详细的了解
以小程序为例:小程序获取用户的code码(用户登陆小程序或携带一个code码,但是这个code码,并不是一成不变,下次获取可能就会发生变化),然后小程序将code通过接口传给后台,后台通过CURL,携带着code,远程调用微信的一个获取openid的接口(这个接口可以在微信公众平台找到,自行百度),获取微信用户的openid,openid是微信向第三方提供的唯一标识,且是一成不变的,后台获取到openid后,通过微信提供的https://pay.weixin.qq.com/wiki/doc/api/jsapi_sl.php?chapter=11_1的SDK与DEMO构造好参数后,会向微信发送一个预订单,返回一个状态return_code 和prepare_id,如果是return_code=SUCCESS,说明预订单创建成功,否则不可继续一下步骤,然后将prepare_id,与你自己的参数一起构造成签名sign,然后将这些参数和sign一起返回给小程序,小程序携带者这些参数就可以去调用微信支付,拉起微信支付窗口(就是输入支付密码的窗口)