功能描述
通过js传入经服务器加签后的订单信息(orderInfo)并调用相应支付渠道SDK的支付接口
支持格式
Json
请求参数:
字段 | 可选 | 类型及范围 | 说明 |
---|---|---|---|
channel_id | 否 | string | 021:支付宝钱包 022:微信钱包 |
orderInfo | 否 | json | 具体内容见下方的”其他(当支付渠道为微信钱包时/当支付渠道为微信钱包时)”项 |
isSandBox | 是 | bool | 是否进入沙箱环境(只对支付宝有效) |
请求调用示例//支付渠道为支付宝钱包
params={
"channel_id":"021",
"orderInfo":"app_id=2015052600090779&biz_content=%7B%22timeout_express%22%3A%2230m%22%2C%22seller_id%22%3A%22%22%2C%22product_code%22%3A%22QUICK_MSECURITY_PAY%22%2C%22total_amount%22%3A%220.01%22%2C%22subject%22%3A%221%22%2C%22body%22%3A%22%E6%88%91%E6%98%AF%E6%B5%8B%E8%AF%95%E6%95%B0%E6%8D%AE%22%2C%22out_trade_no%22%3A%22IQJZSRC1YMQB5HU%22%7D&charset=utf-8&format=json&method=alipay.trade.app.pay¬ify_url=http%3A%2F%2Fdomain.merchant.com%2Fpayment_notify&sign_type=RSA2×tamp=2016-08-25%2020%3A26%3A31&version=1.0&sign=cYmuUnKi5QdBsoZEAbMXVMmRWjsuUj%2By48A2DvWAVVBuYkiBj13CFDHu2vZQvmOfkjE0YqCUQE04kqm9Xg3tIX8tPeIGIFtsIyp%2FM45w1ZsDOiduBbduGfRo1XRsvAyVAv2hCrBLLrDI5Vi7uZZ77Lo5J0PpUUWwyQGt0M4cj8g%3D"
};
LightSDK.native.tradePay(params,cb);
//支付渠道为微信钱包 |
返回值说明
字段名 | 字段类型 | 字段值 | 说明 |
---|---|---|---|
resultStatus | string | 1001 | 支付完成 |
resultStatus | string | 1003 | 支付取消 |
resultStatus | string | 1005 | 支付异常 |
返回字段示例
{ |
注意事项
需要在config.js中配置:
module.exports = {
plugins:{
“pay”: {}
}
};
其他
1.当支付渠道为支付宝钱包时:
orderInfo字段:app支付请求参数字符串由2部分组成(两部分的链接以&连接,需要encode):
第1部分:主要包含商户的订单信息,key=value形式,以&连接,需要用到图1和图2中的参数,具体内容参考图例说明。
第2部分:服务器通过第1部分的参数加签后所生成的签名。
未经过encode的orderInfo参数形式如下:app_id=2015052600090779&biz_content={"timeout_express":"30m","seller_id":"","product_code":"QUICK_MSECURITY_PAY","total_amount":"0.01","subject":"1","body":"我是测试数据","out_trade_no":"IQJZSRC1YMQB5HU"}&charset=utf-8&format=json&method=alipay.trade.app.pay¬ify_url=http://domain.merchant.com/payment_notify&sign_type=RSA2×tamp=2016-08-25 20:26:31&version=1.0&sign=cYmuUnKi5QdBsoZEAbMXVMmRWjsuUj+y48A2DvWAVVBuYkiBj13CFDHu2vZQvmOfkjE0YqCUQE04kqm9Xg3tIX8tPeIGIFtsIyp/M45w1ZsDOiduBbduGfRo1XRsvAyVAv2hCrBLLrDI5Vi7uZZ77Lo5J0PpUUWwyQGt0M4cj8g=
encode规则:对请求字符串的所有一级value(biz_content作为一个value)进行encode,编码格式按请求串中的charset为准,没传charset按UTF-8处理。
请求参数的具体组装可以参考:https://doc.open.alipay.com/docs/doc.htm?spm=a219a.7629140.0.0.4oWsGk&treeId=193&articleId=105465&docType=1
2.当支付渠道为微信钱包时:
orderInfo字段:app支付请求参数字符串,具体内容字段描述见下图。请求参数的具体组装可以参考:点我进入 (涉及一些算法要求)。
支付宝钱包支付的公共参数:
支付宝钱包支付的业务参数: