对公未清台账核销查询接口

说明

对公未清台账(预付未到票)核销查询接口,用于外部集成系统(如凭证生成系统)按月拉取预付未到票费用行及其核销明细。返回数据采用主从结构

  • 主表(预付费用行):来自 expense_non_receipt_record,关联报销单(corp_type = NO_RECEIPT)和保证金/押金台账(deposit_book)。
  • 从表(核销明细 deductions:来自 expense_deduction,覆盖两类核销记录:
    • 单据核销(document:报销单提交时自动生成的核销,deductedFormCode 有值(关联报销单单据号)。
    • 手动核销(manual:财务在对公未清台账页面手动操作的核销,deductedFormCode 为空。

接口限制

  • 鉴权方式:entToken(与现有 OpenAPI 接口一致)。
  • 入参必须至少传其中一个过滤条件:
    • 提单时间区间(submitTimeStart + submitTimeEnd),或
    • 报销单外码列表(reimburseCodes)。
    • 两个条件都不传时直接报错。
  • 若传入提单时间区间,submitTimeEnd - submitTimeStart 最多 31 天,超出会报错。
  • reimburseCodes 为报销单外码(reimburse_data.reimburse_code,即业务单据号),非内码 reimburse_data_code;列表内元素去重后精确匹配,最多建议不超过 200 个。
  • pageSize 默认 50、最大 100;超过 100 由服务端自动截断为 100。
  • 查询结果按预付单据提单时间倒序排列。

接口地址

/api/openapi/corp-unsettled/verify/items

请求类型

POST

请求参数

参数说明

参数名称 类型 是否必填 参数说明
submitTimeStart Long 预付费用所在单据的提单时间起(毫秒时间戳,对应 reimburse_data.submitted_at)。与 submitTimeEnd 成对传入;若不传时间,则 reimburseCodes 必须非空
submitTimeEnd Long 预付费用所在单据的提单时间止(毫秒时间戳)。与 submitTimeStart 成对传入;若传入时间区间,submitTimeEnd - submitTimeStart 不得超过 31 天
reimburseCodes List<String> 预付费用所在报销单外码列表(精确匹配 reimburse_data.reimburse_code,即业务单据号,非内码 reimburse_data_code)。不传则不按单据号过滤;若不传,则提单时间区间必须非空
pageNo Integer 页码,默认为 1
pageSize Integer 分页大小,默认为 50,最大为 100

至少传一个submitTimeStart + submitTimeEndreimburseCodes 至少需要传其中一个条件,否则接口返回参数校验错误。

参数样例

样例一:按提单时间区间查询

{
  "submitTimeStart": 1751328000000,
  "submitTimeEnd": 1754006399000,
  "pageNo": 1,
  "pageSize": 50
}

样例二:按报销单外码列表查询

{
  "reimburseCodes": ["MK26071501", "MK26071602"],
  "pageNo": 1,
  "pageSize": 50
}

响应参数

响应参数说明

字段名称 字段类型 字段说明
hasNextPage Boolean 是否有下一页
list List<CorpUnsettledVerifyItem> 预付费用行列表(主从结构)

预付费用行(CorpUnsettledVerifyItem)

字段名称 字段类型 字段说明
expenseCode String 预付费用行唯一 code
submitByCode String 提单人工号(employee_id
reimburseCode String 预付费用所在报销单外码(reimburse_data.reimburse_code,即业务单据号)
expenseTypeCode String 费用类型业务编码(bizCode)
expenseTypeName String 费用类型名称
formType String 单据类型(单据小类业务编码 bizCode)
reimburseName String 事由(单据名称,reimburse_data.reimburse_name
legalEntityCode String 公司抬头业务编码(bizCode)
coverDepartmentCode String 承担部门业务编码(bizCode)
responsibleUserCode String 责任人工号(employee_id,业务经办人,多个用英文逗号 , 拼接)
tradingPartnerCode String 往来单位业务编码(bizCode)
nonReceiptAmount MonetaryAmount 未到票金额(原币)
deductingAmount MonetaryAmount 核销中金额(PENDING 状态累计;无核销中记录返回 null
returningAmount MonetaryAmount 退回中金额(仅 DEPOSIT/GUARANTEE 子类型有值,普通预付为 null
deductedAmount MonetaryAmount 已核销金额(COMPLETED 状态累计,等价于 receipt_amount
returnedAmount MonetaryAmount 已退回金额(仅 DEPOSIT/GUARANTEE 子类型有值,普通预付为 null
consumeCcy String 消费币种
deductions List<CorpUnsettledVerifyDeduction> 嵌套核销明细列表(按 recordExpenseCode 归属到当前费用行,无记录返回空数组)

核销明细(CorpUnsettledVerifyDeduction)

字段名称 字段类型 字段说明
deductedAt Long 核销时间(毫秒时间戳)
deductedFormCode String 核销单据号(外码 reimburse_data.reimburse_codedeductionType=document 时为到票核销费用所在单据号;manual 时返回空字符串)
deductedAmount MonetaryAmount 本次核销金额(原币,币种同主行 consumeCcy
deductedByCode String 核销操作人工号(employee_id;单据核销时为费用提交人;手动核销时为操作人)
deductionType String 核销类型:document 单据核销 / manual 手动核销
reasonMsg String 核销原因备注

MonetaryAmount(金额对象)

字段名称 字段类型 字段说明
amount Number 金额(已按企业币种精度处理)
currency String 币种 code(如 CNYUSD

参数样例

含单据核销 + 手动核销的主从响应(含分页)

{
  "code": "ACK",
  "message": null,
  "data": {
    "list": [
      {
        "expenseCode": "NR2606101WXYZ001",
        "submitByCode": "E001",
        "reimburseCode": "MK26071501",
        "expenseTypeCode": "TRAVEL",
        "expenseTypeName": "差旅费",
        "formType": "REIMBURSE_GENERAL",
        "reimburseName": "2026 年 6 月差旅预付",
        "legalEntityCode": "SUB001",
        "coverDepartmentCode": "DEPT001",
        "responsibleUserCode": "E001,E002",
        "tradingPartnerCode": "VEN001",
        "nonReceiptAmount": { "amount": 5000.00, "currency": "CNY" },
        "deductingAmount": { "amount": 800.00, "currency": "CNY" },
        "returningAmount": null,
        "deductedAmount": { "amount": 1200.00, "currency": "CNY" },
        "returnedAmount": null,
        "consumeCcy": "CNY",
        "deductions": [
          {
            "deductedAt": 1752912300000,
            "deductedFormCode": "MK26071501",
            "deductedAmount": { "amount": 1200.00, "currency": "CNY" },
            "deductedByCode": "E001",
            "deductionType": "document",
            "reasonMsg": "报销单核销"
          },
          {
            "deductedAt": 1752998700000,
            "deductedFormCode": "",
            "deductedAmount": { "amount": 800.00, "currency": "CNY" },
            "deductedByCode": "E002",
            "deductionType": "manual",
            "reasonMsg": "财务手动核销尾差"
          }
        ]
      }
    ],
    "hasNextPage": false
  },
  "requestId": null,
  "errorCode": null,
  "success": true
}

空结果响应(分页)

{
  "code": "ACK",
  "message": null,
  "data": {
    "list": [],
    "hasNextPage": false
  },
  "requestId": null,
  "errorCode": null,
  "success": true
}

修改记录

2026-07-23  公司抬头字段由 subsidiaryCode 改为 legalEntityCode(取自 account-books.legalEntityCode,经 EntLegalEntityService 翻译为 bizCode)
2026-07-23  金额字段改为 MonetaryAmount 对象格式(含 amount + currency);事由字段由 businessPurpose 改为 reimburseName(取自 reimburse_data.reimburse_name);responsibleUserCode/deductedByCode 工号翻译修正
2026-07-23  响应字段说明与样例更新:code 类字段统一返回 bizCode(业务编码),人员 code 统一返回工号(employee_id);formType 改为单据小类 bizCode 而非 corpType
2026-07-21  入参调整:提单时间区间不再必填,与报销单外码列表(reimburseCodes) 二选一即可;单据号由内码 reimburseDataCode 改为外码 reimburseCodes(支持多个,精确匹配 reimburse_data.reimburse_code);响应字段 reimburseDataCode 改名为 reimburseCode 并使用外码,deductedFormCode 同步使用外码
2026-07-23  响应字段说明与样例更新:code 类字段统一返回 bizCode(业务编码),人员 code 统一返回工号(employee_id);formType 改为单据小类 bizCode 而非 corpType
2026-07-21  重新对外接口:v1 接口 /corp-unsettled/verify/list 未上线即作废;改为 v2 /corp-unsettled/verify/items,返回主从结构(预付费用行 + 嵌套 deductions),入参改为按预付单据提单时间区间 + 单据号查询
2026-07-17  新增对公未清台账核销查询接口文档
Copyright © 杭州每刻科技有限公司 www.maycur.com all right reserved,powered by Gitbook该文件修订时间: 2026-07-27 13:47:06

results matching ""

    No results matching ""

    results matching ""

      No results matching ""