Node 商户进件 SDK 使用文档¶
简介¶
此 SDK 包含商户开户、商户开户查询、商户入驻、商户入驻查询功能。渠道商可通过此 SDK 快速进件。
SDK 版本记录¶
版本 |
日期 |
说明 |
2020-07-21 |
增加新增应用接口 |
|
2020-03-11 |
增加商户附件上传接口 |
|
v1.0.0 |
2020-01-08 |
商户开户/入驻等功能 |
版本要求¶
Node8
接入方法¶
下载
下载文件里包含 SDK 和 Demo 两个目录。SDK 目录下为待添加到项目中的文件,Demo 目录下为示例项目,供接入时参考使用。
获取 API Key
API Key 是您在 Adapay 系统中的身份标识,凭此可使用 Adapay 提供的 SDK 以及 API 服务
API Key 获取路径:「控制台」 ->「商户信息管理」->「证书管理」
privateKey(RSA 私钥)
privateKey 为您本地生成的 RSA 私钥 (阿里云开放平台RSA工具) 生成选择PKCS8格式, SDK 在与 Adapay 服务端进行接口请求时,会使用此私钥进行加密。
对应的公钥请上传至「控制台」->「商户信息管理」->「证书管理」
publicKey(RSA 公钥)
publicKey 是 Adapay 为您生成的 RSA 公钥,SDK 在与 Adapay 服务端进行接口请求时 SDK 需要 publicKey 进行解签
publicKey 可通过 「控制台」 ->「商户信息管理」->「证书管理」进行下载。
导入第三方依赖库
接入本 SDK 需依赖以下第三方库
axios
form-data
log4js
mqtt
INotifyCallback 和异步监听
SDK 需要设置异步监听,请实现 INotifyCallback 接口并启动异步监听,以实现异步通知处理。详情请参考 异步消息 。
使用方法¶
系统初始化
在使用 Adapay 前,请先完成系统初始化设置,否则可能导致交易异常。
调用示例
# 建议在服务启动时初始化
// 设置基本参数
let config = {}
config.debug = true
config.prod_mode = true
config.connect_timeout = 60000
config.log_file_path = resolve("./logs/")
config.log_console_enable = true
Merchant.set_config(config)
Merchant.set_merchant_path(resolve('../utils/merchantConfig.json'))
设置商户配置信息
在每次调用 Adapay 的方法之前需要先设置商户的配置信息。
Merchant.clean_config()
Merchant.Config.prod_mode = prod_mode
Merchant.Config.config_dirname = resolve('./utils/config_release')
Merchant.set_group_merchant_path("merchantNO")
开户进件¶
渠道商对旗下用户进行开户进件。
调用示例
let result = await Merchant.Entry.batchEntrys({
request_id, usr_phone, cont_name, cont_phone, customer_email, mer_name, mer_short_name,
license_code, reg_addr, cust_addr, cust_tel, mer_start_valid_date, mer_valid_date,
legal_name, legal_type, legal_idno, legal_mp, legal_start_cert_id_expires, legal_id_expires,
card_id_mask, bank_code, card_name, bank_acct_type, prov_code, area_code, rsa_public_key,
fee_rate_list
})
参数说明
参数说明详见 开户进件
商户入驻¶
渠道商对旗下用户进行商户入驻以及支付渠道批量配置
调用示例
let result = await Merchant.BatchInput.merConf({
request_id, sub_api_key, bank_channel_no, fee_type, wx_category, app_id,
alipay_category, cls_id, model_type, mer_type, province_code,
city_code, district_code, add_value_list
})
参数说明
参数说明详见 商户入驻
商户入驻修改¶
渠道商对旗下用户进行商户入驻信息修改或升级M3,目前仅支持支付宝渠道的操作,修改结果异步报文通知
调用示例
let result = await Merchant.BatchInput.merResidentModify({
request_id, sub_api_key, alipay_request_params, wx_request_params
})
参数说明
参数说明详见 商户入驻修改
商户入驻查询¶
通过 request_id 查询商户入驻结果
调用示例
let result = await Merchant.BatchInput.queryMerConf({
request_id
})
参数说明
参数说明详见 商户入驻查询
上送商户证照¶
上传商户附件信息
调用示例
let result = await Merchant.MerProfile.merProfilePicture({
subApiKey, fileType
}, file.path)
参数说明
参数说明详见 上送商户证照
提交商户证照信息¶
商户证件信息提交接口,调用后提交后商户证件信息审核状态切换为“等待后台审核“
调用示例
let result = await Merchant.MerProfile.merProfileForAudit({
subApiKey, socialCreditCodeId, legalCertIdFrontId, legalCertIdBackId, businessAdd,
storeId, accountOpeningPermitId, shareholderInfoList
})
参数说明
参数说明详见 提交商户证照信息
查询商户审核状态¶
商户可以查看提交的商户基础信息审核状态
调用示例
Dictionary<string, object> request = new Dictionary<string, object>();
request.Add("subApiKey", "api_live_fdcbcc99-4fef-4f23-a8f3-e21d7c7e4f7b");
Dictionary<string, object> result = MerchantConfig.queryAuditProfile(request);
参数说明
参数说明详见 商户审核状态查询
创建应用¶
代理商帮商户创建应用
调用示例
Dictionary<string, object> request = new Dictionary<string, object>();
request.Add("sub_api_key", "api_live_fdcbcc99-4fef-4f23-a8f3-e21d7c7e4f7b");
request.Add("app_name", "api_live_fdcbcc99-4fef-4f23-a8f3-e21d7c7e4f7b");
Dictionary<string, object> result = MerchantConfig.createApp(request);
参数说明
参数说明详见 创建应用
查询应用¶
代理商查询商户应用列表
调用示例
Dictionary<string, object> request = new Dictionary<string, object>();
request.Add("sub_api_key", "api_live_fdcbcc99-4fef-4f23-a8f3-e21d7c7e4f7b");//请求ID
Dictionary<string, object> result = MerchantConfig.queryApp(request);
参数说明
参数说明详见 查询应用