亮色模式
对接 SDK - Node
一、简介
连连支付将与服务端交互的接口(OpenAPI)封装在开发工具包(SDK)中,开发者无需自行实现同服务端交互的复杂逻辑,直接将 npm(ga-payment-sdk)包安装并引入自己的工程后,通过 OpenAPI 的示例代码实现同连连支付服务端的交互。
二、环境准备
首先得有 node,并确保 node 版本是 8.11.1 或以上。
三、安装
npm install ga-payment-sdk
四、使用说明
//引入ga-payment-sdk
const LLPaySdk = require('ga-payment-sdk');
//配置信息:
const config = {
env: 'sandbox', //支付环境'sandbox' | 'product';
sign_type: 'RSA', //签名算法 'RSA' | 'HMAC';
merchant_sign_key: '', //配置商户秘钥
ll_sign_key: '', // 配置连连秘钥
merchant_id: '', //商户号
sub_merchant_id: '', //站点号,连连提供(若无则不填)
is_print_log: true, //控制台是否打印日志
};
const LLPay = new LLPaySdk(config);
config 配置信息说明
参数 | 类型 | 是否必须 | 描述 | 默认值 |
---|---|---|---|---|
env | string |
是 | 支付环境沙箱或线上环境,值为"sandbox" 或"product" |
-- |
sign_type | string |
否 | 签名算法 "RSA" 或 "HMAC" |
"RSA" |
merchant_sign_key | string |
是 | 配置商户秘钥; RSA - 商户私钥 - 商户自己创建; HMAC - 连连提供的 HMAC key |
--- |
ll_sign_key | string |
是 | 配置连连秘钥; RSA - 连连公钥 - 连连提供; HMAC - 连连提供的 HMAC key |
--- |
merchant_id | string |
是 | 商户号 连连提供 | --- |
sub_merchant_id | string |
否 | 站点号 连连提供(若无则不填) | --- |
is_print_log | boolean |
否 | 控制台是否打印日志 | true |
五、方法说明
提供创单支付、退款、支付查询、退款查询、物流上传、支付取消、获取 iframe 支付 token、支付通知/退款通知解析的方法,开发者只需修改部分参数即可调用。
目前已支持的接口,如APIs所示
SDK 集成说明:SDK 已经对加签验签逻辑做了封装,使用 SDK 时传入商户公钥等内容可直接通过 SDK 自动进行加验签,签名方法:如加签验签详情
注意:
1、调用方法的参数
params
中的merchant_id
和sub_merchant_id
均不需传入,因为在实例化对象的 config 配置信息中已配置。2、接口请求成功回调的 res:Object 结构示例及说明:
{ "verifySignResult": true, //boolean,验签成功或失败 "verifySignMessage": "验签成功", //string,验签描述 "body": "{}" // json字符串,body其中的参数可参考各API出参 }
六、调用示例说明
创单支付调用示例
LLPay.pay({
params: {
//请求入参
},
//成功回调
successcb: function (res) {},
//失败回调
failcb: function (res) {},
});
支付结果查询调用示例
LLPay.payResultQuery({
params: {
//请求入参
},
//成功回调
successcb: function (res) {},
//失败回调
failcb: function (res) {},
});
退款调用示例
LLPay.refund({
params: {
//请求入参
},
//成功回调
successcb: function (res) {},
//失败回调
failcb: function (res) {},
});
退款结果查询调用示例
LLPay.refundResultQuery({
params: {
//请求入参
},
//成功回调
successcb: function (res) {},
//失败回调
failcb: function (res) {},
});
支付取消调用示例
LLPay.payCancel({
params: {
//请求入参
},
//成功回调
successcb: function (res) {},
//失败回调
failcb: function (res) {},
});
物流上传调用示例
LLPay.shipmentsUpload({
params: {
//请求入参
},
//成功回调
successcb: function (res) {},
//失败回调
failcb: function (res) {},
});
获取 iframe 支付 token 调用示例
LLPay.getTokenIframe({
//成功回调
successcb: function (res) {},
//失败回调
failcb: function (res) {},
});
支付/退款通知解析调用示例
/**
* @params body:String, 通知body,为json字符串
* @params header:{ [key: string]: string } 通知头部,类型为对象
* @return {Object}
* {
* verifySignResult: true | false, //验签结果
* verifySignMessage: '验签成功'|'验签失败',//验签成功或失败的描述
* body
* }
*
*/
LLPay.llNotice(body, header);