Anyreceipt Logo 云界未来 Anyreceipt

开发者中心

把海外票据识别接入你的业务系统。

使用 Anyreceipt API 上传票据文件或提交文件 URL,获取金额、税额、商户、日期、单据编号等结构化字段。 批量任务支持异步提交和进度查询。

API Key

获取和重置 API Key

登录后可在账号弹窗查看、复制或重置 API Key。重置后旧 Key 将失效。

调用凭证 ak_xxxxxxxxxxxxxxxxxxxxxxxx

请在服务端保存 API Key,避免暴露在客户端。

Authentication

鉴权方式

请求需携带 API Key。推荐使用请求头,也支持 query 参数用于调试。

curl -X POST 'https://pi.anyreceipt.cn/api/ocr' \
  -H 'Content-Type: application/json' \
  -H 'X-API-KEY: ak_xxx' \
  -d '{
    "fileName": "receipt.pdf",
    "url": "https://example.com/receipt.pdf"
  }'
GET /api/getApiKeyUsage
query

获取 API Key 调用情况

查询当前 API Key 的余额点数、可用调用次数和单次调用消耗。

请求参数

X-API-KEY header 可选

API Key,推荐使用请求头传入。

apiKey query 可选

API Key,也支持 query 参数传入。

响应字段

code integer

业务状态码。

msg string

业务消息。

data.apiKey string

当前 API Key。

data.balancePoints integer

余额点数。

data.availableCallCount integer

可用调用次数。

data.callCostPoints integer

单次调用消耗点数。

请求示例

curl -X GET 'https://pi.anyreceipt.cn/api/getApiKeyUsage' \
  -H 'X-API-KEY: ak_xxx'

响应示例

{
  "code": 200,
  "msg": "操作成功",
  "data": {
    "apiKey": "ak_xxx",
    "balancePoints": 100,
    "availableCallCount": 100,
    "callCostPoints": 1
  }
}

API Reference

同步识别接口

单文件实时识别,提交后同步返回结构化结果,适合单张票据即时处理场景。

POST /api/ocr/summary
application/json

URL 文件 OCR 结构化输出并总结

提交可访问的文件 URL,返回结构化票据信息和摘要。

请求参数

X-API-KEY header 可选

API Key,推荐使用请求头传入。

apiKey query 可选

API Key,也支持 query 参数传入。

fileName body 必填

文件名称。

fileType body 可选

文件类型,不传则自动判断。

url body 必填

文件下载链接。

forceFetch body 可选

是否强制重新识别。

响应字段

outputs object

结构化票据信息。

summary string

票据摘要。

traceId string

请求追踪 ID。

elapsed_time number

处理耗时,单位秒。

请求示例

curl -X POST 'https://pi.anyreceipt.cn/api/ocr/summary' \
  -H 'Content-Type: application/json' \
  -H 'X-API-KEY: ak_xxx' \
  -d '{
    "fileName": "receipt-001.jpg",
    "fileType": "image/jpeg",
    "url": "https://example.com/receipt-001.jpg?signature=xxx",
    "forceFetch": true
  }'

响应示例

{
  "outputs": {
    "title": "DEV RECEIPT A",
    "country": "美国",
    "currency": "USD",
    "total": "47.52",
    "tax": "3.52",
    "Seller": "CODEX TEST STORE",
    "DateofInssuance": "2026/07/01",
    "Number": "DEV-RETEST-A"
  },
  "summary": "本票据包含餐饮消费,总计 47.52 美元。",
  "traceId": "4b7f4adc-9c9a-4787-b5a9-c8b1a54d8e5a",
  "elapsed_time": 8.84
}
POST /api/ocr/summary/upload
multipart/form-data

上传文件 OCR 结构化输出并总结

直接上传图片或 PDF,返回结构化票据信息和摘要。

请求参数

X-API-KEY header 可选

API Key,推荐使用请求头传入。

apiKey query 可选

API Key,也支持 query 参数传入。

file form-data 必填

待识别附件,支持图片或 PDF。

响应字段

outputs object

结构化票据信息。

summary string

票据摘要。

traceId string

请求追踪 ID。

elapsed_time number

处理耗时,单位秒。

请求示例

curl -X POST 'https://pi.anyreceipt.cn/api/ocr/summary/upload' \
  -H 'X-API-KEY: ak_xxx' \
  -F 'file=@"/path/to/receipt.pdf"'

响应示例

{
  "outputs": {
    "title": "DEV RECEIPT A",
    "type": "invoice",
    "currency": "USD",
    "total": "47.52",
    "amountwithouttax": "44.00"
  },
  "summary": "本票据包含餐饮消费,总计 47.52 美元。",
  "traceId": "4b7f4adc-9c9a-4787-b5a9-c8b1a54d8e5a",
  "elapsed_time": 8.84
}

Batch OCR

批量异步识别流程

批量任务提交后立即返回任务 ID。处理时间与文件数量和大小有关,可通过查询接口获取进度和结果。

  1. 01
    提交批量任务

    调用 URL 批量或上传批量接口,立即返回 taskId

    POST /api/ocr/batch/submit POST /api/ocr/upload/batch/submit
  2. 02
    轮询任务进度

    根据 taskId 查询 progresscompletedCountitems

    GET /api/ocr/batch/tasks/{taskId}
  3. 03
    读取识别结果

    任务完成后,从 items[].outputs 获取每个文件的结构化结果。

    status = succeeded / partial_failed
POST /api/ocr/batch/submit
application/json

批量 URL 异步识别

一次最多提交 20 个文件 URL,立即返回 taskId,后续查询任务进度。

请求参数

X-API-KEY header 可选

API Key,推荐使用请求头传入。

apiKey query 可选

API Key,也支持 query 参数传入。

forceFetch body 可选

是否强制重新识别。

files body 必填

待识别文件列表,1 到 20 个。

files[].fileName body 必填

文件名称。

files[].fileType body 可选

文件类型。

files[].url body 必填

文件下载链接。

响应字段

taskId string

批量任务 ID。

status string

任务状态。

total integer

文件总数。

completedCount integer

已完成数量。

successCount integer

成功数量。

failureCount integer

失败数量。

progress integer

进度百分比,0 到 100。

traceId string

请求追踪 ID。

请求示例

curl -X POST 'https://pi.anyreceipt.cn/api/ocr/batch/submit' \
  -H 'Content-Type: application/json' \
  -H 'X-API-KEY: ak_xxx' \
  -d '{
    "forceFetch": true,
    "files": [
      {
        "fileName": "receipt-001.jpg",
        "fileType": "image/jpeg",
        "url": "https://example.com/receipt-001.jpg?signature=xxx"
      },
      {
        "fileName": "receipt-002.pdf",
        "fileType": "application/pdf",
        "url": "https://example.com/receipt-002.pdf?signature=xxx"
      }
    ]
  }'

响应示例

{
  "taskId": "327c3f54-d8e3-4b32-a7d2-d0aded22e735",
  "status": "pending",
  "total": 2,
  "completedCount": 0,
  "successCount": 0,
  "failureCount": 0,
  "progress": 0,
  "traceId": "0fb09b9d-e235-49d1-a471-834e92f5dd69"
}
POST /api/ocr/upload/batch/submit
multipart/form-data

批量上传异步识别

一次最多上传 20 个文件,适合本地附件批量处理。

请求参数

X-API-KEY header 可选

API Key,推荐使用请求头传入。

apiKey query 可选

API Key,也支持 query 参数传入。

files form-data 必填

待识别附件,可选择多个文件,1 到 20 个。

forceFetch form-data 可选

是否强制重新识别。

force_fetch form-data 可选

与 forceFetch 等价,兼容下划线命名。

响应字段

taskId string

批量任务 ID。

status string

任务状态。

total integer

文件总数。

completedCount integer

已完成数量。

progress integer

进度百分比,0 到 100。

traceId string

请求追踪 ID。

请求示例

curl -X POST 'https://pi.anyreceipt.cn/api/ocr/upload/batch/submit' \
  -H 'X-API-KEY: ak_xxx' \
  -F 'files=@"/path/to/receipt-001.jpg"' \
  -F 'files=@"/path/to/receipt-002.pdf"' \
  -F 'forceFetch=true'

响应示例

{
  "taskId": "327c3f54-d8e3-4b32-a7d2-d0aded22e735",
  "status": "pending",
  "total": 2,
  "completedCount": 0,
  "successCount": 0,
  "failureCount": 0,
  "progress": 0,
  "traceId": "0fb09b9d-e235-49d1-a471-834e92f5dd69"
}
GET /api/ocr/batch/tasks/{taskId}
query/path

查询批量任务

根据 taskId 查询批量任务进度、状态和每个文件的识别结果。

请求参数

taskId path 必填

批量任务 ID。

X-API-KEY header 可选

API Key,推荐使用请求头传入。

apiKey query 可选

API Key,也支持 query 参数传入。

响应字段

taskId string

批量任务 ID。

type string

任务类型,url 或 upload。

status string

任务状态。

progress integer

进度百分比。

items array

每个文件的处理状态和识别结果。

items[].outputs object

单个文件的结构化票据信息。

items[].errorMessage string

单个文件失败原因。

请求示例

curl -X GET 'https://pi.anyreceipt.cn/api/ocr/batch/tasks/327c3f54-d8e3-4b32-a7d2-d0aded22e735' \
  -H 'X-API-KEY: ak_xxx'

响应示例

{
  "taskId": "327c3f54-d8e3-4b32-a7d2-d0aded22e735",
  "type": "url",
  "status": "succeeded",
  "total": 2,
  "completedCount": 2,
  "successCount": 2,
  "failureCount": 0,
  "progress": 100,
  "items": [
    {
      "index": 0,
      "fileName": "receipt-001.jpg",
      "status": "succeeded",
      "outputs": {
        "title": "DEV RECEIPT A",
        "total": "47.52",
        "currency": "USD"
      },
      "errorMessage": null
    }
  ]
}

提交限制

单次 URL 批量提交数量
最多 20 个文件 URL
单次上传批量提交数量
最多 20 个文件
上传单文件大小
最大 100MB
上传请求总大小
单次 multipart 请求最大 256MB

任务状态

pending
任务已提交,等待执行
running
任务执行中
succeeded
全部文件识别成功
partial_failed
部分文件识别失败,部分文件识别成功
failed
全部文件识别失败,或任务整体执行失败