1.余额接口文档

### <a id="1.1.充值余额">1.1.充值余额</a> 开发环境:https://pay-dev.lx-rhino.com 生产环境:https://api.lx-rhino.com #### 接口地址: /open/api/v1/yns/balance/recharge #### 请求方式:POST #### 请求参数说明: |参数名称|参数含义|数据类型|是否必填|参数备注| |-|-|-|-|-| |mainstayId|主体ID|Integer|是|| |amount|充值金额|BigDecimal|是|| |bankVoucherFile|充值银行回执单|String|是|该参数为通过[4.1.上传文件接口](#4.1.上传文件接口)将文件上传后返回的值,最长640字符| |remarks|备注|String|否|最长640字符| |thirdRechargeNo|第三方充值单号|String|是|最长32字符| #### 接口响应参数data字段解密后的参数说明: |参数名称| 参数含义|数据类型| 是否必有| 参数备注| |-|-|-|-|-| |thirdRechargeNo| 第三方充值单号| String|是|| |entryAmount| 打款金额|BigDecimal|是|| |rechargeAmount| 实际充值到账金额(扣除合同税费)|BigDecimal|是| || |contractTaxRate| 合同税率|BigDecimal|是| || |contractTaxAmount| 合同税费|BigDecimal|是| || ## <a id="1.2.余额查询">1.2.余额查询</a> 开发环境:https://pay-dev.lx-rhino.com 生产环境:https://api.lx-rhino.com #### 接口地址: /open/api/v1/yns/balance/query #### 请求方式:POST #### 请求参数说明: |参数名称|参数含义|数据类型|是否必填|参数备注| |-|-|-|-|-| |mainstayId|主体ID|Integer|否|默认查询所有主体| |payType|支付类型|Integer|否|默认查询所有支付类型| #### 接口响应参数data字段解密后的参数说明: |参数名称| 参数含义|数据类型| 是否必有| 参数备注| |-|-|-|-|-| |mainstayId|主体ID| Integer|是|| |mainstayName|主体名|String|是|| |totalBalance|主体总余额|BigDecimal|是| || |companyBalanceItems|主体支付类型列表|Array|是| || |balance|支付类型余额|BigDecimal|是| || |name|支付类型名称|String|是| || |payType|支付类型编码|Integer|是| || 解密结果示例如下: ```json [ { "companyBalanceItems": [ { "balance": 1115.39, "name": "银行卡账户", "payType": 0 }, { "balance": 615.39, "name": "支付宝账户", "payType": 1 }, { "balance": 0.00, "name": "微信账户", "payType": 2 } ], "mainstayId": 1, "mainstayName": "安吉", "totalBalance": 1730.78 } ] ``` ## 1.3.充值成功异步回调 #### 请求方式:POST >d 该接口需要第三方自行编写提供接口到发放平台回调成功必须返回success不然会重复回调 >d 该接口需要第三方自行编写提供接口到发放平台 接口编写示例如下。 ```java @PostMapping("signCallBack") @ResponseBody public String signCallBack(HttpServletRequest request, @RequestBody String data){ String publicKey = "该公钥由发放平台提供发放到贵司邮箱"; //解密 String decode = RSAHelper.decryptByPublicKey(data, publicKey); /*贵公司处理业务逻辑*/ return "success"; } ``` 解密工具类在 [JAVA_DEMO](https://gitee.com/xinfudblog/lxapi_java_demo) 的 RSAHelper 类中 >d 贵司写完后提供到接口url给发放平台即可。回调成功需返回success,不然回重复回调,至多重试5次 postman中模拟接口是否正常接收数据如下操作 ![微信截图_20191111122018.png](https://cos.easydoc.net/44383407/files/k2tx5nl4.png) 解密结果示例如下: ```json {"auditStatus":"2","rechargeAmount":"12.01","thirdRechargeNo":"xxxxx","entryTime":"2019-07-05 23:41:45","entryAmount":"12.01","contractTaxAmount":"12.01","contractTaxRate":"12.01"}"; ``` |参数名称| 参数含义| 数据类型|是否必有| 参数备注| |-|-|-|-|-| |auditStatus| 充值审核状态|int| 是|| |rechargeAmount| 充值金额|BigDecimal| 是|| |thirdRechargeNo| 第三方充值单号|String| 是|| |entryTime| 充值时间 |String| 是|| |entryAmount| 入账金额|BigDecimal| 是|| |contractTaxAmount| 合同税费|BigDecimal| 是|| |contractTaxRate| 合同税率|BigDecimal| 是|| ### <a id="1.4.充值余额">1.4.提现申请</a> 开发环境:https://pay-dev.lx-rhino.com 生产环境:https://api.lx-rhino.com #### 接口地址: /open/api/v1/yns/balance/withdraw #### 请求方式:POST #### 请求参数说明: |参数名称|参数含义|数据类型|是否必填|参数备注| |-|-|-|-|-| |mainstayId|主体ID|Integer|是| 1-安吉 2-长兴 3-乐清| |amount|提现金额|BigDecimal|是|两位小数| |bankNo|收款账号|String|是|最长256字符| |accountName|账户名称|String|是|最长256字符| |bankName|开户行|String|是|最长256字符| |payType|账号类型|Integer|是|0-银行卡 1-支付宝 2-微信| |thirdOrderNo|第三方提现单号|String|是|最长32字符| |remark|备注|String|否|最长256字符| #### 接口响应参数data字段解密后的参数说明: |参数名称| 参数含义|数据类型| 是否必有| 参数备注| |-|-|-|-|-| |thirdOrderNo| 第三方提现单号| String|是|| |amount| 提现金额|BigDecimal|是|| |realAmount| 到账金额|BigDecimal|是| || |status| 状态|Integer|是| -100-待审核 1-提现成功 -1-提现失败|| ## 1.5.提现成功&失败异步回调 #### 请求方式:POST >d 该接口需要第三方自行编写提供接口到发放平台回调成功必须返回success不然会重复回调 >d 该接口需要第三方自行编写提供接口到发放平台 接口编写示例如下。 ```java @PostMapping("withdrawCallBack") @ResponseBody public String signCallBack(HttpServletRequest request, @RequestBody String data){ String publicKey = "该公钥由发放平台提供发放到贵司邮箱"; //解密 String decode = RSAHelper.decryptByPublicKey(data, publicKey); /*贵公司处理业务逻辑*/ return "success"; } ``` 解密工具类在 [JAVA_DEMO](https://gitee.com/xinfudblog/lxapi_java_demo) 的 RSAHelper 类中 >d 贵司写完后提供到接口url给发放平台即可。回调成功需返回success,不然回重复回调,至多重试5次 postman中模拟接口是否正常接收数据如下操作 ![微信截图_20191111122018.png](https://cos.easydoc.net/44383407/files/k2tx5nl4.png) #### 接口响应参数data字段解密后的参数说明: |参数名称| 参数含义| 数据类型|是否必有| 参数备注| |-|-|-|-|-| |thirdOrderNo| 第三方提现单号| String|是|| |amount| 提现金额|BigDecimal|是|| |realAmount| 到账金额|BigDecimal|是| || |status| 状态|Integer|是| -100-待审核 1-提现成功 -1-提现失败|| |returnMsg| 提现失败原因| String|否|提现失败时有| |url| 打款凭证url| String|否|| |payType|账号类型|Integer|是|0-银行卡 1-支付宝 2-微信| |mainstayId|主体ID|Integer|是| 1-安吉 2-长兴 3-乐清| ### <a id="1.6.提现记录查询">1.6.提现记录查询</a> 开发环境:https://pay-dev.lx-rhino.com 生产环境:https://api.lx-rhino.com #### 接口地址: /open/api/v1/yns/balance/withdraw/query #### 请求方式:POST #### 请求参数说明: |参数名称|参数含义|数据类型|是否必填|参数备注| |-|-|-|-|-| |thirdOrderNo|第三方提现单号|String|是|最长32字符| #### 接口响应参数data字段解密后的参数说明: |参数名称| 参数含义|数据类型| 是否必有| 参数备注| |-|-|-|-|-| |thirdOrderNo| 第三方提现单号| String|是|| |amount| 提现金额|BigDecimal|是|| |realAmount| 到账金额|BigDecimal|是| || |status| 状态|Integer|是| -100-待审核 1-提现成功 -1-提现失败|| |returnMsg| 提现失败原因| String|否|提现失败时有| |url| 打款凭证url| String|否|| |payType|账号类型|Integer|是|0-银行卡 1-支付宝 2-微信| |mainstayId|主体ID|Integer|是| 1-安吉 2-长兴 3-乐清|