发票云(标准版)API文档
旗舰版标准版智能特性
旗舰版标准版智能特性
🤖 AI Support​​
  1. 税控&数电同步开票
  • 整体介绍
  • 对接约定
  • 授权
    • 获取AccessToken
  • 开票
    • 产品介绍
    • 开发指南
    • 税控&数电同步开票
      • 业务场景下接口调用顺序
      • 1.01.读取税盘信息(czlx-7)
        POST
      • 1.02 .读取票种信息(czlx-30)
        POST
      • 1.03.发票开具(czlx-3)
        POST
      • 1.04.发票作废(czlx-6)
        POST
      • 1.05.发票查询(czlx-5)
        POST
      • 1.06.发票打印(czlx-4)
        POST
      • 1.07.专用发票申请红字信息表(czlx-20)
        POST
      • 1.08.查询专用发票申请红字信息表(czlx-18)
        POST
      • 1.09.批量打印(czlx-32)
        POST
      • 1.11.机动车销售统一发票开具(czlx-40)
        POST
      • 1.12.机动车销售统一发票查询(czlx-41)
        POST
      • 1.13.机动车销售统一发票红冲(czlx-42)
        POST
      • 1.15.核定票种查询(czlx-51)
        POST
      • 1.21.二手车-发票开具(czlx-43)
        POST
      • 1.22.二手车-发票查询(czlx-44)
        POST
      • 1.23.二手车-发票红冲(czlx-45)
        POST
      • 1.30 .查询授信额度接口(czlx-122)
        POST
      • 2.01.电子发票开具(czlx-110) ,【注】开数电票请对接:1.03.发票开具(czlx-3)
        POST
      • 2.02.电子发票信息查询(czlx-113)
        POST
      • 2.03.电子发票红冲 (只支持全额红冲)(czlx-114)
        POST
      • 2.04.刷新PDF(czlx-115)
        POST
      • 2.05.查询电子发票余量(czlx-116)
        POST
      • 3.01.查询税收分类编码信息(czlx-504)
        POST
      • 3.03.获取打印机列表(czlx-901)
        POST
    • 数电异步开票
      • 异步开票-v4
      • 查询异步开票结果-v4
    • 扫码开票
      • 上传销售单模式扫码开票
        • 接入指南
        • 1.token获取
        • 2.上传发票销售单接口
        • 3.回推接口地址
      • 自定义扫码开票
        • 接入指南
        • 1.对接方按规则组装二维码链接
        • 2.查询开票明细
        • 3.回推接口地址
    • 企业级-发票云销项查询
      • 根据业务条件查询当前企业的销项发票
  • 收票
    • 开发指南
    • 发票数据规范
    • 发票数据
      • 机动车发票数据
      • 火车票数据
      • 火车票退票凭证数据
      • 财政电子票据数据
      • 客运票/轮船票数据
      • 其他发票数据
      • 完税证明数据
      • 飞机票数据
      • 数电票(铁路电子客票)数据
      • 数电票(航空运输电子客票行程单)数据
      • 数电票(专票/普票)数据
      • 的士票数据
      • 定额发票数据
      • 通用机打(纸质/电子)发票数据
      • 过路过桥费数据
      • 二手车票数据
      • 专票和普票数据
      • 通行费发票数据
      • 海关缴款书数据
      • 发票文件数据
    • 企业级-发票云进项查询
      • 根据业务条件查询当前企业采集的发票
      • 根据代码号码查询当前企业采集的发票
      • 根据开票时间范围和采集时间范围查询当前企业采集的发票
      • 根据发票流水号或者发票代码号码查询当前企业采集的发票
      • 根据业务条件查询指定用户采集的发票
    • 税盘&数电票下载
      • 开发指南
      • 1、获取税款所属期信息
      • 2、进项发票表头采集
      • 3、发票不抵扣勾选
      • 4、海关缴款书抵扣勾选(税盘模式不支持)
      • 5、海关缴款书不抵扣勾选(税盘模式不支持)
      • 6、海关缴款书表头采集(税盘模式不支持)
      • 7、全量发票查询
      • 8、当前统计查询
      • 9、历史统计查询
      • 10、生成统计表
      • 11、撤销统计表
      • 12、确认统计表
      • 13、获取当前已勾选或往期已认证发票(税盘模式不支持)
      • 14、当期已勾选或往期已认证缴款书(税盘模式不支持)
      • 15、发票抵扣勾选
    • 电子凭证解析
      • billTypeCode表
      • 解析 + 验签 指定文件的xbrl信息
      • xbrl字符串转json
      • json转xbrl字符串
    • 发票异步下载
      • 进项全量发票采集-异步申请
      • 进项全量发票采集-异步结果查询
    • 发票数据规范
  • 查验识别
    • 开发指南
    • 发票查验(单张)
    • 发票查验(多张异步)
    • 发票识别+查验(单张)
    • 发票识别(多张)
    • 发票识别+查验(多张)
    • 数电票文件识别+查验
    • 返回状态码
  • 报销
    • 发票助手移动端-h5对接
    • 发票助手移动端-小程序对接
    • 第三方发票报销查询
    • 发票助手PC端对接
      • 对接流程
      • JS建立连接通道
      • 采集发票
      • 后端建立通道
      • 查看发票
      • 编辑单张发票
      • 分录操作
      • 常见问题
      • 获取userKey
      • 获取linkKey
      • 缓存单据
      • 保存单据
      • 更新单据状态
      • 根据发票流水号获取发票详细数据
      • 根据userkey查询单据下所有发票列表
      • 删除单据
      • 再次查验
      • 回写入账信息
      • 删除入账信息
  • 影像
    • 开发指南
    • 对接约定
    • 影像系统对接
    • 授权
      • 获取AccessToken(影像系统)
  • 档案
    • 异构系统接口定义
    • 发票返结构体
  1. 税控&数电同步开票

2.01.电子发票开具(czlx-110) ,【注】开数电票请对接:1.03.发票开具(czlx-3)

测试环境(除税控、数电和扫码开票外的接口)
https://api-dev.piaozone.com/test
测试环境(除税控、数电和扫码开票外的接口)
https://api-dev.piaozone.com/test
POST
/
全额红冲电子发票(红蓝票)开具部分红冲
当前接口只能开电子发票,不区分税控设备是税盘还是ukey

1. 发票金额算法:#

1.1 蓝票算法:#

不含税金额(四舍五入,保留两位小数)= 含税金额/(1+税率)
税额= 含税金额-不含税金额
不含税总金额=各行不含税金额相加
总税额 = 价税合计-不含税总金额
最后一项税额 = 总税额-(前n项税额之和)

1.2 红票算法:#

价税合计=取蓝票的价税合计
合计税额=取蓝票的合计税额
合计金额=取蓝票合计金额

2. 明细项:#

不含税金额(四舍五入,保留两位小数)= 含税金额/(1+税率)
税额= 含税金额-不含税金额
最后一项不含税金额 = 合计金额-(前n项不含税金额之和)
最后一项税额 = 合计税额-(前n项税额之和)

3. 误差规则#

单行商品明细 |单价×数量-金额|<=0.01 元
|不含税金额×税率-税额|<=0.06元

4. 发票开具校验注意事项#

4.1 正数发票#

正数发票合计金额>0 ;
价税合计=合计金额+合计税额;
开票合计金额 与 明细行所有金额加起来要一致;
开票合计税额 与 明细行所有税额加起来要一致;
除折扣行外,正数发票的商品行金额必须大于0 ;
正数发票每行商品行金额均不能为0,税额不能为负数 ;
折扣行金额不能大于被折扣行金额。多行折扣情况下,折扣行金额不能大于各被折扣行金额之和。
正数发票金额为负的商品行(即折扣行),其上一行商品金额必须为正。
单价和数量同时为空,或都不能为空 ;
金额、税额、数量、单价必须是合法数字 ;
折扣行税率必须与被折扣行税率相同。多行折扣情况下,各被折扣行税率相同,且与折扣行税率相同。
流水号可以不填(发票云会生成),如果业务需要自己生成的话,请注意不要与已开成功的发票重复,负责只会把该流水号对应的发票查询出来

4.2 负数发票#

负数发票合计金额<0 ;
价税合计=合计金额+合计税额;
开票合计金额 与 明细行所有金额加起来要一致;
开票合计税额 与 明细行所有税额加起来要一致;
负数发票的商品行金额必须小于0,税额不能为正数;
单价和数量同时为空,或都不能为空 ;
金额、税额、数量、单价必须是合法数字
流水号可以不填(发票云会生成),如果业务需要自己生成的话,请注意不要和蓝票重复,负责只会把该流水号对应的蓝票查询出来

4.4 税收分类编码#

5. 差额征税发票注意事项#

5.1 如果BMB_BBH不为空,并且第一行商品明细中KCE不为空,则认为是差额征税发票。#

5.2 差额征税蓝字发票:只允许一条商品行,如果存在折扣行,则最多两条。#

5.3 差额征税红字发票:只允许一条商品行。#

5.4 差额征税蓝字发票:第一行商品明细中KCE不能为负数,并且不能大于第一行商品的不含税金额。#

5.5 差额征税红字发票:第一行商品明细中KCE不能为正数,并且不能大于第一行商品的不含税金额。#

5.6 差额征税蓝字发票:备注中要增加“差额征税:20.00。”字样,如图1。#

5.7 差额征税红字发票:备注中要增加“差额征税。”字样,如图2。#

5.8 差额征税计算公式:不含税差额 = 不含税金额 - 扣除额; 税额 = 不含税差额*税率。 开具请求报文要按照上述计算公式计算税额,合计税额等,开票服务不进行相应计算,只进行误差校验。#

图一:
图二:

请求参数

Query 参数
name
string 
必需
clientsecret+税盘号
reqid
string 
必需
当前13位毫秒级时间戳加3位随机数字(总共16位)
Header 参数
Content-Type
string 
必需
示例值:
application/json
Body 参数application/json
czlx
enum<string> 
固定为:110
必需
枚举值:
110
sfrz
object 
认证信息
必需
client_id
string 
由发票云分配的id
必需
sjd
object 
发票相关信息
必需
fpqqlsh
string 
可选
流水号 相同流水号将返回上一次的开票结果(少于20位则由发票云生成)
ddh
string 
可选
订单编号,客户业务单据id
hsbz
string 
必需
含税标识 0:不含税 1:含税
kplx
string 
必需
开票类型 0:蓝子发票 1:红字发票
kpzl
string 
必需
发票类型 51:电子普通发票 ; 61:电子专票
zsfs
string 
必需
征收方式 0:普通征收 1:减按计增 2:差额征收
qdbz
string 
必需
清单标志 0非清单开具 1清单开具
bz
string 
备注
可选
yfpdm
string 
原发票代码
可选
yfphm
string 
原发票号码
可选
xhf_nsrsbh
string 
销售方纳税人识别号
必需
xhf_mc
string 
销售方纳税人名称
必需
xhf_dz
string 
销售方纳税人地址
可选
xhf_dh
string 
销售方纳税人电话
可选
xhf_yhzh
string 
可选
销售方纳税人银行账号
ghf_nsrsbh
string 
购货方纳税人识别号
可选
ghf_mc
string 
购货方纳税人名称
必需
ghf_sj
string 
可选
购货方纳税人手机,可用于发送短信通知
ghf_email
string 
可选
购货方邮箱地址,可用于发送邮件
ghf_openid
string 
可选
购货方微信openid,后续可用于推送微信消息
ghf_dzdh
string 
可选
购货方纳税人地址电话
ghf_yhzh
string 
可选
购货方纳税人银行账号
gmfzrrbs
string 
可选
购买方自然人标识,Y-是,N-否;默认N
kpy
string 
开票员
必需
sky
string 
收款人
可选
fhr
string 
复核人
可选
hjbhsje
string 
必需
开票合计金额(不含税)
kphjse
string 
开票合计税额
必需
jshjje
string 
价税合计金额
必需
kjly
string 
可选
放弃享受减按1%征收率原因,非必填,注释:小规模纳税人开具1%税率时必填
items
array [object {11}] 
发票明细行信息
必需
hcyy
string 
可选
红冲原因 1:销货退回 2:开票有误 3:服务中止 4:销售折让,非专票红冲必填
dylppz
string 
可选
对应蓝票票种 2:普通发票 41:卷票 51:电子普通发票 999:其他普通发票(如 通行费发票),非专票红冲必填
dylpkprq
string 
可选
对应蓝票开票日期 yyyyMMdd 如20211230,非专票红冲必填
示例
{
  "czlx": "110",
  "sfrz": {
    "client_id": "string"
  },
  "sjd": {
    "fpqqlsh": "string",
    "ddh": "string",
    "hsbz": "string",
    "kplx": "string",
    "kpzl": "string",
    "zsfs": "string",
    "qdbz": "string",
    "bz": "string",
    "yfpdm": "string",
    "yfphm": "string",
    "xhf_nsrsbh": "string",
    "xhf_mc": "string",
    "xhf_dz": "string",
    "xhf_dh": "string",
    "xhf_yhzh": "string",
    "ghf_nsrsbh": "string",
    "ghf_mc": "string",
    "ghf_sj": "string",
    "ghf_email": "string",
    "ghf_openid": "string",
    "ghf_dzdh": "string",
    "ghf_yhzh": "string",
    "gmfzrrbs": "string",
    "kpy": "string",
    "sky": "string",
    "fhr": "string",
    "hjbhsje": "string",
    "kphjse": "string",
    "jshjje": "string",
    "kjly": "string",
    "items": [
      {
        "xmlx": "string",
        "xmdw": "string",
        "xmmc": "string",
        "xmsl": "string",
        "xmdj": "string",
        "xmje": "string",
        "ggxh": {},
        "se": "string",
        "sl": "string",
        "hh": "string",
        "taxcode": {
          "kce": "string",
          "lslbs": "string",
          "qyzbm": "string",
          "ssflbm": "string",
          "ssyhzc": "string",
          "ssyhzcnr": "string"
        }
      }
    ],
    "hcyy": "string",
    "dylppz": "string",
    "dylpkprq": "string"
  }
}

示例代码

Shell
JavaScript
Java
Swift
Go
PHP
Python
HTTP
C
C#
Objective-C
Ruby
OCaml
Dart
R
请求示例请求示例
Shell
JavaScript
Java
Swift
curl --location --request POST 'https://api-dev.piaozone.com/test/?name=&reqid=' \
--header 'Content-Type: application/json' \
--data-raw '{
    "czlx": "110",
    "sfrz": {
        "client_id": "string"
    },
    "sjd": {
        "fpqqlsh": "string",
        "ddh": "string",
        "hsbz": "string",
        "kplx": "string",
        "kpzl": "string",
        "zsfs": "string",
        "qdbz": "string",
        "bz": "string",
        "yfpdm": "string",
        "yfphm": "string",
        "xhf_nsrsbh": "string",
        "xhf_mc": "string",
        "xhf_dz": "string",
        "xhf_dh": "string",
        "xhf_yhzh": "string",
        "ghf_nsrsbh": "string",
        "ghf_mc": "string",
        "ghf_sj": "string",
        "ghf_email": "string",
        "ghf_openid": "string",
        "ghf_dzdh": "string",
        "ghf_yhzh": "string",
        "gmfzrrbs": "string",
        "kpy": "string",
        "sky": "string",
        "fhr": "string",
        "hjbhsje": "string",
        "kphjse": "string",
        "jshjje": "string",
        "kjly": "string",
        "items": [
            {
                "xmlx": "string",
                "xmdw": "string",
                "xmmc": "string",
                "xmsl": "string",
                "xmdj": "string",
                "xmje": "string",
                "ggxh": {},
                "se": "string",
                "sl": "string",
                "hh": "string",
                "taxcode": {
                    "kce": "string",
                    "lslbs": "string",
                    "qyzbm": "string",
                    "ssflbm": "string",
                    "ssyhzc": "string",
                    "ssyhzcnr": "string"
                }
            }
        ],
        "hcyy": "string",
        "dylppz": "string",
        "dylpkprq": "string"
    }
}'

返回响应

🟢200成功
application/json
Body
errcode
string 
必需
0000:成功 其他:失败
description
string 
描述
必需
is_duplicate
boolean 
必需
是否是重复流水号,若是则会返回上一次的开票结果
device_info
object 
必需
开票设备信息对象 该信息只在开具单机版电子发票时有效
taxcode
string 
税控设备税号
必需
subid
number 
税控设备分机号
必需
data
object 
发票信息
必需
kdorgpdfurl
string 
必需
serialnum
string 
必需
流水号,对应参数中fpqqlsh字段,如果fpqqlsh少于20位则会由发票云生成
snapshoturl
string 
必需
invoicenum
string 
发票号码
必需
pdfurl
string 
必需
税控设备是ukey开电子普票,或者发票是电子专票时该地址为预览地址,航信百旺开普通电票时则是PDF下载地址
bswj_pdf
string 
必需
税局生成的PDF文件(电子专票\ukey开具的电子发票)
bswj_ofd
string 
必需
税局生成的OFD源文件(电子专票\ukey开具的电子发票)
invoicecode
string 
发票代码
必需
jym
string 
校验码
必需
business_id
string 
必需
单据编号,和请求信息中的ddh一致
示例
{
  "data": {
    "business_id": "KP21092200000010",
    "invoicecode": "044031611112",
    "invoicenum": "13514645",
    "jym": "47112685370389776289",
    "kdorgpdfurl": "",
    "kprq": "2021-09-22 16:38:22",
    "pdfurl": "https://api-dev.piaozone.com/test/m5/download/img/pdffile?fileSno=1753620210922163107",
    "serialnum": "ee1f1ffa5111422f81de81a26d382c11",
    "snapshoturl": ""
  },
  "description": "开具成功",
  "device_info": {
    "card_no": "661532817749",
    "subid": 0,
    "taxcode": "440301999999030"
  },
  "errcode": "0000",
  "is_duplicate": false
}
上一页
1.30 .查询授信额度接口(czlx-122)
下一页
2.02.电子发票信息查询(czlx-113)
Built with