# OCR接口文档

一、接口介绍

1.1 接口功能

本接口提供基于小程序或 H5 的身份证、银行卡、行驶证 OCR 识别。

1.2 接口限制

微信OCR能力已全面接入服务平台计费系统。除服务平台接入方式外,原内测API,插件接入方式也均已接入计费系统。2020.4.1起,已接入内测的开发者,免费额度会统一调整为100次/天,更多额度需付费购买资源包,账号内资源包额度为所有调用方式可共用,详情如下:

查看详情

1.3 使用 TIPS

此接口为后台接口,可基于自有业务承载情况,搭配小程序或 H5 的拍照、相册选照等一起使用,即可完成身份证照片的采集、上传、识别、信息返回等流程,用于需要基于身份证、银行卡等实体卡或证,采集照片或文字信息等的业务场景。 使用接口过程中如有问题,可前往 #微信OCR识别 社区发帖交流。

二、身份证OCR识别接口

2.1请求示例

地址:
https://api.weixin.qq.com/cv/ocr/idcard?img_url=ENCODE_URL&access_token=ACCESS_TOCKEN
示例1:
curl 'https://api.weixin.qq.com/cv/ocr/idcard?img_url=ENCODE_URL&access_token=ACCESS_TOCKEN'
示例2:
curl -F 'img=@test.jpg' 'https://api.weixin.qq.com/cv/ocr/idcard?access_token=ACCESS_TOCKEN'

说明: 图片支持使用img参数实时上传,也支持使用img_url参数传送图片地址,由微信后台下载图片进行识别。

拍摄图片样例:

文件大小限制:小于2M

备注:获取access token,可参考微信公众平台公开接口说明:

https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140183

2.2返回参数样例

正面:

{
    "errcode": 0,
    "errmsg": "ok",
    "type": "Front", //正面
    "name": "张三", //姓名
    "id": "123456789012345678", //身份证号码
    "addr": "广东省广州市XXX", //住址
    "gender": "男", //性别
    "nationality": "汉" //民族
}

背面:

{
    "errcode": 0,
    "errmsg": "ok",
    "type": "Back", //背面
    "valid_date": "20171025-20271025", //有效期
}




三、银行卡OCR识别接口

3.1请求示例

地址:
https://api.weixin.qq.com/cv/ocr/bankcard? img_url=ENCODE_URL&access_token=ACCESS_TOCKEN
示例1:
curl https://api.weixin.qq.com/cv/ocr/bankcard?img_url=ENCODE_URL&access_token=ACCESS_TOCKEN
示例2:
curl -F 'img=@test.jpg' 'https://api.weixin.qq.com/cv/ocr/bankcard?access_token=ACCESS_TOCKEN'

说明:

文件大小限制:小于2M

拍摄图片样例:

3.2返回参数样例

四、行驶证OCR识别接口

地址:
https://api.weixin.qq.com/cv/ocr/driving? img_url=ENCODE_URL&access_token=ACCESS_TOCKEN
示例1:
curl https://api.weixin.qq.com/cv/ocr/driving?img_url=ENCODE_URL&access_token=ACCESS_TOCKEN
示例2:
curl -F 'img=@test.jpg' "https://api.weixin.qq.com/cv/ocr/driving?access_token=ACCESS_TOCKEN"

说明: 文件大小限制:小于2M 拍摄图片样例:

4.2返回参数样例

{
    "errcode": 0,
    "errmsg": "ok",
    "plate_num": "粤xxxxx", //车牌号码
    "vehicle_type": "小型普通客车", //车辆类型
    "owner": "东莞市xxxxx机械厂", //所有人
    "addr": "广东省东莞市xxxxx号", //住址
    "use_character": "非营运", //使用性质
    "model": "江淮牌HFCxxxxxxx", //品牌型号
    "vin": "LJ166xxxxxxxx51", //车辆识别代号
    "engine_num": "J3xxxxx3", //发动机号码
    "register_date": "2018-07-06", //注册日期
    "issue_date": "2018-07-01", //发证日期
    "plate_num_b": "粤xxxxx", //车牌号码
    "record": "441xxxxxx3", //号牌
    "passengers_num": "7人", //核定载人数
    "total_quality": "2700kg", //总质量
    "prepare_quality": "1995kg" //整备质量,
    "overall_size": "4582x1795x1458mm" //外廓尺寸,
    "card_position_front": {//卡片正面位置(检测到卡片正面才会返回)
        "pos": {
            "left_top": {
                "x": 119, 
                "y": 2925
            }, 
            "right_top": {
                "x": 1435, 
                "y": 2887
            }, 
            "right_bottom": {
                "x": 1435, 
                "y": 3793
            }, 
            "left_bottom": {
                "x": 119, 
                "y": 3831
            }
        }
    }, 
    "card_position_back": {//卡片反面位置(检测到卡片反面才会返回)
        "pos": {
            "left_top": {
                "x": 1523, 
                "y": 2849
            }, 
            "right_top": {
                "x": 2898, 
                "y": 2887
            }, 
            "right_bottom": {
                "x": 2927, 
                "y": 3831
            }, 
            "left_bottom": {
                "x": 1523, 
                "y": 3831
            }
        }
    }, 
    "img_size": {//图片大小
        "w": 3120, 
        "h": 4208
    }
}

五、驾驶证OCR识别接口

5.1请求示例

地址:
https://api.weixin.qq.com/cv/ocr/drivinglicense?img_url=ENCODE_URL&access_token=ACCESS_TOCKEN
示例1:
curl https://api.weixin.qq.com/cv/ocr/drivinglicense?img_url=ENCODE_URL&access_token=ACCESS_TOCKEN
示例2:
curl -F 'img=@test.jpg' 'https://api.weixin.qq.com/cv/ocr/drivinglicense?access_token=ACCESS_TOCKEN'

说明: 文件大小限制:小于2M

拍摄图片样例:

5.2返回参数样例

{
    "errcode": 0,
    "errmsg": "ok",
    "id_num": "660601xxxxxxxx1234", //证号
    "name": "张三", //姓名
    "sex": "男", //性别
    "nationality": "中国", //国籍
    "address": "广东省东莞市xxxxx号", //住址
    "birth_date": "1990-12-21", //出生日期
    "issue_date": "2012-12-21", //初次领证日期
    "car_class": "C1", //准驾车型
    "valid_from": "2018-07-06", //有效期限起始日
    "valid_to": "2020-07-01", //有效期限终止日
    "official_seal": "xx市公安局公安交通管理局" //印章文字
}

六、营业执照OCR识别接口

6.1请求示例

地址:
https://api.weixin.qq.com/cv/ocr/bizlicense?img_url=ENCODE_URL&access_token=ACCESS_TOCKEN
示例1:
curl "https://api.weixin.qq.com/cv/ocr/bizlicense?img_url=ENCODE_URL&access_token=ACCESS_TOCKEN"
示例2:
curl -F 'img=@test.jpg' "https://api.weixin.qq.com/cv/ocr/bizlicense?access_token=ACCESS_TOCKEN" 

说明: 文件大小限制:小于2M

返回字段仅包含当前营业执照图片中存在的字段,若对应字段不存在则不返回

拍摄图片样例:

6.2返回参数样例

{
    "errcode": 0, 
    "errmsg": "ok", 
    "reg_num": "123123",//注册号
    "serial": "123123",//编号
    "legal_representative": "张三", //法定代表人姓名
    "enterprise_name": "XX饮食店", //企业名称
    "type_of_organization": "个人经营", //组成形式
    "address": "XX市XX区XX路XX号", //经营场所/企业住所
    "type_of_enterprise": "xxx", //公司类型
    "business_scope": "中型餐馆(不含凉菜、不含裱花蛋糕,不含生食海产品)。", //经营范围
    "registered_capital": "200万", //注册资本
    "paid_in_capital": "200万", //实收资本
    "valid_period": "2019年1月1日", //营业期限
    "registered_date": "2018年1月1日", //注册日期/成立日期
    "cert_position": { //营业执照位置
        "pos": {
            "left_top": {
                "x": 155, 
                "y": 191
            }, 
            "right_top": {
                "x": 725, 
                "y": 157
            }, 
            "right_bottom": {
                "x": 743, 
                "y": 512
            }, 
            "left_bottom": {
                "x": 164, 
                "y": 525
            }
        }
    }, 
    "img_size": { //图片大小
        "w": 966, 
        "h": 728
    }
}

七、通用印刷体OCR识别接口

7.1请求示例

地址:
https://api.weixin.qq.com/cv/ocr/comm?img_url=ENCODE_URL&access_token=ACCESS_TOCKEN
示例1:
curl "https://api.weixin.qq.com/cv/ocr/comm?img_url=ENCODE_URL&access_token=ACCESS_TOCKEN"
示例2:
curl -F 'img=@test.jpg' "https://api.weixin.qq.com/cv/ocr/comm?access_token=ACCESS_TOCKEN" 

说明: 文件大小限制:小于2M

通用印刷体OCR适用于屏幕截图、印刷体照片等场景

7.2返回参数样例

{
    "errcode": 0, 
    "errmsg": "ok", 
    "items": [ //识别结果
        {
            "text": "腾讯", 
            "pos": {
                "left_top": {
                    "x": 575, 
                    "y": 519
                }, 
                "right_top": {
                    "x": 744, 
                    "y": 519
                }, 
                "right_bottom": {
                    "x": 744, 
                    "y": 532
                }, 
                "left_bottom": {
                    "x": 573, 
                    "y": 532
                }
            }
        }, 
        {
            "text": "微信团队", 
            "pos": {
                "left_top": {
                    "x": 670, 
                    "y": 516
                }, 
                "right_top": {
                    "x": 762, 
                    "y": 517
                }, 
                "right_bottom": {
                    "x": 762, 
                    "y": 532
                }, 
                "left_bottom": {
                    "x": 670, 
                    "y": 531
                }
            }
        }
    ], 
    "img_size": { //图片大小
        "w": 1280, 
        "h": 720
    }
}

八、车牌识别接口

8.1请求示例

地址:
https://api.weixin.qq.com/cv/ocr/platenum?img_url=ENCODE_URL&access_token=ACCESS_TOCKEN
示例1:
curl "https://api.weixin.qq.com/cv/ocr/platenum?img_url=ENCODE_URL&access_token=ACCESS_TOCKEN"
示例2:
curl -F 'img=@test.jpg' "https://api.weixin.qq.com/cv/ocr/platenum?access_token=ACCESS_TOCKEN" 

说明: 文件大小限制:小于2M

支持蓝标、黄标和绿标新能源车牌,暂不支持特殊车牌。

拍摄图片样例:

8.2返回参数样例

{
    "errcode": 0, 
    "errmsg": "ok", 
    "number":"粤A123456" //车牌号
}

九、菜单识别接口

说明:

1、要已认证的订阅号、服务号、企业号、小程序账号才可以调用 2、该接口尚未接入服务平台,暂时不支持付费购买。

9.1请求示例

地址:
https://api.weixin.qq.com/cv/ocr/menu?img_url=ENCODE_URL&access_token=ACCESS_TOCKEN
示例1:
curl "https://api.weixin.qq.com/cv/ocr/menu?img_url=ENCODE_URL&access_token=ACCESS_TOCKEN"
示例2:
curl -F 'img=@test.jpg' "https://api.weixin.qq.com/cv/ocr/menu?access_token=ACCESS_TOCKEN" 

说明: 文件大小限制:小于2M

拍摄图片样例:

9.2返回参数样例


{
    "errcode": 0, 
    "errmsg": "ok", 
    "content": "{\"menu_items\": [{\"name\": \"酱鸭\", \"price\": 48.0}, {\"name\": \"龙虾\", \"price\": 80.0}, {\"name\": \"芝麻鸭块\", \"price\": 48.0}, {\"name\": \"皮皮虾\", \"price\": 70.0}, {\"name\": \"特色辣鸭脚\", \"price\": 46.0}, {\"name\": \"花甲\", \"price\": 30.0}, {\"name\": \"小鸭翅\", \"price\": 46.0}, {\"name\": \"鸭肠\", \"price\": 40.0}, {\"name\": \"微辣大鸭脚\", \"price\": 43.0}, {\"name\": \"八宝\", \"price\": 10.0}, {\"name\": \"大鸭翅\", \"price\": 43.0}, {\"name\": \"千叶豆腐\", \"price\": 10.0}, {\"name\": \"鸭脖\", \"price\": 35.0}, {\"name\": \"毛豆\", \"price\": 15.0}, {\"name\": \"鸭锁骨\", \"price\": 35.0}, {\"name\": \"螺丝\", \"price\": 15.0}, {\"name\": \"特色蟹脚\", \"price\": 55.0}, {\"name\": \"藕片\", \"price\": 15.0}, {\"name\": \"鱿鱼须\", \"price\": 70.0}, {\"name\": \"腐竹\", \"price\": 15.0}, {\"name\": \"鸭下巴\", \"price\": 70.0}, {\"name\": \"鸭头\", \"price\": 5.0}, {\"name\": \"无骨鸭脚\", \"price\": 70.0}, {\"name\": \"辣椒酱\", \"price\": 10.0}, {\"name\": \"鸭舌\", \"price\": 138.0}, {\"name\": \"花生米\", \"price\": 5.0}, {\"name\": \"鸭胗\", \"price\": 55.0}, {\"name\": \"萝卜干\", \"price\": 12.0}, {\"name\": \"牛肉串\", \"price\": 65.0}, {\"name\": \"盐菜\", \"price\": 12.0}]}"
}

# 结果参数说明

参数 参数类型 说明
errcode int 返回码
errmsg string 错误信息
content string 识别的信息

content结构体说明

参数 参数类型 说明
menu_items object array 菜单内容列表

menu_items结构体说明

参数 参数类型 说明
name string 菜单名
price float 价格

十、常见错误码

错误码 errmsg 说明
-1 system error 系统错误,请稍后重试
101000 invalid image url 图片URL错误或拉取URL图像错误
101001 certificate not found 图片中无法找到证件
101002 invalid image data 图片数据无效