智能多媒体服务

  • 智能多媒体服务 > API 文档 > 票证自动识别(OCR) >多张发票识别 OCR

    多张发票识别 OCR

    最近更新时间: 2022-05-18 11:30:14

    接口简介

    本接口可准确高效识别各类国内,国际发票,并结构化输出各类发票关键字段,支持识别多张发票,可无缝对接财务、工商、保险、企事业单位、政府等多个行业的业务流程,辅助办公人员便捷、快速、准确地采集各类票据的票面信息,高效提升财务管理效率。

    注意

    • 支持的图片类型: jpg, jpeg, png
    • 图片最大支持8M
    • 支持识别发票类型的见下方发票类型字段说明
    • 支持识别一张图片中包含多张发票的情况

    请求语法

    POST /invoice/multiple?url=http://xxxxxx/xxx.jpg HTTP/1.1
    Host: ap-gate-z0.qiniuapi.com
    Authorization: QiniuToken
    

    头部信息

    头部名称 必填 说明
    Host 固定为 ap-gate-z0.qiniuapi.com
    Authorization 该参数应严格按照管理凭证格式进行填充,否则会返回 401 错误码。一个合法的 Authorization 值应类似于:Qiniu QNJi_bYJlmO5LeY08FfoNj9w_r7...

    请求参数

    字段 是否必填 类型 说明
    url Y string 待检测图片的url链接

    返回参数

    放在 HTTP Body 中,采用 Json 格式,具体参数如下:

    字段 类型 说明
    result int 返回码,请求状态. 1:成功, 0:失败
    response json_object 识别结果详情
    code int 错误码
    message string 错误说明
    type int 发票类型

    发票类型字段说明

    字段枚举 描述
    10100 增值税专用发票
    10101 增值税普通发票
    10102 增值税电子普通发票
    10103 增值税普通发票(卷票)
    10104 机动车销售统一发票
    10105 二手车销售统一发票
    10505a 船票
    10200 定额发票
    10400 机打发票
    10500 出租车发票
    10503 火车票
    10505 客运汽车
    10506 航空运输电子客票行程单
    10507 过路费发票
    10900 可报销其他发票
    20100 国际小票
    20105 滴滴出行行程单
    10902 完税证明

    增值税发票识别结果字段说明

    字段枚举 描述
    orientation 发票顺时针旋转方向
    code 印刷发票代码
    number 印刷发票号码
    date 开票日期
    pretax_amount 税前金额
    total 总金额
    tax 税额
    check_code 校验码
    seller 销售方名称
    seller_tax_id 销售方纳税人识别号
    buyer 购买方方名称
    buyer_tax_id 购买方纳税人识别号
    company_seal 是否有公司印章(0:没有;1:有)
    form_type 发票是第几联
    form_name 发票联次
    kind 发票消费类型
    ciphertext 密码区,四行密码,每行以逗号隔开
    transit_mark 通行费标志
    oil_mark 成品油标志
    machine_code 机器编号
    travel_tax 车船税
    receiptor 收款人
    reviewer 复核
    issuer 开票人
    province
    city
    service_name 服务类型
    remark 备注
    item_names 品名,每个以逗号隔开
    agent_mark 是否代开
    acquisition_mark 是否收购
    block_chain 区块链标记
    code_confirm 机打发票代码
    number_confirm 机打发票号码

    出租车发票识别结果字段说明

    字段枚举 描述
    code 发票代码
    number 发票号码
    date 乘车日期
    time_geton 上车时间
    time_getoff 下车时间
    mileage 里程
    total 总金额
    place 发票所在地
    kind 发票消费类型
    province
    city
    license_plate 车牌号

    火车票识别结果字段说明

    字段枚举 描述
    number 号码
    date 乘车日期
    time 乘车时间
    name 乘车人姓名
    station_geton 上车车站
    station_getoff 下车车站
    train_number 车次
    seat 座位类型
    total 总金额
    kind 发票消费类型
    serial_number 序列号
    user_id 身份证号

    机打发票识别结果字段说明

    字段枚举 描述
    code 发票代码
    number 号码
    date 日期
    time 时间
    check_code 校验码
    category 种类,oil表示是加油票
    total 总金额
    seller 销售方名称
    seller_tax_id 销售方纳税人识别号
    buyer 购买方方名称
    buyer_tax_id 购买方纳税人识别号
    kind 发票消费类型
    province
    city
    company_seal 是否有公司印章(0:没有;1:有)

    增值税普通发票 卷票识别结果字段说明

    字段枚举 描述
    code 发票代码
    number 号码
    date 日期
    check_code 校验码
    seller 销售方名称
    seller_tax_id 销售方纳税人识别号
    buyer 购买方方名称
    buyer_tax_id 购买方纳税人识别号
    category 种类,oil表示是加油票
    total 总金额
    kind 发票消费类型
    province
    city
    company_seal 是否有公司印章(0:没有;1:有)
    service_name 服务类型
    item_names 品名,每个以逗号隔开

    定额发票识别结果字段说明

    字段枚举 描述
    code 发票代码
    number 号码
    total 总金额
    kind 发票消费类型
    province
    city
    company_seal 是否有公司印章(0:没有;1:有)

    过路费发票识别结果字段说明

    字段枚举 描述
    code 发票代码
    number 发票号码
    date 日期
    time 时间
    entrance 入口
    exit 出口
    total 总金额
    kind 发票消费类型
    highway_flag 高速标志(0:没有;1:有)

    客运汽车发票识别结果字段说明

    字段枚举 描述
    code 发票代码
    number 发票号码
    date 日期
    time 时间
    station_geton 出发车站
    station_getoff 达到车站
    total 总金额
    name 姓名
    kind 发票消费类型
    user_id 身份证号

    航空运输电子客票行程单识别结果字段说明

    字段枚举 描述
    user_name 乘机人姓名
    user_id 身份证号
    number 电子客票号码
    check_code 验证码
    date 填开日期
    agentcode 销售单位代号
    issue_by 填开单位
    fare 票价
    tax 税费
    fuel_surcharge 燃油附加费
    caac_development_fund 民航发展基金
    insurance 保险费
    total 总额
    flights 航班信息
    from 出发站
    to 到达站
    flight_number 航班号
    date 乘机日期
    time 乘机时间
    seat 座位等级
    carrier 承运人
    class_name 舱位等级
    from 出发站
    to 到达站
    flight_number 航班号
    date 乘机日期
    time 乘机时间
    seat 座位等级
    carrier 承运人
    class_name 舱位等级
    kind 发票消费类型
    international_flag 国内国际标签
    print_number 印刷序号

    二手车销售统一发票识别结果字段说明

    字段枚举 描述
    code 发票代码
    number 发票号码
    date 开票日期
    total 总金额
    seller 卖方单位/个人
    seller_id 卖方单位代码/个人身份证号
    buyer 买方单位/个人
    buyer_id 买方单位代码/个人身份证号
    company_name 二手车市场
    company_tax_id 二手车市场纳税人识别号
    license_plate 车牌号
    registration_number 登记证号
    car_code 车架号/车辆识别代码
    car_model 厂牌型号
    kind 发票消费类型
    province
    city

    机动车销售统一发票识别结果字段说明

    字段枚举 描述
    code 发票代码
    number 发票号码
    machine_code 机打代码
    machine_number 机打号码
    date 开票日期
    pretax_amount 税前金额
    total 总金额
    seller 销售单位
    seller_tax_id 销售单位纳税人识别号
    buyer 买方单位/个人
    buyer_id 买方单位代码/个人身份证号
    tax_authorities 主管税务机关
    tax_authorities_code 主管税务机关代码
    car_code 车架号/车辆识别代码
    car_engine_code 发动机号码
    car_model 厂牌型号
    certificate_number 合格证号
    kind 发票消费类型
    province
    city
    tax 税额
    tax_rate 税率
    company_seal 是否有公司印章(0:没有;1:有)

    小票识别结果字段说明

    字段枚举 描述
    store_name 店名
    date 日期
    time 时间
    subtotal 税前金额
    tax 税费
    discount 折扣
    tips 小费
    total 总金额
    currency_code 币种,使用ISO4217CurrencyCodes标准
    type 消费类型

    滴滴出行行程单识别结果字段说明

    字段枚举 描述
    date 申请日期
    date_start 行程开始时间
    date_end 行程结束时间
    phone 行程人手机号
    total 总计
    items 行程信息
    car_type 车型
    time_geton 上车时间
    city 城市
    station_geton 起点
    station_getoff 终点
    mileage 里程(公里)
    total 金额
    car_type 车型
    time_geton 上车时间
    city 城市
    station_geton 起点
    station_getoff 终点
    mileage 里程(公里)
    total 金额
    car_type 车型
    time_geton 上车时间
    city 城市
    station_geton 起点
    station_getoff 终点
    mileage 里程(公里)
    total 金额
    kind 发票消费类型

    完税证明识别结果字段说明

    字段枚举 描述
    number 发票号码
    total 总金额
    buyer 购买方名称
    buyer_tax_id 购买方纳税人识别号
    date 日期
    tax_authorities 主管税务机关

    船票识别结果字段说明

    字段枚举 描述
    code 发票代码
    number 发票号码
    date 日期
    time 时间
    station_geton 出发车站
    station_getoff 达到车站
    total 总金额
    name 姓名
    kind 发票消费类型
    province
    city
    currency_code 币种

    增值税字段说明

    字段枚举 描述
    check_code_candidates 校验码备选
    check_code_last_six 校验码后六位备选
    number_order_error 发票号码备选(如发现可能错号等情况)

    二维码或者条码字段说明

    字段枚举 描述
    qrcode 二维码
    barcode 条码

    示例

    请求示例

    POST /invoice/multiple?url=http://xxxxxx/xxx.jpg HTTP/1.1
    Host: ap-gate-z0.qiniuapi.com
    Authorization: Qiniu YnxrxOSvGotRZpqkZnMzl_euuoqRzOKUd6zwbRju:r6a-o2UpBg6A4puIMnkCExH8lE8=
    

    返回示例

    HTTP/1.1 200 OK
    Content-Type: application/json
    
    {
        'result': 1,
        'response': {
           'data': {
              'version': '4.8_20180226',
              'result': 1,
              'timestamp': 1092098766,
              'message': 'success',
              'sha1': '00a09af73198ab3ea81a6b58ba6a1f5879f47c63',//识别图片唯一标识
              'time_cost': '1000',//识别花费的时长,单位毫秒
              'identify_results': [
                {// 发票 #1
                    'type': '10101', -- 发票类型
                    'orientation': 90, -- 发票顺时针旋转方向
                    'region': [100,100,200,200], // 单张发票区域: 左上点 和 右下点[x1, y1, x2, y2]
                    'details': {  // 发票识别的具体信息, 不同发票类型会不一样
                        //增值税
                        'code': '6300161320',      -- 印刷发票代码
                        'number': '15064112',     -- 印刷发票号码
                        'date': '2017年03月28日',    -- 开票日期
                        'pretax_amount': '2648.54',    -- 税前金额
                        'total': '3098.79',    -- 总金额
                        'tax': '450.25',   -- 税额
                        'check_code': '52657910788452871589'    -- 校验码
                        'seller': 'XXXXXX有限公司',    -- 销售方名称
                        'seller_tax_id': '15260000000000000G',    -- 销售方纳税人识别号
                        'buyer': 'XXXXXX有限公司',    -- 购买方方名称
                        'buyer_tax_id': '11684616000000000D',    -- 购买方纳税人识别号
                        'company_seal': '1',   -- 是否有公司印章(0:没有; 1: 有)
                        'form_type':  '第二联',   -- 发票是第几联
                        'form_name':  '发票联',   -- 发票联次
                        'kind':  '餐饮',   --  发票消费类型
                        'ciphertext': '<42/93+*/+2*+81*851<9,940-<9*>5+2-91,<1+>7*<81>7/8*140,50<\/<62-<1491+6+9', -- 密码区,四行密码,每行以逗号隔开
                        'transit_mark': '1',    -- 通行费标志
                        'oil_mark': '1',    -- 成品油标志
                        'machine_code': '499924850051',    -- 机器编号
                        'travel_tax': '65.50',    -- 车船税
                        'receiptor': 'xxx',    -- 收款人
                        'reviewer': 'xxx',    -- 复核
                        'issuer': 'xxx',    -- 开票人
                        'province': '浙江省',    -- 省
                        'city': '杭州市',    -- 市
                        'service_name': '餐饮服务',    -- 服务类型
                        'remark': '账期:201702, 号码:185750654',   --备注
                        'item_names': '*餐饮服务*餐饮服务,*酒*白酒',   --品名,每个以逗号隔开
                        'agent_mark': '1',  -- 是否代开
                        'acquisition_mark': '1',  -- 是否收购
                        'block_chain': '1',  -- 区块链标记
                        'code_confirm': '6300161320',  -- 机打发票代码
                        'number_confirm': '15064112',  -- 机打发票号码
                    },
                    'extra': {
                        //增值税
                        'check_code_candidates':['52657910788452871583','52657910788452871588'],   -- 校验码备选
                        'check_code_last_six':['871583','871588']   -- 校验码后六位备选
                        'number_order_error': ['15064115','15064116']   -- 发票号码备选(如发现可能错号等情况)
    
                        //二维码或者条码
                        'qrcode': ['00000102180000'],         -- 二维码
                        'barcode': ['00000102180000'],        -- 条码
                    }
                },
    
                {// 发票 #2
                    'type': '10102',
                    'orientation': 90, -- 发票顺时针旋转方向
                    'region': [400,400,500,500], // 单张发票区域: 左上点 和 右下点[x1, y1, x2, y2]
                    'details': {  // 发票识别的具体信息, 不同发票类型会不一样
                        
                        //出租车
                        'code': '133011680478',   -- 发票代码
                        'number': '01670989',    -- 发票号码
                        'date': '2017年08月29日',    -- 乘车日期
                        'time_geton': '12:47',    -- 上车时间
                        'time_getoff': '12:52',    -- 下车时间
                        'mileage': '1.9',    -- 里程
                        'total': '11.00',    -- 总金额
                        'place': '浙江省杭州市',    -- 发票所在地
                        'kind':  '交通',   --  发票消费类型
                        'province': '浙江省',    -- 省
                        'city': '杭州市',    -- 市
                        'license_plate': '浙A88888',    -- 车牌号 
                    },
                    'extra': {
                        //增值税
                        'check_code_candidates':['52657910788452871583','52657910788452871588'],   -- 校验码备选
                        'check_code_last_six':['871583','871588']   -- 校验码后六位备选
                        'number_order_error': ['15064115','15064116']   -- 发票号码备选(如发现可能错号等情况)
    
                        //二维码或者条码
                        'qrcode': ['00000102180000'],         -- 二维码
                        'barcode': ['00000102180000'],        -- 条码
                    }
                }
              ],
              'extra': {
                    //不属于发票的二维码或者条码
                    'qrcode': ['00000102180000'],         -- 二维码
                    'barcode': ['00000102180000'],        -- 条码
              }
           }
        }
    }
    

    错误码

    code message 原因
    10000 Internal error 内部错误
    10003 Invalid parameter 参数校验错误
    10006 Invalid image 图片资源校验错误
    10400 download image file failed 下载图片失败
    以上内容是否对您有帮助?
  • Qvm free helper
    Close