# ocr.bankcard

本接口应在服务器端调用,详细说明参见服务端API

本接口支持云调用。需开发者工具版本 >= 1.02.1904090(最新稳定版下载),wx-server-sdk >= 0.4.0

本接口提供基于小程序的银行卡 OCR 识别

调用方式:

# HTTPS 调用

# 请求地址

POST https://api.weixin.qq.com/cv/ocr/bankcard?type=MODE&img_url=ENCODE_URL&access_token=ACCESS_TOCKEN

# 请求参数

属性 类型 默认值 必填 说明
access_token / cloudbase_access_token string 接口调用凭证
img_url string 要检测的图片 url,传这个则不用传 img 参数。
img FormData form-data 中媒体文件标识,有filename、filelength、content-type等信息,传这个则不用传 img_url。

# 返回值

# Object

返回的 JSON 数据包

属性 类型 说明
errcode string 错误码
errmsg string 错误信息
number string 银行卡号

# 使用说明

接口限制 内测期间已认证的订阅号、服务号、企业号、小程序可直接调用,次数限制为100次/天。

使用 Tips 此接口为后台接口,可基于自有业务承载情况,搭配小程序的拍照、相册选照等一起使用,即可完成身份证照片的采集、上传、识别、信息返回等流程,用于需要基于身份证、银行卡等实体卡或证,采集照片或文字信息等的业务场景。

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

图片支持使用 img 参数实时上传,也支持使用img_url参数传送图片地址,由微信后台下载图片进行识别。type 有两种类型

拍摄图片样例

# 请求数据示例

示例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”

# 返回数据示例

{
  "errcode": "0",
  "errmsg": "ok",
  "id": "622213XXXXXXXXX"
}

# 云调用

云调用是微信云开发提供的在云函数中调用微信开放接口的能力,需要在云函数中通过 wx-server-sdk 使用。

# 接口方法

openapi.ocr.bankcard

需在 config.json 中配置 ocr.bankcard API 的权限,详情

# 请求参数

属性 类型 默认值 必填 说明
imgUrl string 要检测的图片 url,传这个则不用传 img 参数。
img FormData form-data 中媒体文件标识,有filename、filelength、content-type等信息,传这个则不用传 img_url。

img 的结构

属性 类型 默认值 必填 说明
contentType string 数据类型,传入 MIME Type
value Buffer 文件 Buffer

# 返回值

# Object

返回的 JSON 数据包

属性 类型 说明
errCode string 错误码
errMsg string 错误信息
number string 银行卡号

# 异常

# Object

抛出的异常

属性 类型 说明
errCode string 错误码
errMsg string 错误信息

errCode 的合法值

说明 最低版本

# 使用说明

接口限制 内测期间已认证的订阅号、服务号、企业号、小程序可直接调用,次数限制为100次/天。

使用 Tips 此接口为后台接口,可基于自有业务承载情况,搭配小程序的拍照、相册选照等一起使用,即可完成身份证照片的采集、上传、识别、信息返回等流程,用于需要基于身份证、银行卡等实体卡或证,采集照片或文字信息等的业务场景。

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

图片支持使用 img 参数实时上传,也支持使用img_url参数传送图片地址,由微信后台下载图片进行识别。type 有两种类型

拍摄图片样例

# 请求数据示例

const cloud = require('wx-server-sdk')
cloud.init({
  env: cloud.DYNAMIC_CURRENT_ENV,
})
exports.main = async (event, context) => {
  try {
    const result = await cloud.openapi.ocr.bankcard({
        "type": 'photo',
        "imgUrl": 'ENCODE_URL'
      })
    return result
  } catch (err) {
    return err
  }
}

// cloud = require('wx-server-sdk')
// ...
// 方法返回 Promise
cloud.openapi.ocr.bankcard({
  type: 'photo',
  img: {
    contentType: 'image/png',
    value: Buffer
  }
})

# 返回数据示例

{
  "errcode": "0",
  "errmsg": "ok",
  "id": "622213XXXXXXXXX"
}