第三章 模块接口(4) - 开票管理

>d 接口调用细节流程: ◆ 参数RSA加密[接口签名,加解密说明](https://easydoc.top/doc/92150138/ZSNp8hjw/FVjvrnys) ◆ 将加密结果以及公共参数拼接成新的字符串通过MD5加密生成签名 ◆ 将公共参数以及签名通过header传输,参数加密结果通过body传输,发起http请求 ◆ 返回结果解密[接口签名,加解密说明](https://easydoc.top/doc/92150138/ZSNp8hjw/FVjvrnys) ## 接口响应参数都为如下固定json格式 |参数名称|参数含义|数据类型|是否必有|参数备注| |-|-|-|-|-| |resopnseType| 返回类型|int|是|无需关注此值| |errorCode|错误码 |String|是|详情参考[系统错误码](https://easydoc.top/doc/92150138/ZSNp8hjw/BoPRc3hR)| |errorMessage| 错误信息|String|是|详情参考[系统错误码](https://easydoc.top/doc/92150138/ZSNp8hjw/BoPRc3hR)| |status|状态码|int|是|详情参考[系统错误码](https://easydoc.top/doc/92150138/ZSNp8hjw/BoPRc3hR)| |success|是否成功|boolean|是|true:成功 false:失败| |data|返回结果数据|String|否|只有当success为true才会有该值,该值为RSA加密值,需解密使用,解密规则请看[接口签名,加解密说明](https://easydoc.top/doc/92150138/ZSNp8hjw/FVjvrnys)| ## 开票管理接口时序图 ![开票管理.jpg](https://cos.easydoc.net/87516830/files/knef4h9i.jpg) ## <a id="3.1.开票信息查询">3.1.公司主体、开票信息查询</a> >d 通过该接口可获取公司的可开发票列表,以及所拥有主体列表,无需频繁请求。请求到之后保存自己库即可。当签署主体信息有变更。或者发票内容有调整重新请求接口即可。 开发环境:https://pay-dev.lx-rhino.com 生产环境:https://api.lx-rhino.com #### 接口地址: /open/api/v1/yns/invoice/queryInvoice #### 请求方式:POST >d 该接口无需参数 #### 响应参数说明: |参数名称| 参数含义|数据类型| 是否必有| 参数备注| |-|-|-|-|-| |name| 主体名称| String|是|主体名称| |mainstayId| 主体ID|Integer| 是|主体ID| |taxRate| 税率|BigDecimal| 是|| |invoiceOpResponseList| 发票列表|Array|是|发票列表为List数组 |invoiceCode|发票编码|String| 是|发票列表:invoiceOpResponseList里面属性| |invoiceContent|发票内容|String| 是|发票列表:invoiceOpResponseList里面属性| |industryName|行业名称|String| 是|发票列表:invoiceOpResponseList里面属性| |industryCode|行业编码|String| 是|发票列表:invoiceOpResponseList里面属性| 解密结果示例如下: ```json [ { "invoiceOpResponseList": [ { "invoiceCode": "发票编码", "invoiceContent": "发票内容", "industryName": "行业名称", "industryCode": "行业编码", } ], "mainstayId": 1, "name": "安吉", "taxRate": 0.05 } ] ``` ## <a id="3.2.开票申请">3.2.开票申请</a> 开发环境:https://pay-dev.lx-rhino.com 生产环境:https://api.lx-rhino.com #### 接口地址: /open/api/v1/yns/invoice/serviceInvoicesApply #### 请求方式:POST #### 请求参数说明: |参数名称|参数含义|数据类型|是否必填|参数备注| |-|-|-|-|-| |mainstayId|主体id|Integer|是|| |invoiceCode|发票编码|String|是|| |remark|备注|String|否|| #### 接口响应参数data字段解密后的参数说明: |参数名称| 参数含义|数据类型| 是否必有| 参数备注| |-|-|-|-|-| |invoiceBillNo|开票订单号|String|是|| |invoiceAmount|开票金额|BigDecimal|是|| |invoiceStatus|开票状态|Integer|是|详情请参考[开票状态码](https://easydoc.top/doc/92150138/ZSNp8hjw/BoPRc3hR)| |mainstayId|主体id|Integer|是|| |invoiceContent| 发票内容|String|是|| |purchaserInvoiceTitle| 购买方发票抬头 |String|是|| |purchaserTaxNumber| 购买方税号 |String|是|| |purchaserAddressPhone| 购买方地址、电话 |String|是|| |purchaserBankAccount| 购买方开户行及账号 |String|是|| |sellerInvoiceTitle| 销售方发票抬头 |String|是|| |sellerTaxNumber| 销售方税号 |String|是|| |sellerAddressPhone| 销售方地址、电话 |String|是|| |sellerBankAccount| 销售方开户行及账号 |String|是|| |failReason| 失败原因 |String|否|| ## <a id="3.3.开票确认">3.3.开票确认</a> 开发环境:https://pay-dev.lx-rhino.com 生产环境:https://api.lx-rhino.com #### 接口地址: /open/api/v1/yns/invoice/serviceInvoicesApplyConfirm #### 请求方式:POST #### 请求参数说明: |参数名称|参数含义|数据类型|是否必填|参数备注| |-|-|-|-|-| |invoiceBillNo|开票订单编号|String|是|| |settlementCert|证据链url|String|否|| >d注意: >settlementCertUrl(结算证明):是根据商户后台配置判断的 >众包模式:默认是不需要上传结算证明的 #### 接口响应参数data字段解密后的参数说明: |参数名称| 参数含义|数据类型| 是否必有| 参数备注| |-|-|-|-|-| |invoiceBillNo|开票订单编号|String|是|| |confirmResult|确认结果|Boolean|是|| |failReason|失败原因|String|否|| ## <a id="3.4.开票结果查询">3.4.开票结果查询</a> 开发环境:https://pay-dev.lx-rhino.com 生产环境:https://api.lx-rhino.com #### 接口地址: /open/api/v1/yns/invoice/queryServiceInvoicesResult #### 请求方式:POST #### 请求参数说明: |参数名称|参数含义|数据类型|是否必填|参数备注| |-|-|-|-|-| |invoiceBillNo|开票订单编号|String|是|| #### 接口响应参数data字段解密后的参数说明: |参数名称| 参数含义|数据类型| 是否必有| 参数备注| |-|-|-|-|-| |invoiceBillNo|开票订单号|String|是|| |invoiceClassification|开票类型|Integer|是|| |invoiceStatus|开票状态|Integer|是|详情请参考[开票状态码](https://easydoc.top/doc/92150138/ZSNp8hjw/BoPRc3hR)| |mainstayId|主体id|Integer|是|| |invoiceAmount|开票金额|BigDecimal|是|| |invoiceContent| 发票内容|String|是|| |remark| 备注 |String|否|| |purchaserInvoiceTitle| 购买方发票抬头 |String|是|| |purchaserTaxNumber| 购买方税号 |String|是|| |purchaserAddressPhone| 购买方地址、电话 |String|是|| |purchaserBankAccount| 购买方开户行及账号 |String|是|| |addressee| 收件人 |String|是|| |phone| 联系电话 |String|是|| |area| 所在地区 |String|是|| |detailAddress| 详细地址 |String|是|| |sellerInvoiceTitle| 销售方发票抬头 |String|是|| |sellerTaxNumber| 销售方税号 |String|是|| |sellerAddressPhone| 销售方地址、电话 |String|是|| |sellerBankAccount| 销售方开户行及账号 |String|是|| | settlementCertUrl | 结算单证明 | String | 是 | | | settlementCertCustomUrl | 自定义证明 | String | 是 | | | expressCompany | 快递公司 | String | 是 | | | expressNo | 快递单号 | String | 是 | | | postStatus | 邮寄状态 | String | 是 |0:未邮寄 1.已邮寄 | | failReason | 失败原因 | String | 否 | |