发票查询
- 接口(建议后缀):/invoice/search
- Method:POST
- 数据格式:Json
- 调用方:每刻
- 接口说明:每刻将通过该接口,发起发票信息查询,仅查询已开票成功的发票
请求参数
| 字段 | 类型 | 必填 | 描述 |
|---|---|---|---|
| externalCorpCode | String | Y | 企业在 TMC 中的唯一标识 |
| invoiceIds | List<String> | N | 发票在外部TMC的唯一id列表,优先级最高 |
| billCode | String | N | 账单唯一标识 |
| orderUniIdList | List<OrderUniId> | N | 订单唯一标识列表 |
| businessScope | BusinessScope | N | 订单类型 |
| invoiceBusinessType | BusinessType | N | 业务类型 |
| startDate | String | N | 开票日期开始(yyyy-MM-dd) |
| endDate | String | N | 开票日期结束(yyyy-MM-dd) |
| pageNo | int | Y | 第几页(从第1页开始) |
| pageSize | int | Y | 每页容量(最大为 100) |
OrderUniId
| 字段 | 类型 | 必填 | 描述 |
|---|---|---|---|
| orderId | String | Y | 订单号 |
| operationId | String | Y | 操作号 |
响应结构
| 字段 | 类型 | 必填 | 描述 |
|---|---|---|---|
| success | bool | Y | 请求是否成功 |
| errorMessage | String | N | 失败信息(当 success 为 false 时,调用详情为必填, 表示失败信息) |
| data | List<Invoice> | N | 发票信息 |
| hasNextPage | bool | Y | 是否有下一页 |
Invoice
| 字段 | 类型 | 必填 | 描述 |
|---|---|---|---|
| invoiceId | String | Y | 发票Id(非发票号码,为tmc系统发票唯一识别) |
| billCode | String | N | 账单唯一标识 |
| orderUniIdList | List<OrderUniId> | N | 订单唯一标识列表 |
| businessScope | BusinessScope | [1] | 订单类型 |
| invoiceBusinessType | BusinessType | N | 业务类型 |
| invoiceCode | String | Y | 发票代码,数电票无该字段 |
| invoiceNumber | String | Y | 发票号码 |
| invoiceDate | String | Y | 开票日期(yyyy-MM-dd) |
| checkCode | String | Y | 校验码 |
| taxFee | BigDecimal | Y | 税额 |
| totalFee | BigDecimal | Y | 发票总金额(价税合计) |
| preTaxFee | BigDecimal | N | 税前金额 |
| invoiceType | InvoiceType | Y | 发票类型 |
| invoiceStatus | InvoiceStatus | Y | 发票状态 |
| buyerName | String | Y | 购买方名称 |
| buyerTaxNumber | String | Y | 购买方纳税人识别号 |
| buyerAddress | String | N | 购买方地址 |
| buyerPhone | String | N | 购买方电话 |
| buyerAddressPhone | String | N | 购买方地址与电话 |
| buyerBank | String | N | 购买方开户行 |
| buyerAccount | String | N | 购买方账户 |
| buyerBackAccount | String | N | 购买方开户行及账号 |
| sellerName | String | Y | 销售方名称 |
| sellerTaxNumber | String | Y | 销售方纳税人识别号 |
| sellerAddress | String | N | 销售方地址 |
| sellerPhone | String | N | 销售方电话 |
| sellerAddressPhone | String | N | 销售方地址、电话 |
| sellerBank | String | N | 销售方开户行 |
| sellerAccount | String | N | 销售方账户 |
| sellerBankAccount | String | N | 销售方开户行及账号 |
| invoiceItems | List<InvoiceItem> | N | 发票明细列表(仅增值税发票有) |
| flightDetail | FlightDetail | N | 仅机票行程单(纸质&电子)有 |
| trainDetail | TrainDetail | N | 仅火车票(纸质&电子)有 |
| carDetail | CarDetail | N | 仅用车 |
| imgFileUrl | String | N | 发票图片链接 |
| pdfFileUrl | String | N | 发票PDF文件链接 |
| ofdFileUrl | String | N | 发票OFD文件链接 |
| xmlFileUrl | String | N | 发票XML文件链接 |
| expressCompany | String | [1] | 快递公司,对于纸票寄出后返回 |
| expressNo | String | [1] | 快递单号,对于纸票寄出后返回 |
| remark | String | N | 备注 |
[info] 说明:
[1] 当 orderUniId 有值时,该参数必填,即表示 orderId 和 operationId 是属于哪种业务类型。注意:
[1]非必填参数,对于纸质发票寄送出来后,返回快递公司以及快递单号。
InvoiceItem
| 字段 | 类型 | 必填 | 描述 |
|---|---|---|---|
| code | String | N | 税收分类编码 |
| number | String | N | 明细编号 |
| name | String | N | 明细名称 |
| unitPrice | BigDecimal | N | 含税单价 |
| quantity | BigDecimal | N | 数量 |
| unit | String | N | 计量单位 |
| taxFee | BigDecimal | N | 税额 |
| taxRate | BigDecimal | N | 税率 |
| rateMark | String | N | 税率标记 1:免税 2:不征税 3:零税率 |
| preTaxFee | BigDecimal | N | 税前金额 |
| totalFee | BigDecimal | N | 价税合计 |
FlightDetail
| 字段 | 类型 | 必填 | 描述 |
|---|---|---|---|
| ticketNo | String | N | 客票号 |
| passengerName | String | N | 乘机人姓名 |
| passengerId | String | N | 乘机人证件号 |
| ticketFee | BigDecimal | N | 票价 |
| oilFee | BigDecimal | N | 燃油费 |
| taxFee | BigDecimal | N | 机建费 |
| otherTaxFee | BigDecimal | N | 其他税费 |
| insurance | BigDecimal | N | 保险费 |
| segments | List<FlightSegment> | N | 航段列表 |
FlightSegment
| 字段 | 类型 | 必填 | 描述 |
|---|---|---|---|
| departureCity | String | N | 出发城市 |
| arrivalCity | String | N | 到达城市 |
| departureAt | String | N | 出发时间(yyyy-MM-dd HH:mm:ss) |
| arrivalAt | String | N | 出发时间(yyyy-MM-dd HH:mm:ss) |
| airlineName | String | N | 航司名称 |
| airlineCode | String | N | 航司编码 |
| flightNo | String | N | 航班号 |
| cabinName | Cabin | N | 舱位,如:Y (经济舱) |
| international | boolean | N | 是否是国际 |
TrainDetail
| 字段 | 类型 | 必填 | 描述 |
|---|---|---|---|
| ticketNo | String | N | 客票号 |
| passengerName | String | N | 乘机人姓名 |
| passengerId | String | N | 乘机人证件号 |
| trainNo | String | N | 车次号 |
| seatNo | String | N | 座位号 |
| seatName | String | N | 坐席类别名称,如:二等座 |
| departureStation | String | N | 出发车站 |
| arrivalStation | String | N | 到达车站 |
| departureAt | String | N | 出发时间(yyyy-MM-dd HH:mm:ss) |
| arrivalAt | String | N | 到达时间(yyyy-MM-dd HH:mm:ss) |
| ticketFee | BigDecimal | N | 票价 |
CarDetail
| 字段 | 类型 | 必填 | 描述 |
|---|---|---|---|
| departureCity | String | N | 出发城市 |
| arrivalCity | String | N | 到达城市 |
| departureAddress | String | N | 出发地点 |
| arrivalAddress | String | N | 到达地点 |
| departureAt | String | N | 出发时间(yyyy-MM-dd HH:mm:ss) |
| arrivalAt | String | N | 到达时间(yyyy-MM-dd HH:mm:ss) |
| carType | CarType | N | 车型 |
| totalDistance | BigDecimal | N | 距离(km) |
| totalFee | BigDecimal | N | 金额 |
| itinerarySourceUrl | String | N | 行程单第三方源Url |
BusinessType
| code | 定义 |
|---|---|
| DOMESTIC_FLIGHT | 国内机票 |
| DOMESTIC_FLIGHT_COMMISSION | 国内机票退票费 |
| DOMESTIC_FLIGHT_SERVICE | 国内机票服务费 |
| INTERNATIONAL_FLIGHT | 国际机票 |
| INTERNATIONAL_FLIGHT_SERVICE | 国际机票服务费 |
| DOMESTIC_TRAIN | 国内火车 |
| DOMESTIC_TRAIN_COMMISSION | 国内火车改签费 |
| DOMESTIC_TRAIN_REFUND | 国内火车退票费 |
| DOMESTIC_TRAIN_SERVICE | 国内火车服务费 |
| DOMESTIC_HOTEL | 国内酒店 |
| DOMESTIC_HOTEL_SERVICE | 国内酒店服务费 |
| INTERNATIONAL_HOTEL | 国际酒店 |
| INTERNATIONAL_HOTEL_SERVICE | 国际酒店服务费 |
| CAR | 用车 |
| CAR_SERVICE | 用车服务费 |
| INSURANCE | 保险费 |
InvoiceType
| code | 定义 |
|---|---|
| VAT | 增值税普通发票(纸质) |
| VAT_E | 增值税电子普通发票 |
| FULL_VAT_E | 电子发票(普通发票) |
| SPECIAL_VAT | 增值税专用发票(纸质) |
| SPECIAL_VAT_E | 增值税电子专用发票 |
| FULL_SPECIAL_VAT_E | 电子发票(增值税专用发票) |
| TRAIN | 火车票(纸质) |
| FULL_TRAIN_E | 电子发票(铁路电子客票) |
| FLIGHT | 机票行程单(纸质) |
| FULL_FLIGHT_E | 电子发票(航空运输电子客票行程单) |
InvoiceStatus
| code | 定义 |
|---|---|
| NORMAL | 正常票(默认) |
| CANCELED | 已作废 |
| REVERSED | 已红冲(纸质票之前只有红冲之说,但不排除会存在部分红冲和全部红冲的可能) |
| PART_REVERSED | 部分红冲(数电票) |
| FULL_REVERSED | 全部红冲(数电票) |
Cabin
| code | 定义 |
|---|---|
| S | 超级经济舱 |
| Y | 经济舱 |
| C | 商务舱 |
| F | 头等舱 |
CarType
| code | 定义 |
|---|---|
| TAXI | 出租车 |
| ECONOMY | 经济 |
| PRIVILEGED | 优享 |
| PREMIER | 舒适 |
| BUSINESS | 商务 |
| LUXURY | 豪华 |
| DESIGNATED | 代驾 |
| ELECTRICAL | 电动车 |
| ENTRY_LIMOUSINE | 入门高端轿车 |
| LIMOUSINE | 高端轿车 |
| ELITE | 精英型 |
| SMALL_MPV | 小型MPV |
| MIDSIZE_MPV | 中型MPV |
| SMALL_SUV | 小型SUV |
| MIDSIZE_SUV | 中型SUV |
| LARGE_SUV | 大型SUV |
| LUXURY_SUV | 高端SUV |
| ELITE_SUV | 精英型SUV |
| ELECTRICAL_SUV | 电动SUV |
| BLINDBOX_ECONOMY | 盲盒·经济型 |
| BLINDBOX_PREMIER | 盲盒·舒适型 |
| BLINDBOX_SUV | 盲盒·SUV型 |