# 查询报销发票信息
接口应在服务器端调用,不可在前端(小程序、网页、APP等)直接调用,具体可参考接口调用指南
接口英文名:invoicebxgetinvoice
报销方在上一步获得用户选择提交的电子发票标识参数后,可以通过该接口查询电子发票的结构化信息,并获取发票PDF文件。
# 1. 调用方式
# HTTPS 调用
POST https://api.weixin.qq.com/card/invoice/reimburse/getinvoiceinfo?access_token=ACCESS_TOKEN
# 云调用
- 本接口不支持云调用
# 第三方调用
本接口支持第三方平台代商家调用。
该接口所属的权限集 id 为:26
服务商获得其中之一权限集授权后,可通过使用 authorizer_access_token 代商家进行调用,具体可查看 第三方调用 说明文档。
# 2. 请求参数
# 查询参数 Query String parameters
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
access_token | string | 是 | 接口调用凭证,可使用 access_token、authorizer_access_token |
# 请求体 Request Payload
无
# 3. 返回参数
# 返回体 Response Payload
参数名 | 类型 | 说明 |
---|---|---|
card_id | string | 发票id |
begin_time | number | 发票的有效期起始时间 |
end_time | number | 发票的有效期截止时间 |
openid | string | 用户标识 |
type | string | 发票的类型,如广东增值税普通发票 |
payee | string | 发票的收款方 |
detail | string | 发票详情 |
user_info | object | 用户可在发票票面看到的主要信息 |
# Res.user_info Object Payload
用户可在发票票面看到的主要信息
参数名 | 类型 | 说明 |
---|---|---|
fee | number | 发票的金额,以分为单位 |
title | string | 发票的抬头 |
billing_time | number | 发票的开票时间,为10位时间戳(utc+8) |
billing_no | string | 发票的发票号码;数电发票传20位发票号码 |
billing_code | string | 发票的发票代码;数电发票发票代码为空 |
info | objarray | 商品详情结构 |
fee_without_tax | number | 不含税金额,以分为单位 |
tax | number | 税额,以分为单位 |
pdf_url | string | 这张发票对应的PDF_URL |
trip_pdf_ur | string | 其它消费凭证附件对应的URL,如行程单、水单等 |
check_code | string | 校验码,发票pdf右上角,开票日期下的校验码;数电发票发票校验码为空 |
buyer_number | string | 购买方纳税人识别号 |
buyer_address_and_phone | string | 购买方地址、电话 |
buyer_bank_account | string | 购买方开户行及账号 |
seller_number | string | 销售方纳税人识别号 |
seller_address_and_phone | string | 销售方地址、电话 |
seller_bank_account | string | 销售方开户行及账号 |
remarks | string | 备注,发票右下角初 |
cashier | string | 收款人,发票左下角处 |
maker | string | 开票人,发票下方处 |
reimburse_status | string | 发票报销状态 |
# Res.user_info.info(Array) Object Payload
商品详情结构
参数名 | 类型 | 说明 |
---|---|---|
name | string | 项目的名称 |
num | number | 项目的数量 |
unit | string | 项目的单位,如个 |
price | number | 项目的单价 |
# 4. 注意事项
发票状态码及状态含义如下:
状态 | 含义 |
---|---|
INVOICE_REIMBURSE_INIT | 发票初始状态,未锁定,可提交报销 |
INVOICE_REIMBURSE_LOCK | 发票已锁定,无法重复提交报销 |
INVOICE_REIMBURSE_CLOSURE | 发票已核销,从用户卡包中移除 |
# 5. 代码示例
请求示例
{
"card_id": "pjZ8Yt7KKEXWMpETmwG2ZZxX2m6E",
"encrypt_code": "O/mPnGTpBu22a1szmK2 "
}
返回示例
{
"errcode": 0,
"errmsg": "ok",
"user_info": {
"fee": 123,
"title": "灌哥发票",
"billing_time": 1504085973,
"billing_no": "1504085973",
"billing_code": "aabbccdd",
"info": [
{
"name": "牙膏",
"num": 3,
"unit": "个",
"price": 10000
}
],
"fee_without_tax": 2345,
"tax": 123,
"detail": "项目",
"pdf_url": "http://pdfurl",
"reimburse_status": "INVOICE_REIMBURSE_INIT",
"order_id": "1504085935",
"check_code": "check_code",
"buyer_number": "buyer_number"
},
"card_id": "pjZ8Yt7KKEXWMpETmwG2ZZxX2m6E",
"openid": "oZI8Fj8L63WugQsljlzzfCcw3AkQ",
"type": "广东省增值税普通发票",
"payee": "测试-收款方",
"detail": "detail"
}
# 6. 错误码
以下是本接口的错误码列表,其他错误码可参考 通用错误码
错误码 | 错误描述 | 解决方案 |
---|---|---|
0 | ok或者in a normal state | ok是指从不正常变成正常 in a normal state是指本来就正常 |
72015 | unauthorized create invoice | 没有操作发票的权限 |
72017 | invalid invoice title | 发票抬头不一致 |
72023 | invoice has been lock by others | 发票已被其他公众号锁定 |
72024 | invoice status error | 发票状态错误 |
# 7. 适用范围
本接口在不同账号类型下的可调用情况:
小程序 | 公众号 | 服务号 | 移动应用 |
---|---|---|---|
仅认证 | ✔ | ✔ | ✔ |
- 仅认证:表示仅允许企业主体已认证账号调用,未认证或不支持认证的账号无法调用
- ✔:该账号可调用此接口
- 其他未明确声明的账号类型,如无特殊说明,均不可调用此接口;