NodeJS入坑集锦

准备工作


需要参数:
token: test, // 微信配置中的token

appId: wx7e46b** // 微信开放平台配置里的appid

appSecret: f47171232cfc69*11e88a3 // 微信开放平台配置里的appsecret

machId: 1449239* // 微信商户平台的商户ID

machSecret: 1ZAqhmo5LzbhdwAU4* // 微信商户平台的api秘钥

notifyUrl: https://example.com // 支付成功回调接口路径

开发步骤
商户系统和微信支付系统主要交互说明:

步骤1:用户在商户APP中选择商品,提交订单,选择微信支付。

步骤2:商户后台收到用户支付单,调用微信支付统一下单接口。参见统一下单API

步骤3:统一下单接口返回正常的prepay_id,再按签名规范重新生成签名后,将数据传输给APP。参与签名的字段名为appid,partnerid,prepayid,noncestr,timestamp,package。注意:package的值格式为Sign=WXPay

步骤4:商户APP调起微信支付。api参见本章节app端开发步骤说明

步骤5:商户后台接收支付通知。api参见支付结果通知API

步骤6:商户后台查询支付结果。,api参见查询订单API

微信公众号支付


微信公众号支付业务流程图
业务流程图

1.调用微信统一下单

统一下单接口URL地址:https://api.mch.weixin.qq.com/pay/unifiedorder

2.二次签名

调用微信统一下单接口请求成功返回如下:


<![CDATA[SUCCESS]]>
<![CDATA[OK]]>
<![CDATA[wx2421b1c4370ec43b]]>
<![CDATA[10000100]]>
<![CDATA[IITRi8Iabbblz1Jc]]>
<![CDATA[oUpF8uMuAJO_M2pxb1Q9zNjWeS6o]]>
<![CDATA[7921E432F65EB8ED0CE9755F0E86D72F]]>
<![CDATA[SUCCESS]]>
<![CDATA[wx201411101639507cbf6ffd8b0779950874]]>
<![CDATA[JSAPI]]>