商户应用分账设置
接口描述:商户分账设置, 注意: 需拥有对应权限才可以。
接口说明
适用对象:代理商 商户
请求URL:https://pay.yintongzaixian.com/api/mchInfos/configs
请求方式:POST
请求类型:application/json 或 application/x-www-form-urlencoded
“必填”字段取值“Y“:必填;“N”:非必填;“C”代表条件必填;
请求参数
| 参数名 | 中文名 | 必填 | 类型 | 示例值 | 说明 |
|---|---|---|---|---|---|
| agentNo | 代理商号 | C | String | A3929388111 | 代理商发起时必填 |
| mchNo | 需要配置的商户号 | Y | String | M3929388111 | 商户号 |
| appId | 需要配置的应用APPID | Y | String | 650aa72cdbd72cfaa07b8181 | 应用ID |
| configType | 设置类型 | Y | String | divisionConfigs | divisionConfigs-分账配置 |
| configVal | 设置参数 | Y | String | {} | 分账配置传入参数, JSON字符串格式, 详见下方示例 |
| version | 接口版本 | Y | String | 1.0 接口版本号,固定:1.0 | |
| sign | 签名 | Y | String | C380BEC2BFD727A4B6845133519F3AD6 | 签名值,详见签名算法 |
| signType | 签名类型 | Y | String | MD5 | 签名类型,目前只支持MD5或RSA2方式 |
divisionConfigs配置的configVal 字段
| 参数名 | 中文名 | 必填 | 类型 | 示例值 | 说明 |
|---|---|---|---|---|---|
| ifCode | 设置的接口 | Y | String | shengpay | |
| storeId | 门店ID | C | Long | 9001 | 当设置门店分账配置需填入该字段 |
| divisionMode | 分账模式 | Y | Byte | 1 | 分账模式:0-不分账, 1-自动分账, 2-手动分账 |
| divisionRules | 详细规则设置 | C | String | {"amountLimit":288.99} | 目前仅手动配置需要设置,amountLimit:最低订单分账金额,单位元 |
| templateId | 选择模版ID | C | Long | 1001 | 目前仅自动分账需配置, 选择字段分账模版ID |
divisionConfigs配置模式下 configVal参数示例:
不分账:
{"ifCode":"shengpay","divisionMode":"0"}
自动分账:
{"ifCode":"shengpay","templateId":"100002","divisionMode":"1"}
手动分账:
{"ifCode":"shengpay","divisionRules":"{\"amountLimit\":288.99}","divisionMode":"2"}
返回参数
| 字段名 | 变量名 | 必填 | 类型 | 示例值 | 描述 |
|---|---|---|---|---|---|
| 返回状态 | code | 是 | int | 0 | 0-处理成功,其他-处理有误,详见错误码 |
| 返回信息 | msg | 否 | String(128) | SUCCESS | 具体错误原因,例如:签名失败、参数格式校验错误 |
| 签名信息 | sign | 否 | String(32) | 4AAD8F50C9F2897D4292F28FE5DFAADB 对data内数据签名,如data为空则不返回 | |
| 返回数据 | data | 否 | String(512) | {} | 返回下单数据,json格式数据 |
返回示例数据
{
"code": 0,
"data": {},
"msg": "SUCCESS",
"sign": "4AAD8F50C9F2897D4292F28FE5DFAADB"
}
SDK调用示例(Java):
JeepayClient jeepayClient = JeepayClient.getInstance(Jeepay.appId, Jeepay.apiKey, Jeepay.getApiBase());
MchInfoConfigsRequest request = new MchInfoConfigsRequest();
MchInfoConfigsReqModel model = new MchInfoConfigsReqModel();
model.setMchNo(Jeepay.mchNo); // 商户号
model.setAppId(jeepayClient.getAppId()); // 应用ID
request.setBizModel(model);
try {
MchInfoConfigsResponse response = jeepayClient.execute(request);
_log.info("验签结果:{}", response.checkSign(Jeepay.apiKey));
if (response.isSuccess(Jeepay.apiKey)) {
_log.info("data:{}", response.getData());
} else {
_log.info("请求失败:mchNo={}, msg={}", Jeepay.mchNo, response.getMsg());
}
} catch (JeepayException e) {
_log.error(e.getMessage());
}