进项-抵扣认证全流程
修改历史
| 版本号 | 变更日期 | 变更内容 | 变更人 | 对接疑问联系方式 |
| V1.00 | 2020-05-28 | 创建 | 祖凯 | zukai@yonyou.com |
对接流程

注意事项:
认证发票需要提前在税务云系统的增值税管理-进项认证管理-发票勾选连接税盘并进行同步数据,以确保税局当天发票已经下载到 税务云
操作类型接口需保证税盘在线:勾选、撤销勾选、确认认证、取消认证等
抵扣认证流程基于税局的认证流程,相对复杂,且在不同的报税期表现有所区别,请对接技术人员、业务人员可先到税局对认证的流程进行必要性扫盲和了解:https://fpdk.beijing.chinatax.gov.cn/
税务云同步数据所在菜单

税局2019新认证流程指引

1、查询当前税号税期 [税盘在线]
URL
GET
URL:``http://{IP}:{PORT}/invoiceclient-web/api/vat/period?appid=XXXX`
请求参数
请求参数说明
| 参数 | 类型 | 长度 | 是否必填 | 默认值 | 描述 | 说明 |
| nsrsbh | String | | 是 | | 纳税人识别号 | |
返回值
返回值说明
| 参数 | 类型 | 描述 | 说明 |
| code | String | 状态码 | 0000-操作成功;其他:失败 |
| msg | String | 信息说明 | |
| expirationDate | String | 当前税期截止日期,一般为次月15号 | |
| period | String | 当前税期 | |
2、检测税盘是否在线
URL
GET
URL:``http://{IP}:{PORT}/invoiceclient-web/api/vat/disk/check?appid=XXXX`
请求参数
请求参数说明
| 参数 | 类型 | 长度 | 是否必填 | 默认值 | 描述 | 说明 |
| nsrsbh | String | | 是 | | 纳税人识别号 | |
返回值
返回值说明
| 参数 | 类型 | 描述 | 说明 |
| code | String | 状态码 | 0000-操作成功;其他:失败 |
| msg | String | 信息说明 | |
| datas | String | 返回数据 | 税号匹配登录模式: fpdk-认证平台的税盘模式;dppt-电子税局数电试点税号的账号+密码+手机+验证码模式. 税号模式根据实际税号不同. |
3、从税务云获取专票(非税局,需要先到税务云同步数据)
URL
POST
URL:``http://{IP}:{PORT}/invoiceclient-web/api/vat/queryInvoice?appid=XXXX`
请求体
请求体说明
| 参数 | 类型 | 长度 | 是否必填 | 默认值 | 描述 | 说明 |
| fpdm | String | | 否 | | 发票代码 | |
| fphm | String | | 否 | | 发票号码 | |
| hmDms | Array | | 否 | | 代码号码列表 | hmDms 与 开票日期的限定(rq_q,rq_z)至少一个必填 |
| -fpDm | String | | 否 | | 发票代码 | |
| -fpHm | String | | 否 | | 发票代码 | |
| rq_q | String | | 是 | | 开票起始日期 | yyyy-MM-dd格式 |
| rq_z | String | | 是 | | 开票截止日期 | yyyy-MM-dd格式 |
| xsfnsrsbh | String | | 否 | | 销售方纳税人识别号 | |
| xsfmc | String | | 否 | | 销售方名称 | |
| fpzt | String | | 否(往期不填) | | 发票状态 | 空:全部,0:正常,1:失控,2:作废,3:红冲,4:异常 |
| fplx | String | | 否(往期不填) | | 发票类型 | 空:全部,4:增值税专用发票,6:货运专用发票,5:机动车发票,认证发票类型 |
| rzzt | String | | 否(往期不填) | | 认证状态 | 空:全部,2:未勾选,3:已勾选未认证,4:已认证 |
| period | String | | 否(不填时,查询已认证数据默认查询当期) | | 认证期间 | yyyyMM格式 |
| deductMode | Number | | 否 | | 抵扣类型 | 抵扣类型 1.抵扣(默认) 2.不抵扣 3.退税 |
| nsrsbh | String | | 否 | | 纳税人识别号 | 与orgcode不能同时为空 |
| orgcode | String | | 否 | | 组织机构代码 | 与nsrsbh不能同时为空 |
| page | String | | 否 | | 页数 | 默认0,起始页是0 |
| size | String | | 否 | | 当前页数量 | 默认50 |
返回值
返回值说明
- 注意,除一下列明字段之外,多返回的字段请不要使用,后期只对文档中列明的字段保证后期长期维护;如需增加具体某个返回字段,请提需求
| 参数 | 类型 | 描述 | 说明 |
| code | String | 状态码 | 0000-操作成功;详见状态码说明 |
| msg | String | 信息说明 | |
| fpDm | String | 发票代码 | |
| fpHm | String | 发票号码 | |
| kprq | String | 开票日期(yyyyMMdd) | |
| xsfMc | String | 销售方名称 | |
| xsfNsrsbh | String | 销售方纳税人识别号 | |
| hjje | double | 合计金额 | |
| hjse | double | 合计税额 | |
| yxse | double | 有效税额 | |
| usage | String | 用途 | 1.抵扣勾选 2.不抵扣勾选 3退税勾选 |
| fplx | String | 发票类型 | 4:增值税专用发票,6:货运专用发票,5:机动车发票 ,其他全面见 认证发票类型 |
| fpzt | String | 发票状态 | 0:正常,1:失控,2:作废,3:红冲,4:异常 |
| period | String | 认证税期 | yyyyMM |
| verifyType | String | 认证类型 | 1:勾选 0:扫描 |
| verifyTime | String | 认证时间 | yyyy-MM-dd HH:mm:ss |
| selectTime | String | 勾选时间 | yyyy-MM-dd HH:mm:ss |
| verifyStatus | String | 认证状态 | 2:未勾选,3:已勾选未认证,4:已认证 |
| taskStatus | String | 异步任务状态,对于”电子税局版“税号,用于确认 ”勾选“ 操作的完成状态 | 1-税局处理中;2-税局处理成功;3-税局处理失败 |
| * relateOrgs | Array | 关联组织 | 数组 |
| -orgId | Long | 组织ID - 关联台账获得 | 组织ID |
| -orgCode | String | 组织编码 | 组织编码 |
| -orgName | String | 组织名称 | 组织名称 |
| * relateProjects | Array | 关联组织 | 数组 |
| -projectId | Long | 项目ID - 关联台账获得 | 项目ID |
| -projectCode | String | 项目编码 | 项目编码 |
| -projectName | String | 项目名称 | 项目名称 |
4、发票勾选(抵扣+不抵扣) [税盘在线]
URL
POST
url:http://{IP}:{PORT}/invoiceclient-web/api/vat/gxtj?appid=XXXX
请求体
请求体说明
| 参数 | 类型 | 长度 | 是否必填 | 默认值 | 描述 | 说明 |
| fpDm | String | | 是 | | 发票代码 | |
| fpHm | String | | 是 | | 发票号码 | |
| kprq | String | | 是 | | 开票日期 | yyyyMMdd格式 |
| - undeductReason | Integer | | 否 | | 不抵扣原因,不抵扣勾选-必填 | 1-用于非应税项目 2-用于免税项目 3-用于集体福利和个人消费 4-非正常损失 5-其他 ;预勾选此参数无效 |
| yxse | Number | | 否 | 0 | 有效税额 | 预勾选此参数无效 |
| nsrsbh | String | | 否 | | 纳税人识别号 | 与orgcode不能同时为空 |
| orgcode | String | | 否 | | 组织机构编码 | 与nsrsbh不能同时为空 |
| deductMode | Number | | 否 | | 抵扣类型 | 抵扣类型 1.抵扣(默认) 2.不抵扣 ; 预勾选此参数无效 |
| gxType | Number | | 否 | | 抵扣类型 | 抵扣类型 2.勾选(默认) 1.预勾选 |
| mobileOrEmail | String | | 否 | | 勾选人信息 | 勾选人再税务云的手机或邮箱 |
返回值
返回值说明
| 参数 | 类型 | 描述 | 说明 |
| code | String | 状态码 | 0000-操作成功; |
| msg | String | 信息说明 | |
| - hmdms | Array | 撤销失败或检测错误的发票 | |
| -- fpDm | String | 发票代码 | |
| -- fpHm | String | 发票号码 | |
| -- errorMsg | String | 错误信息 | 仅 预勾选返回 |
返回值 hmdms备注
5、撤销勾选(抵扣+不抵扣) [税盘在线]
URL
POST
url:http://{IP}:{PORT}/invoiceclient-web/api/vat/cxgx?appid=XXXX
请求体
请求体说明
| 参数 | 类型 | 长度 | 是否必填 | 默认值 | 描述 | 说明 |
| fpDm | String | | 是 | | 发票代码 | |
| fpHm | String | | 是 | | 发票号码 | |
| kprq | String | | 是 | | 开票日期 | yyyyMMdd格式 |
| nsrsbh | String | | 否 | | 纳税人识别号 | 与orgcode不能同时为空 |
| orgcode | String | | 否 | | 组织机构代码 | 与nsrsbh不能同时为空 |
| deductMode | Number | | 否 | | 抵扣类型 | 抵扣类型 1.撤销抵扣(默认) 2.撤销不抵扣 ; 预勾选此参数无效 |
| gxType | Number | | 否 | | 抵扣类型 | 抵扣类型 2.勾选(默认) 1.预勾选 |
返回值
返回值说明
| 参数 | 类型 | 描述 | 说明 |
| code | String | 状态码 | 0000-操作成功;详见状态码说明 |
| msg | String | 信息说明 | |
| - hmdms | Array | 撤销失败或检测错误的发票 | |
| -- fpDm | String | 发票代码 | |
| -- fpHm | String | 发票号码 | |
| -- errorMsg | String | 错误信息 | 仅 预勾选返回 |
返回值 hmdms备注
6、抵扣认证-统计 [税盘在线]
此接口为异步接口,只返回请求成功失败,返回结果不代表认证成功,只代表请求成功,具体流程参照对接流程
URL
POST
url:http://{IP}:{PORT}/invoiceclient-web/api/vat/qrrz?appid=XXXX
请求体
请求体说明
| 参数 | 类型 | 长度 | 是否必填 | 默认值 | 描述 | 说明 |
| nsrsbh | String | | 是 | | 纳税人识别号 | 不能为空 |
| password | String | | 是 | | 纳税人识别号 | 确认签名必传 |
返回值
返回值说明
| 参数 | 类型 | 描述 | 说明 |
| code | String | 状态码 | 0000-请求成功;5001: 当前状态不可认证(时间 |
| msg | String | 信息说明 | |
7、抵扣认证-查询 [税盘在线]
建议用户触发查询;因为认证税期的复杂关系,认证成功失败与税盘状态,税盘数据,税期数据有密切关系,定时器造成大量重试意义不大;平均1-10分钟认证成功
另,本接口返回状态为 税局原始状态 (抵扣勾选统计-统计状态)
URL
POST
url:http://{IP}:{PORT}/invoiceclient-web/api/vat/qrrz-query?appid=XXXX
请求体
请求体说明
| 参数 | 类型 | 长度 | 是否必填 | 默认值 | 描述 | 说明 |
| nsrsbh | String | | 是 | | 纳税人识别号 | 不能为空 |
返回值
返回值说明
| 参数 | 类型 | 描述 | 说明 |
| code | String | 状态码 | 0000-操作成功; 无需关注 |
| msg | String | 信息说明 | |
| datas | Object | | |
| - status | String | 认证状态:0.未认证 1.认证中 2.认证成功 3.认证失败 | |
| - info | String | 进度信息文本 | |
status::认证状态对照说明
- 为造成误解与低效对接,本说明默认 <文档阅读者> 已了解 税期、申报期、非申报期、申请统计、确认签名、撤销统计、认证等税务认证概念, 如不了解请自行咨询业务人员
| 接口返回状态(status) | 状态信息 | 比照税局状态&场景 | 建议的操作 |
| 0 | 未认证 | 未做 "申请统计" 的初始状态 | 可以调用 “【抵扣认证 - 统计】” 接口 |
| 1 | 认证中 | “申报期”中 “进行” 认证 且 已统计状态 | 此状态说明一定处于 “申报期”,可以定时扫描一直到 “认证成功” ;如10分钟后仍是 “认证中”,则先 “【抵扣认证 - 取消】”,再重新 “抵扣认证 - 统计” |
| 2 | 认证成功 | 已完成确认签名(“申报期”) | 说明已完成确认签名,可以去申报;也可以根据业务需要,“抵扣认证 - 取消”,再重新【抵扣认证 - 统计】 |
| 3 | 认证失败 | “非申报期”中 进行 认证 且 “已统计” 状态 (【不可签名】) | 一直到 “申报期”后 ,才可进行:【抵扣认证 - 取消】(必须先撤销),再进行 “【抵扣认证-统计】” |
8、抵扣认证-取消 [税盘在线]
###URL
POST
url:http://{IP}:{PORT}/invoiceclient-web/api/vat/qrrz-cancel?appid=XXXX
请求体
请求体说明
| 参数 | 类型 | 长度 | 是否必填 | 默认值 | 描述 | 说明 |
| nsrsbh | String | | 是 | | 纳税人识别号 | 不能为空 |
返回值
返回值说明
| 参数 | 类型 | 描述 | 说明 |
| code | String | 状态码 | 0000-认证成功; 5002:当前状态不可取消认证(时间 |
| msg | String | 信息说明 | |
9、从税务云获取预勾选发票(非税局,需要先到税务云同步数据)【预勾选】
URL
POST
URL:``http://{IP}:{PORT}/invoiceclient-web/api/vat/queryPrecheckInvoice?appid=XXXX`
请求体
请求体说明
| 参数 | 类型 | 长度 | 是否必填 | 默认值 | 描述 | 说明 |
| nsrsbh | String | | 是 | | 纳税人识别号 | 与orgcode不能同时为空 |
| hmDms | Array | | 否 | | 代码号码列表 | hmDms 与 开票日期的限定(rq_q,rq_z)至少一个必填 |
| -fpDm | String | | 否 | | 发票代码 | |
| -fpHm | String | | 否 | | 发票代码 | |
| rq_q | String | | 是 | | 开票起始日期 | yyyy-MM-dd格式 |
| rq_z | String | | 是 | | 开票截止日期 | yyyy-MM-dd格式 |
| xsfnsrsbh | String | | 否 | | 销售方纳税人识别号 | |
| xsfmc | String | | 否 | | 销售方名称 | |
| fpzt | String | | 否(往期不填) | | 发票状态 | 空:全部,0:正常,1:失控,2:作废,3:红冲,4:异常 |
| fplx | String | | 否(往期不填) | | 发票类型 | 空:全部,4:增值税专用发票,6:货运专用发票,5:机动车发票,认证发票类型 |
| rzzt | String | | 否(往期不填) | | 认证状态 | 空:全部,2:未勾选,3:已勾选未认证,4:已认证 |
| period | String | | 否(不填时,查询已认证数据默认查询当期) | | 认证期间 | yyyyMM格式 |
| selectPerson | String | | 否 | | 勾选人-用友姓名,非用户id、用户编号 | |
| precheckPerson | String | | 否 | | 预勾选人-用友姓名,非用户id、用户编号 | |
| precheckStatus | Integer | | 否 | | 预勾选状态 0:未勾选;1:已勾选 | |
| accountUser | String | | 否 | | 记账人 | |
| accountPeriod | String | | 否 | | 记账期间 | |
| precheckTimeStart | String | | 否 | | 预勾选日期开始 | |
| precheckTimeEnd | String | | 否 | | 预勾选日期截止 | |
| voucherId | String | | 否 | | 凭证号 | |
| srcBillcode | String | | 否 | | 来源单据号 | |
| bsubinvoice | String | | 否 | | 是否分包- Y:是;N:否 | |
| relationBusiCollection | String | | 否 | | 是否在台账 0-不在 1-在 | |
| projectNames | Array[String] | | 否 | | 项目名称 | |
| orgcode | String | | 否 | | 组织机构代码 | |
| page | String | | 否 | | 页数 | 默认1,起始页是1 |
| size | String | | 否 | | 当前页数量 | 默认50 |
返回值
返回值说明
| 参数 | 类型 | 描述 | 说明 |
| code | String | 状态码 | 0000-操作成功;详见状态码说明 |
| msg | String | 信息说明 | |
| totalNum | Integer | 总数量 | |
| contents | Array[Object] | 信息说明 | |
| - fpDm | String | 发票代码 | |
| - fpHm | String | 发票号码 | |
| - kprq | String | 开票日期(yyyyMMdd) | |
| - xsfMc | String | 销售方名称 | |
| - xsfNsrsbh | String | 销售方纳税人识别号 | |
| - hjje | double | 合计金额 | |
| - hjse | double | 合计税额 | |
| - yxse | double | 可抵扣金额 | |
| - fplx | String | 发票类型 | 4:增值税专用发票,6:货运专用发票,5:机动车发票 ,其他全面见 认证发票类型 |
| - fpzt | String | 发票状态 | 0:正常,1:失控,2:作废,3:红冲,4:异常 |
| - period | String | 认证税期 | yyyyMM |
| - verifyType | String | 认证类型 | 1:勾选 0:扫描 |
| - verifyTime | String | 认证时间 | yyyy-MM-dd HH:mm:ss |
| - selectTime | String | 勾选时间 | yyyy-MM-dd HH:mm:ss |
| - verifyStatus | String | 认证状态 | 2:未勾选,3:已勾选未认证,4:已认证 |
| - precheckStatus | String | 预勾选状态 | 预勾选状态 0:未勾选;1:已勾选 |
| - precheckUserName | String | 预勾选人 | |
| - precheckTime | String | 预勾选日期 | |
| - orgNameBc | String | 会计主体名称 | |
| - projectName | String | 项目名称 | |
| - voucherId | String | 凭证号 | |
| - accountUser | String | 记账人 | |
| - accountTime | String | 记账日期 | |
| - reimburseUser | String | 报销人 | |
| - reimburseDate | String | 报账日期 | |
| - accountPeriod | String | 会计期间 | |
| - srcBillcode | String | 来源单据号 | |
| - accountNote | String | 记账备注 | |
| - vnote | String | 报账备注 | |
| - bsubinvoice | String | 是否分包 | 是否分包- Y:是;N:否 |
| - relationBusiCollection | String | 是否在台账 | 是否在台账 0-不在 1-在 |
| - taxbodyName | String | 受票企业名称 | |
10、 附录
认证发票类型
| code | 描述 | 备注 |
| 2 | 增值税电子专用发票 | |
| 4 | 增值税专用发票 | |
| 5 | 机动车销售统一发票 | |
| 6 | 货物运输业增值税专用发票 | |
| 14 | 通行费增值税电子普通发票 | |
| 15 | 二手车销售统一发票 | |
| 17 | 海关缴款书 | |
| 31 | 电子发票(增值税专用发票) | |
| 33 | 纸质发票(增值税专用发票) | |
状态码
| 状态码 | 说明 |
| 0000 | 操作成功 |
| 1001 | 数据不合法,传入参数 |
| 1002 | 数据不存在 |
| 9999 | 未知错误 |
| 5001 | 当前状态不可认证(时间 |
| 5002 | 当前状态不可取消认证(时间 |