平台商发起名下子商户的结算
测试请求地址 | https://cbtrxtest.helipay.com/cbtrx/rest/platMerchant/subMerchantSettle |
请求地址 | https://cbptrx.helipay.com/cbtrx/rest/platMerchant/subMerchantSettle |
提交方式 | 采用POST方法提交,requestbody传值 Content-Type=[application/json;charset=UTF-8] |
签名算法 | UTF-8字符编码 SHA256签名 AES加密 |
名称 | 参数 | 类型 | 必填 | 示例值 | 说明 |
---|---|---|---|---|---|
商户编号 | merchantNo | String(10) | 是 | 商户编号 | |
平台商编号 | platMerchantNo | String(10) | 否 | 商户对应的平台商,不填写默认为商户编号 | 商户对应的平台商,不填写默认为商户编号 |
订单号 | orderNo | String(64) | 是 | 请求订单号,商户唯一 | 商户唯一 |
产品编码 | productCode | String(50) | 是 | PLATMERCHANTAPISETTLE | PLATMERCHANTAPISETTLE |
结算金额 | settleAmount | double | 是 | 10.00 | 结算金额 |
名称 | 参数 | 类型 | 必填 | 示例值 | 说明 |
---|---|---|---|---|---|
产品编码 | productCode | String(20) | 是 | PLATMERCHANTAPISETTLE | |
商户订单号 | orderNo | String(64) | 是 | p_20170302185347 | 请求订单号 |
商户编号 | merchantNo | String(10) | 是 | Me10000002 | 合利宝-跨境系统分配的商户编号 |
平台商户编号 | platMerchantNo | String(10) | 是 | Me10000002 | 合利宝-跨境系统分配的平台商户编号 |
平台流水号 | serialNumber | String(32) | 否 | 201702241400010002 | 合利宝-跨境系统生成的唯一交易流水号 |
响应码 | errorCode | String(10) | 是 | 0000 | 0000 代表请求成功 |
响应信息 | errorMessage | String(200) | 否 | 成功 | 响应信息 错误信息 |
响应时间 | current | String(20) | 是 | 2018-04-01 12:00:00 | 格式yyyy-MM-dd HH:mm:ss |
结算金额 | settleAmount | double | 是 | 结算金额 | |
结算状态 | settleStatus | String | 是 | 结算状态 |
@RequestMapping(value = "/querySubMerchantSettle") public ModelAndView querySubMerchantSettle(@ModelAttribute @Valid BaseDTO request, BindingResult result) { ModelAndView mav = new ModelAndView(); if (result.hasErrors()) { throw new CommonSystemException(CommonSystemException.ILLEGAL_DATA_REQUEST[0], result.getFieldError().getDefaultMessage()); } HeliRequest heliRequest = remoteService.postRemoteInvoke(LoadPropertiesUtils.getProperty("querySubMerchantSettle"), JSONObject.toJSONString(encodeAndSign(request, request.getProductCode(), request.getPlatMerchantNo(), request.getMerchantNo())), HeliRequest.class); PlatMerchantAPISettleResponseForm responseForm = decode(heliRequest, PlatMerchantAPISettleResponseForm.class, request.getProductCode(), request.getPlatMerchantNo(), request.getMerchantNo()); if (!CbDemoConstants.SUCCESS_CODE.equals(responseForm.getErrorCode())) { throw new CommonSystemException(responseForm.getErrorCode(), responseForm.getErrorMessage()); } mav.setViewName("/plat/subMerchantSettleResult"); mav.addObject("responseForm", responseForm); return mav; }
错误码 | 错误码描述 | 解决方案 |
---|---|---|
子商户结算查询结果
测试请求地址 | https://cbtrxtest.helipay.com/cbtrx/rest/platMerchant/querySubMerchantSettle |
请求地址 | https://cbptrx.helipay.com/cbtrx/rest/platMerchant/querySubMerchantSettle |
提交方式 | 采用POST方法提交,requestbody传值 Content-Type=[application/json;charset=UTF-8] |
签名算法 | UTF-8字符编码 SHA256签名 AES加密 |
名称 | 参数 | 类型 | 必填 | 示例值 | 说明 |
---|---|---|---|---|---|
商户编号 | merchantNo | String(10) | 是 | 商户编号 | |
平台商编号 | platMerchantNo | String(10) | 否 | 商户对应的平台商,不填写默认为商户编号 | 商户对应的平台商,不填写默认为商户编号 |
订单号 | orderNo | String(64) | 是 | 请求订单号,商户唯一 | 商户唯一 |
产品编码 | productCode | String(50) | 是 | PLATMERCHANTAPISETTLE | PLATMERCHANTAPISETTLE |
名称 | 参数 | 类型 | 必填 | 示例值 | 说明 |
---|---|---|---|---|---|
产品编码 | productCode | String(20) | 是 | PLATMERCHANTAPISETTLE | |
商户订单号 | orderNo | String(64) | 是 | p_20170302185347 | 请求订单号 |
商户编号 | merchantNo | String(10) | 是 | Me10000002 | 合利宝-跨境系统分配的商户编号 |
平台商户编号 | platMerchantNo | String(10) | 是 | Me10000002 | 合利宝-跨境系统分配的平台商户编号 |
平台流水号 | serialNumber | String(32) | 否 | 201702241400010002 | 合利宝-跨境系统生成的唯一交易流水号 |
响应码 | errorCode | String(10) | 是 | 0000 | 0000 代表请求成功 |
响应信息 | errorMessage | String(200) | 否 | 成功 | 响应信息 错误信息 |
响应时间 | current | String(20) | 是 | 2018-04-01 12:00:00 | 格式yyyy-MM-dd HH:mm:ss |
结算金额 | settleAmount | double | 是 | 结算金额 | |
结算状态 | settleStatus | String | 是 | 结算状态 |
@RequestMapping(value = "/querySubMerchantSettle") public ModelAndView querySubMerchantSettle(@ModelAttribute @Valid BaseDTO request, BindingResult result) { ModelAndView mav = new ModelAndView(); if (result.hasErrors()) { throw new CommonSystemException(CommonSystemException.ILLEGAL_DATA_REQUEST[0], result.getFieldError().getDefaultMessage()); } HeliRequest heliRequest = remoteService.postRemoteInvoke(LoadPropertiesUtils.getProperty("querySubMerchantSettle"), JSONObject.toJSONString(encodeAndSign(request, request.getProductCode(), request.getPlatMerchantNo(), request.getMerchantNo())), HeliRequest.class); PlatMerchantAPISettleResponseForm responseForm = decode(heliRequest, PlatMerchantAPISettleResponseForm.class, request.getProductCode(), request.getPlatMerchantNo(), request.getMerchantNo()); if (!CbDemoConstants.SUCCESS_CODE.equals(responseForm.getErrorCode())) { throw new CommonSystemException(responseForm.getErrorCode(), responseForm.getErrorMessage()); } mav.setViewName("/plat/subMerchantSettleResult"); mav.addObject("responseForm", responseForm); return mav; }
错误码 | 错误码描述 | 解决方案 |
---|---|---|
子商户产品及费率修改
测试请求地址 | https://cbtrxtest.helipay.com/cbtrx/rest/platMerchant/modifySubMerchantProductAndFee |
请求地址 | https://cbptrx.helipay.com/cbtrx/rest/platMerchant/modifySubMerchantProductAndFee |
提交方式 | 采用POST方法提交,requestbody传值 Content-Type=[application/json;charset=UTF-8] |
签名算法 | UTF-8字符编码 SHA256签名 AES加密 |
名称 | 参数 | 类型 | 必填 | 示例值 | 说明 |
---|---|---|---|---|---|
商户编号 | merchantNo | String(10) | 是 | 商户编号 | |
平台商编号 | platMerchantNo | String(10) | 否 | 商户对应的平台商,不填写默认为商户编号 | 商户对应的平台商,不填写默认为商户编号 |
订单号 | orderNo | String(64) | 是 | 请求订单号,商户唯一 | 商户唯一 |
产品编码 | productCode | String(50) | 是 | PLATMERCHANTAPISETTLE | PLATMERCHANTAPISETTLE |
子商户编号 | subMerchantNo | String(10) | 是 | ||
待修改产品编码 | openProduct[index].productCode | String(20) | 是 | ||
待修改产品比例费率 | openProduct[index].percentageCost | String(20) | 是 | ||
待修改产品单笔手续费 | openProduct[index].singleCost | String(20) | 是 | ||
待修改产品最小手续费 | openProduct[index].minCost | String(20) | 是 | ||
待修改产品最小手续费最大手续费 | openProduct[index].maxCost | String(20) | 是 |
名称 | 参数 | 类型 | 必填 | 示例值 | 说明 |
---|---|---|---|---|---|
产品编码 | productCode | String(20) | 是 | PLATMERCHANTREGIST | |
商户订单号 | orderNo | String(64) | 是 | p_20170302185347 | 请求订单号 |
商户编号 | merchantNo | String(10) | 是 | Me10000002 | 合利宝-跨境系统分配的商户编号 |
平台商户编号 | platMerchantNo | String(10) | 是 | Me10000002 | 合利宝-跨境系统分配的平台商户编号 |
平台流水号 | serialNumber | String(32) | 否 | 201702241400010002 | 合利宝-跨境系统生成的唯一交易流水号 |
响应码 | errorCode | String(10) | 是 | 0000 | 0000 代表请求成功 |
响应信息 | errorMessage | String(200) | 否 | 成功 | 响应信息 错误信息 |
响应时间 | current | String(20) | 是 | 2018-04-01 12:00:00 | 格式yyyy-MM-dd HH:mm:ss |
@RequestMapping(value = "/modifySubMerchantProductAndFee") public ModelAndView modifySubMerchantProductAndFee(@ModelAttribute @Valid SubMerchantProductAndFeeModifyRequestForm request, BindingResult result) { ModelAndView mav = new ModelAndView(); if (result.hasErrors()) { throw new CommonSystemException(CommonSystemException.ILLEGAL_DATA_REQUEST[0], result.getFieldError().getDefaultMessage()); } if(StringUtils.isBlank(request.getPlatMerchantNo())){ throw new CommonSystemException(CommonSystemException.ILLEGAL_DATA_REQUEST[0], CommonSystemException.ILLEGAL_DATA_REQUEST[1]); } HeliRequest heliRequest = remoteService.postRemoteInvoke(LoadPropertiesUtils.getProperty("modifySubMerchantProductAndFee"), JSONObject.toJSONString(encodeAndSign(request, request.getProductCode(), request.getPlatMerchantNo(), request.getMerchantNo())), HeliRequest.class); SubMerchantProductAndFeeModifyResponseForm responseForm = decode(heliRequest, SubMerchantProductAndFeeModifyResponseForm.class, request.getProductCode(), request.getPlatMerchantNo(), request.getMerchantNo()); if (!CbDemoConstants.SUCCESS_CODE.equals(responseForm.getErrorCode())) { throw new CommonSystemException(responseForm.getErrorCode(), responseForm.getErrorMessage()); } mav.setViewName("/plat/modifySubMerchantProductAndFeeResult"); mav.addObject("responseForm", responseForm); return mav; }
错误码 | 错误码描述 | 解决方案 |
---|---|---|