五、公共接口
## 1.要素鉴权接口
#### 说明:该接口为个人信息鉴权接口,通过调用接口查询要素是否一致。
根据要素类型分别传入参数:
二要素鉴权(姓名、身份证号);
三要素鉴权(姓名、身份证号、银行卡号);
四要素鉴权(姓名、身份证号、银行卡号、银行卡预留手机号);
运营商三要素鉴权(姓名、身份证号、运营商手机号);
#### 接口地址:
/open/api/v1/personInfo/check
#### 请求方式:POST
#### 请求参数说明:
|参数名称|参数含义|是否必填|参数备注|
|-|-|-|-|
|signingType|验证类型|是|
|realName|姓名|是||
|idCard|身份证号码|是||
|cardNo|银行卡号|否|银行卡四要素的时候为必填项)|
|mobile|手机号|否|银行卡四要素鉴权传银行预留手机号;运营商三要素鉴权传运营商开户手机号|
#### 认证类型码
|状态|状态说明|必传参数|
|-|-|-|
|0|银行卡三要素认证|姓名、身份证号、银行卡号|
|1|二要素|姓名、身份证号|
|2|银行卡四要素认证|姓名、身份证号、银行卡号、银行卡预留手机号|
|3|运营商三要素认证|姓名、身份证号、运营商开户手机号|
#### 接口响应参数data字段解密后的参数说明:
>d 该接口无需解密返回如下json字符串。
结果示例
{"resopnseType":0,"errorCode":"","errorMessage":"","status":0,"data":null,"ext":null,"extMessage":null,"success":true}
如果 success等于true代表认证成功,如果success等于false则代表认证失败
## 2.查询商户可开票列表,以及所拥有的主体接口
>d 通过该接口可获取公司的可开发票列表,以及所拥有主体列表,无需频繁请求。请求到之后保存自己库即可。当签署主体信息有变更。或者发票内容有调整重新请求接口即可。
#### 接口地址:
/open/api/v1/company/queryInvoices
#### 请求方式:POST
#### 请求参数说明:
|参数名称|参数含义|是否必填|参数备注|
|-|-|-|-|
|无参数|||该接口无需参数|
#### 响应参数说明:
|参数名称| 参数含义|数据类型| 是否必有| 参数备注|
|-|-|-|-|-|
|name| 主体名称| String|是|主体名称|
|mainstayId| 主体ID|int| 是|主体ID|
|taxRate| 税率|BigDecimal| 是||
|invoiceOpResponseList| 发票列表| 是|发票列表为List数组|
|invoiceCode| 发票列表里面属性值发票编码|String| 是|invoiceOpResponseList里面属性|
|name| 发票列表里面属性值发票名称|String| 是|invoiceOpResponseList里面属性|
解密结果示例如下:
```json
[{
"invoiceOpResponseList": [{
"invoiceCode": "XXJSFWJSFWF1", //发票编码
"name": "信息技术服务,技术服务费" //发票内容
}, {
"invoiceCode": "XXJSFWJSZXFWF2",
"name": "信息技术服务,技术咨询服务费"
}],
"mainstayId": 1, //主体ID
"name": "xxx" //主体名称
}, {
"invoiceOpResponseList": [{
"invoiceCode": "JZZXFWZXFWF19",
"name": "鉴证咨询服务,咨询服务费"
}, {
"invoiceCode": "JZZXFWQYGLZXF20",
"name": "鉴证咨询服务,企业管理咨询费"
}],
"mainstayId": 2,
"name": "xxx",
"taxRate" : 0.050
}]
```
## 3.查询自然人每月可结算金额数
#### 接口地址:
/open/api/v1/available/credit
#### 请求方式:POST
#### 请求参数说明:
|参数名称|参数含义|是否必填|参数备注|
|-|-|-|-|
|idCards|需要查询的身份证号码集合|是|例如:[身份证1,身份证2,身份证3]|
|mainstayId|主体ID|是||
>d 备注说明:idCards最大长度查询10条记录
```java
//示例
String data = {"idCards":["xxxx","xxxx"],"mainstayId":"1"};
```
#### 响应参数说明:
|参数名称| 参数含义|数据类型| 是否必有| 参数备注|
|-|-|-|-|-|-|
|idCard| 身份证号|Srting| 是||
|availableAmount| 可结算金额|BigDecimal| 是||
## ~~4.获取对账单接口(该接口不再维护)~~
#### 接口地址:
/open/api/v1/bill/companyReconciliation
#### 请求方式:POST
#### 请求参数说明:
|参数名称|参数含义|是否必填|参数备注|
|-|-|-|-|
|date|需要对账的日期|是|该参数为String类型 yyyy-MM-dd,例如 “2019-07-20”。|
示例:
```java
String paramsJson= "{\"date\":\"2019-07-20\"}";
String data = RSAHelper.encryptByPublicKey(paramsJson, publicKey);
```
>d 备注:系统每天9.30点生成前一天的对账单。建议每天10点后拉取对前一天的对账单
#### 接口响应参数data字段解密后的参数说明:
|参数名称| 参数含义| 是否必有| 参数备注|
|-|-|-|-|
|fileUrl|对账文件URL|是|查询的某一天的对账单文件链接,通过该链接可下载对账单内容(该链接有效期为30分钟,30分钟后获取则需要重新调用接口生成新的链接)|
解密结果示例
`{"fileUrl":"https://qiniu.lx-rhino.com/3c59dc048e8850243be8079a5c74d079/2019-07-20.csv"}`