护照与身份证 OCR API – 一次 HTTP 调用,每份证件 1¢

doc.cheap 是一款护照与身份证 OCR API,只需一次 HTTP 请求,就能把旅行证件的照片转换为结构化 JSON。发送一张图像,同一个响应中就会返回解析后的机读区(MRZ)、经过验证的 ICAO 9303 校验位,以及从视读区提取的字段;无需轮询队列,也无需安装 SDK。首次成功调用用时不到 60 秒,而且无需注册:下方示例中已经带有公开的沙箱密钥。每份成功识别的证件收费 1¢,从第一份到第一千万份都是同一个价格;如果扫描什么也没找到,则分文不收。

  • ✓ 一次同步调用
  • ✓ 60 秒完成首次调用
  • ✓ 无需注册即可开始
  • ✓ 扁平 JSON,无需解析

一段装饰性动画:地球的各大洲由机读区字符绘制而成,地球旋转后展开为一张平面地图。动画下方会逐字打出本站通篇使用的样例护照的机读区。

TD3 · 样例

立即试用 – 无需账户,无需银行卡,没有试用期

立即试用 – 无需账户

拖入一张护照或身份证图像,识别会立即开始。图像会先在您的浏览器中缩放,再发送到公开沙箱;图像从不存储。

同样的调用,在您的终端中

curl -X POST https://api.doc.cheap/v1/scans \
  -H "Authorization: Bearer sk_sandbox_public" \
  -H "Content-Type: application/json" \
  -d "{\"image\": \"$(base64 < document.jpg | tr -d '\n')\"}"

选好图像后,识别结果会立刻显示在下方:每个字段,按读出时的每种语言分别列出,机读区则逐位完成校验。

返回内容:每个字段,均经交叉核验

证件通过一次 POST /v1/scans 请求发送进来,同一个响应返回解析后的机读区、经过验证的校验位以及视读区字段。

meta

这次扫描是什么、结果如何:它的 id、状态、是否扣除了点数,以及时间花在了哪里。

schema_version · id · status · billed · confidence · timing · created_at · reference

document

识别出的证件类型、签发国家、证件号码和日期,以及是否已过期。没有识别出任何内容时为 null。

kind · country · country_name · issuing_state · type_name · type_confidence · number · series · issue_date · expiry_date · is_expired · days_remaining

holder

证件所标识的持有人。没有识别出任何内容时为 null。

given_names · surname · full_name · birth_date · sex · nationality

fields[]

从印刷页面上读出的每个字段,映射到一个固定的名称。每次读取对应一个条目,各自带有语言和置信度等级。

id · name · label · category · value · language · confidence

mrz

机读区:是否通过校验的结论、未通过时的原因,以及与读取时完全一致的各行原文。

status · reason · lines · text

images

从您发送的图片中裁剪出的图像,每张都是一个 data URL。

document_crop · rear · main_photo · signature · watermark_face · barcode · chip

quality

您发送的图片质量是否足以进行识别。

overall

authenticity

真伪验证。在仅识别的调用中不会运行,响应中会将其标记为未检查。

overall · checks

一个样例机读区,以及解析器如何处理它

P<GRCPARADEIGMA<<ELENI<SOFIA<<<<<<<<<<<<<<<<
AM73045184GRC9403084F3203101PN48291630<<<<72

价格:每份证件 1¢ – 而且只在识别成功时收费

每份证件

所有人同一个价格,不分用量:第一份证件和第一千万份证件的价格完全相同。

只为我们真正识别出的证件付费。

照片模糊、画面中没有证件、证件类型未知:全部免费。扫描失败,您永远不用付钱。

  • ✓ 使用公开的沙箱密钥,每个地址可免费识别 10 份证件,完全不需要账户;无论返回什么结果,每小时最多 10 次请求。
  • ✓ 注册即送 20 份免费证件额度,直接计入您的余额。

计费方式 免费调用,无需账户

doc.cheap 与同类产品对比

证件识别的公开标价
服务商公开价格免费起步
doc.cheap每份证件 $0.01,任何用量统一价格 公开沙箱,无需注册
AWS Textract – Analyze ID每月 100,000 页以内每页 $0.025;超出部分每页 $0.01(us-west-2) 来源前三个月每月 100 页
Google Document AI每份证件 $0.10(美国护照解析器);$0.10(驾驶证) 来源
Mindee额外点数 "starting from $0.05",另加 20 % 的超额使用费 来源
扫描失败的费用
doc.cheap$0 – 没有找到证件的扫描不收费,响应中的 billed 标志也会如实说明。
以上三家它们的价格页面上均未公布任何例外情况。

我们在物理上不存储您的证件

您上传的图像只在请求期间保存在内存中,从不写入磁盘。保留下来的是结果 – 识别结论和提取出的字段,绝不包含证件的图像 – 保留多久由您决定:一年、一个月、一周、一天,或者完全不保留。

面向 AI 智能体的护照 OCR:MCP 服务器

需要读取护照的智能体,不必再为它专门编写 HTTP 客户端。doc.cheap 提供一个 Model Context Protocol 服务器,助手可以把识别当作工具来调用:交给它一张图像,就能拿回同样的结构化字段。与 API 使用同一个密钥、同一个价格、同一种响应结构 – 并不是另一个独立的产品。

MCP 服务器及其安装方法 阅读指南

开发者常问的问题

护照上的 OCR 是什么?

光学字符识别(OCR)从证件照片上读取印刷字符,并将其转换为文本。护照上有两部分需要读取:页面底部机读区的两行字符,使用专为机器读取设计的字体印刷;以及其上方的视读区,它是普通的印刷文字,每个签发机构的排版都不相同。

MRZ 是什么?

机读区(MRZ)是护照或身份证底部由若干固定宽度的行组成的区块,由 ICAO Doc 9303 标准化。它在固定位置编码了证件号码、签发国、姓名、国籍、出生日期、性别和有效期,并附有用于验证读取结果的校验位。

ICAO Doc 9303 是什么?

ICAO Doc 9303《机读旅行证件》(Machine Readable Travel Documents)是所有护照和机读身份证件都遵循的规范。它分为若干部分发布:第 3 部分是所有机读旅行证件通用的规范,第 4、5、6 部分分别规定了 TD3 护照、TD1 卡和 TD2 卡。正因为有它,任何地方签发的护照都能被任何地方制造的阅读器读取。

护照 OCR API 会出错吗?

任何对照片的读取都可能出错,所以返回结果的设计目标是可供核查,而不是让您盲目相信。每个机读区都会用它自己的 ICAO 9303 校验位进行验证,验证结论就在响应中;每个字段都带有置信度等级;当机读区与视读区不一致时,两种读取结果都会返回,而不是悄悄地只取其一。

你们会存储我的数据吗?

上传的图像只在请求期间保存在内存中,从不写入磁盘。可以保留的是结果 – 识别结论和提取出的字段 – 保留期限由您按账户或按请求设定,从一年到零;设为零则完全不写入任何内容。

有免费试用或演示版本吗?

没有需要报名的试用,因为一开始根本不需要报名任何东西。文档和本页示例中都印有公开的沙箱密钥,它执行的是真实的识别。注册后,您的余额中会获得免费证件额度;此后您为余额充值,每识别一份证件扣除一个点数。

能检测伪造或篡改的证件吗?

不能,而且响应会明确说明这一点,而不是保持沉默:真伪字段的值为 not_checked。本服务执行的是识别,而识别不等于鉴真 – 这里没有任何环节检查证件的防伪特征。校验位通过只能证明机读区内部自洽,而制作伪证的人同样能做到这一点;校验位能发现的是污损、反光和误读。

用于证件处理的 MCP 服务器是什么?

Model Context Protocol 是 AI 助手调用工具的标准。用于证件处理的 MCP 服务器把识别功能作为助手可以调用的工具提供出来,这样智能体就能把护照图像交给它并拿回结构化字段,而无需任何人编写 HTTP 代码。doc.cheap 就提供了这样一个服务器,它与 API 使用同一个密钥、同一个价格。