发票台账查询V2接口

说明

通过该接口,可以查询到结构化的发票数据。

注意事项

  • 每次最多只能查询100条数据;
  • 如果发票状态码为空,请传"" ,而不是null;
  • formCode 为条件必填:默认需要提供;当 taskEndDateStart 与 taskEndDateEnd 构成合法且不超过90天的时间对,或 invoiceUpdateAtStart 与 invoiceUpdateAtEnd 构成合法且不超过90天的时间对时,可以不传。两组合法时间对也可以同时提供;
  • invoiceUpdateAtStart 与 invoiceUpdateAtEnd 必须成对提供,使用正值 Unix 毫秒时间戳,开始时间不得晚于结束时间,跨度不得超过90天;开始等于结束及恰好90天均合法;
  • 发票修改时间按闭区间 [start, end] 查询,开始和结束边界均包含,实际查询精度为分钟级;
  • 仅能查询到被单据关联的发票,若发票为仅在账本,则不会被查到。

接口地址

/api/openapi/invoice-ledger/v2/list-invoice-info

请求类型

POST

请求参数

参数说明

字段名称 字段类型 是否必填 字段说明
reimburseStatus List<String> 否 发票所属单据的状态 :
APPROVING 审批中
AUDITING 审核中
FORWARD 审核后审批
SETTLEMENT 结算
COMPLETED 完结
CLOSED 关闭
pageNo int 否 页码,默认值1
pageSize int 否 每页条数。默认100,最大值为100
formCode String(100) 条件必填 单据号。默认必填;提供合法且不超过90天的 taskEndDateStart/taskEndDateEnd 或 invoiceUpdateAtStart/invoiceUpdateAtEnd 任一时间对时可不传;两组合法时间对可同时提供
invoiceOutStateCodes List<String> 否 发票状态码,发票状态码默认为"",该字段为发票台账回写接口传入的状态码。例如:填写"",则查询状态码为空的所有数据。
buyerTaxNumber String(140) 否 购买方税号
taskEndDateStart Long 否 根据单据结束时间,返回(包括)之后的数据(对应返参数的procTaskStartTime)(时间范围90天内)
taskEndDateEnd Long 否 根据单据结束时间,返回(不包括)之前的数据(对应返参数的procTaskEndTime) (时间范围90天内)
invoiceTypes List<String> 否 发票类型
invoiceUpdateAtStart Long 否 发票修改时间开始值,正值 Unix 毫秒时间戳;必须与 invoiceUpdateAtEnd 成对提供,开始不得晚于结束,跨度不超过90天;开始等于结束及恰好90天合法;查询为闭区间 [start, end],实际精度为分钟级
invoiceUpdateAtEnd Long 否 发票修改时间结束值,正值 Unix 毫秒时间戳;必须与 invoiceUpdateAtStart 成对提供,开始不得晚于结束,跨度不超过90天;开始等于结束及恰好90天合法;查询为闭区间 [start, end],实际精度为分钟级
invoiceDataCodes List<String> 否 发票内码
commonInvoiceTypes List<String> 否 每刻统一发票类型 发票类型编码
signStatusList List<String> 否 签收状态: NOT_STARTED(未发起签收), SIGNING(待签收), COMPLETED(已完成)

参数样例

{
  "pageNo": 1,
  "pageSize": 10,
  "reimburseStatus": [
    "APPROVING",
    "AUDITING",
    "FORWARD",
    "SETTLEMENT",
    "COMPLETED",
    "CLOSED"
  ],
  "formCode": "XXX",
  "invoiceOutStateCodes": [
    "",
    "A"
  ],
  "startDate": 1336320000000,
  "endDate": 1336406400000,
  "buyerTaxNumber": "11010867663556711",
  "taskEndDateStart": 1672558087000,
  "taskEndDateEnd": 1675063687693,
  "invoiceUpdateAtStart": 1672558087000,
  "invoiceUpdateAtEnd": 1675063687693,
  "invoiceDataCodes": [],
  "signStatusList": [
    "NOT_STARTED",
    "SIGNING"
  ]
}

按发票修改时间增量查询样例

以下示例不传 formCode,通过发票修改时间和关联单据状态增量查询发票:

{
  "pageNo": 1,
  "pageSize": 100,
  "invoiceUpdateAtStart": 1782835200000,
  "invoiceUpdateAtEnd": 1785513540000,
  "reimburseStatus": [
    "AUDITING",
    "COMPLETED"
  ]
}

查询条件校验

以下请求会校验失败,具体错误结构和提示语以接口实际返回为准:

  • 只提供 invoiceUpdateAtStart 或 invoiceUpdateAtEnd 中的一个字段;
  • 发票修改时间的任一时间戳为0或负数;
  • invoiceUpdateAtStart 晚于 invoiceUpdateAtEnd;
  • 发票修改时间跨度超过90天;
  • 未提供 formCode,且未提供任一组合法的单据结束时间对或发票修改时间对。

大跨度增量同步建议

首次同步或补偿同步的时间范围超过90天时,请拆分为每段不超过90天的连续窗口。由于发票修改时间使用分钟级精度和闭区间 [start, end],建议相邻窗口保留边界重叠,例如依次查询 [T0, T1]、[T1, T2],并由调用方按唯一的 invoiceDataCode 去重,避免遗漏边界数据或重复归档。

响应参数

响应参数说明

字段名称 字段类型 是否必填 字段说明
hasNextPage boolean 是 是否有下一页
list List<InvoiceDto> 是 发票对象

InvoiceDto 发票

字段名称 字段类型 是否必填 字段说明
invoiceDataCode String(25) 是 发票code
reimburseCode String(50) 是 单据号
reimburseDataCode String(25) 是 单据内码
buyerName String 是 购方名称
legalEntityName string 是 公司抬头
buyerTaxNumber String 是 购方税号
invoiceCode String 是 发票代码
invoiceNumber String 是 发票号码
issueDate String 是 开票时间
issueDateDesc String 是 开票时间(格式化)
procTaskEndTime String 是 关联单据结束时间
procTaskEndTimeDesc String 是 关联单据结束时间(格式化)
procTaskStartTime String 是 关联单据开始时间
procTaskStartTimeDesc String 是 关联单据结开始间(格式化)
checkCode String 是 校验码
totalPriceAmount String 是 不含税金额
totalTaxAmount String 是 税额
totalPriceAndTax String 是 价税合计
untaxAmount String 是 申报未税金额
supplierName String 是 销方名称
supplierAddress String 是 销方地址和电话
invoiceType String 是 发票类型编码
invoiceTypeDesc String 是 发票类型描述
attachmentFiles List< FileInfo > 是 发票对象,见下表
validateStatus String 是 发票验真状态编码,见下表
validateStatusDesc String 是 发票验真状态描述,见下表
ticketData String 是 发票一些相关信息
taxRate String 是 税率
buyerAddressPhone String 是 购方地址和电话
buyerAccount String 是 购方账户(购方开户行+账户)非增值税发票和未验真的发票:该字段内容为空字符串
supplierAccount String 是 销方账户(销方开户行+账户)非增值税发票和未验真的发票:该字段内容为空字符串
source String 是 发票来源编码
sourceDesc String 是 发票来源描述
companySeal String 是 有无专用章
invoiceRemark String 是 发票备注
lineItems List< lineItemsDto > 是 货物明细,见下表
supplierTaxNumber String 是 销方税号
invoiceTaxDtoList List< InvoiceTaxDto > 是 发票税额明细,见下表
invoiceStateCode String 是 发票状态码(A-Z)
externalVoucherCodes String 是 关联单据凭证号
cancellationMark String 是 发票作废状态
cancellationMarkUpdateTime String 是 发票作废状态更新时间
supplierUnusual String 是 销售方异常状态
supplierUnusualUpdateTime String 是 销售方异常状态更新时间
invoiceDeductionStatus String 否 发票抵扣状态[PARTDEDUCTION,ALLDEDUCTION,NODEDUCTION]
invoiceDeductionStatusDesc String 否 发票抵扣状态描述[部分抵扣,全部抵扣,不抵扣]
invoiceUpdateAt String 否 发票更新时间
formRankCode String 是 发票费用编号
expenseCode String 是 费用编码
invoiceType String 是 发票类型
commonInvoiceType String 否 每刻统一发票编码 发票类型编码
commonInvoiceTypeDesc String 否 每刻统一发票编码描述
invoiceCcy String 是 发票币种
departmentBizCode String 是 承担部门业务编码
departmentName String 是 承担部门名称
signStatus String 否 签收状态: NOT_STARTED(未发起签收), SIGNING(待签收), COMPLETED(已完成)

FileInfo 附件信息

字段名称 字段类型 是否必填 字段说明
code String(25) 是 内部code
mimeType String(50) 是 文件类型:image/png
filename String(25) 是 文件名称
type String 是 文件类型:image/png
downloadUrl String 是 源文件下载地址,有时效性,7天有效期
originalUrl String 是 预览图地址,有时效性,7天有效期
thumUrl String 是 缩略图地址,有时效性,7天有效期
imageUrl String 是 发票图片地址,有时效性,7天有效期(用户上传的原始图片),若上传的文件是pdf,此参数返回“images/pdf.png”)

lineItemsDto 货物明细

字段名称 字段类型 是否必填 字段说明
code String(25) 是 明细编码
invoiceDataCode String(25) 是 发票code
name String(25) 是 货物名称
priceAmount BigDecimal 是 金额
taxRate BigDecimal 是 税率
taxAmount BigDecimal 是 税额
num BigDecimal 是 数量
specificationModel String 是 规格型号
unit String 是 单位
unitPrice BigDecimal 是 单价
taxRateMark String 是 税率标记
taxRateMarkDesc String 是 税率标记描述
expenseCode String 是 费用编码
invoiceType String 是 发票类型

InvoiceTaxDto 发票抵扣

字段名称 字段类型 是否必填 字段说明
taxableDetails String(25) 是 应税明细
taxRate String(25) 是 税率
approvedDeductionAmount AmountInput 是 抵扣税额
approvedTaxAmount AmountInput 是 税额
transferOut String 是 是否转出

validateStatus(验真状态)对应validateStatusDesc(验真状态解释说明)

验真状态 验真状态解释说明
NOT_VALIDATION 未验真
VALIDATED 已验真
VALIDATION_FAILED 验真失败

AmountInput 金额

字段名称 字段类型 是否必填 字段说明
currency String(3) 是 币种
amount BigDecimal 是 金额
customExchangeRate BigDecimal 是 汇率
amountStr String 是 带币种金额

参数样例


{
  "code": "ACK",
  "message": "成功",
  "data": {
    "list": [
      {
        "invoiceDataCode": "INV20122912U89IWW",
        "reimburseCode": "MK118070203",
        "reimburseDataCode": "BX1807041LX7O64G",
        "buyerName": "",
        "buyerTaxNumber": "",
        "invoiceCode": "",
        "invoiceNumber": "",
        "issueDate": 1530673200000,
        "issueDateDesc": "2018-07-04",
        "procTaskEndTime": 1674631618000,
        "procTaskEndTimeDesc": "2023-01-25",
        "procTaskStartTime": 1672739570726,
        "procTaskStartTimeDesc": "2023-01-03",
        "checkCode": "",
        "totalPriceAmount": 0,
        "totalTaxAmount": 0,
        "totalPriceAndTax": 0,
        "untaxAmount": "0",
        "supplierName": "",
        "supplierAddress": "",
        "supplierTaxNumber": "12321231231",
        "invoiceType": "OTHER",
        "invoiceTypeDesc": "其他",
        "invoiceStateCode": "A",
        "cancellationMarkUpdateTime": 1672739570726,
        "supplierUnusual": "BLACK",
        "supplierUnusualUpdateTime": 1672739570726,
        "invoiceUpdateAt": "2023-01-03",
        "attachmentFiles": [
          {
            "code": "ATT1807051YCYYUBK",
            "resourceKey": "OSS1807051OM923NK/6c89c484-3da8-4f00-9184-258668ac696c.png",
            "mimeType": "image/png",
            "originalUrl": "https://dd-uat.oss-cn-hangzhou.aliyuncs.com/OSS1807051OM923NK/6c89c484-3da8-4f00-9184-258668ac696c.png?Expires=1594276388&OSSAccessKeyId=LTAIW3TdsFRisDtO&Signature=FI4lQ8soBEmw3L6nsf%2FOUrjdS00%3D&x-oss-process=image%2Fauto-orient%2C1",
            "thumUrl": "https://dd-uat.oss-cn-hangzhou.aliyuncs.com/OSS1807051OM923NK/6c89c484-3da8-4f00-9184-258668ac696c.png?Expires=1594276388&OSSAccessKeyId=LTAIW3TdsFRisDtO&Signature=dcUuR6JHu%2BUe6V5VXHOteZ%2FWkHU%3D&x-oss-process=image%2Fresize%2Cm_fixed%2Cw_100%2Ch_100",
            "filename": "屏幕快照 2018-05-21 下午2.35.51.png",
            "type": "image/png",
            "imageUrl": "https://dd-uat.oss-cn-hangzhou.aliyuncs.com/OSS1807051OM923NK/6c89c484-3da8-4f00-9184-258668ac696c.png?Expires=1594276388&OSSAccessKeyId=LTAIW3TdsFRisDtO&Signature=FI4lQ8soBEmw3L6nsf%2FOUrjdS00%3D&x-oss-process=image%2Fauto-orient%2C1",
            "size": 200483,
            "isQrCodePic": false,
            "withHandSignUrl": null,
            "qrCodePic": false
          }
        ],
        "validateStatus": "NOT_VALIDATION",
        "validateStatusDesc": "未验真",
        "ticketData": null,
        "approvedTaxAmount": {
          "amount": 0,
          "currency": "CNY",
          "amountStr": "¥0.00"
        },
        "approvedDeductionAmount": {
          "amount": 0,
          "currency": "CNY",
          "amountStr": "¥0.00"
        },
        "taxRate": 0,
        "buyerAddressPhone": null,
        "buyerAccount": "宁波银行杭州分行营业部71010122001844352",
        "supplierAccount": null,
        "source": null,
        "sourceDesc": null,
        "companySeal": null,
        "invoiceTaxDtoList": [
          {
            "taxableDetails": "*运输服务*地铁票",
            "taxRate": 0.09000,
            "approvedDeductionAmount": {
              "amount": 0.25,
              "currency": "CNY",
              "customExchangeRate": 1,
              "amountStr": "¥0.25"
            },
            "approvedTaxAmount": {
              "amount": 0.25,
              "currency": "CNY",
              "customExchangeRate": 1,
              "amountStr": "¥0.25"
            },
            "transferOut": false,
            "freeTax": false
          }
        ],
        "invoiceRemark": null,
        "lineItems": null,
        "departmentBizCode": "DI220",
        "departmentName": "部门",
        "signStatus": "NOT_STARTED"
      }
    ],
    "hasNextPage": false
  },
  "success": true
}

修改记录

2023-02-08  新增发票台账查询文档
2026-02-03  返参新增发票币种
2025-06-23  返参新增 untaxAmount(申报未税金额)
2026-08-06  DB-60885 补充按发票修改时间增量查询的条件、边界和同步建议
Copyright © 杭州每刻科技有限公司 www.maycur.com all right reserved,powered by Gitbook该文件修订时间: 2026-09-23 10:19:53

results matching ""

    No results matching ""

    results matching ""

      No results matching ""