Skip to content

司机APP支付整改

支付流程

  1. 用户在商户APP中选择商品,提交订单,选择微信支付。
  2. 商户后台收到用户支付单,调用微信支付统一下单接口。
  3. 统一下单接口返回正常的prepay_id,再按签名规范重新生成签名后,将数据传输给APP。参与签名的字段名为appId,partnerId,prepayId,nonceStr,timeStamp,package。注意:package的值格式为Sign=WXPay
  4. 商户APP调起微信支付。
  5. 商户后台接收支付通知。
  6. 商户后台查询支付结果。

APP调起微信支付所需参数

  • appid 应用ID 微信开发平台审核通过的应用APPID
  • partnerid 商户号 微信支付分配的商户号
  • prepayid 预支付交易会话ID 微信返回的支付交易会话ID
  • package 扩展字段 暂填写固定值Sign=WXPay
  • noncestr 随机字符串 不长于32位。
  • timestamp 时间戳
  • sign 签名 详见签名生成算法

APP支付所需配置信息

appid 应用ID 微信开放平台审核通过的应用APPID mch_id 商户号 微信支付分配的商户号 api_key API密钥 微信商户平台(pay.weixin.qq.com)-->账户设置-->API安全-->密钥设置

修改点

司机APP修改

移除生成预支付交易单的逻辑,通过后台接口获取调起支付所需参数

后台修改

增加接口,调用微信的预支付交易单接口,返回APP支付所需的信息

接口名: /pay/driver
Method: GET
请求:
    trade_no:  M string 支付流水号
响应:
    code  M  int     返回码。0为成功、其他为错误 
    msg   M  string  提示信息
    data  M  string  返回json数据列表
    {
        appid: "wx84fee0bcb61526ff",
        partnerid: "1233857502",
        prepayid: "wx201608301549023debc4711a0834400654",
        package: "Sign=WXPay",
        noncestr: "Ih2OuXbUJDUAxRvONLFOECgNt06NpjCF",
        timestamp: "1472543343",
        sign: "E9C4F0F7004E48524A44E61BC7FCF674"
    }