/ocr/medical_invoice/zhejiang
1.接口描述
该 API 用于识别提取浙江门诊样式发票上的字段信息。
- 图片要求:
- 格式为 JPG(JPEG),PNG
- 宽和高大于 128px,小于等于 6000px
- 小于等于 5 MB
请求方式
POST
请求 URL
https://cloudapi.deepfinch.com/ocr/medical_invoice/zhejiang
调试工具
Debugging Tool
2.请求参数
2.1 请求头域
字段 |
类型 |
必需 |
描述 |
X-DF-API-ID |
string |
是 |
API调用凭证信息,详细信息请参考API调用 |
X-DF-API-SECRET |
string |
是 |
API调用凭证信息,详细信息请参考API调用 |
2.2 请求体
字段 |
类型 |
是否必需 |
描述 |
file |
file |
见下方注释 |
需上传的图片文件,上传本地图片进行检测时选取此参数 |
url |
string |
见下方注释 |
图片网络地址,采用抓取网络图片方式时需选取此参数 |
auto_rotate |
boolean |
否 |
自动旋转图片,true开启,false不开启;默认不开启 |
请求参数 file
与 url
二选一。
url 中若含有特殊字符,则需要对这些字符进行转义,所有中文和特殊字符必需以UTF-8编码转义。
目前支持 http/https 协议的网络地址。下载限时 5s,超时后仍未下载完成则属于失败。
参数 file
需把图片文件以 multipart/form-data 的形式放到 POST 消息体中。
3.返回参数
字段 |
类型 |
说明 |
request_id |
string |
本次请求的id |
status |
string |
状态,正常为 OK |
degree |
int |
图片旋转角度 |
medical_result |
object |
票据信息提取结果 |
3.1 `medical_result` 字段的参数:
字段 |
类型 |
说明 |
type |
int |
票据类型:0-未知,1-门诊票据,2-住院票据 |
note_no |
string |
发票号 |
patient_name |
string |
患者姓名 |
patient_gender |
int |
患者性别:0-未知,1-男, 2-女 |
billing_date |
string |
开票日期 |
cost_categories |
array |
大类项目 |
cost_detail_list |
array |
细类项目 |
hospital_name |
string |
医院名称 |
hospital_dates |
array |
入出院日期,[入院日期, 出院日期],日期格式为YYYY-MM-DD |
hospital_days |
float |
住院天数 |
total_cost |
float |
发票总金额 |
medical_insurance_type |
string |
医保类型;根据票面内容提取 |
medical_organization_type |
string |
医疗机构类型 |
service_serial_number |
string |
业务流水号 |
social_security_card_number |
string |
社会保障号码 |
payments_info |
array |
支付信息项 |
checksum |
object |
票据内字段校验结果: -1-无法校验,0-校验不通过,1-校验通过 |
charging_units |
string |
收款单位 |
hospital_no |
string |
门诊号 |
payee |
string |
收款人 |
3.1.1 `checksum` 字段的参数:
字段 |
类型 |
说明 |
total_cost |
int |
总金额 |
cost_categories |
int |
大类项目 |
payments_class_b |
int |
乙类自付金额 |
payments_class_c |
int |
丙类自付金额 |
3.1.2 `cost_categories` 字段的参数:
字段 |
类型 |
说明 |
name |
string |
大类单项名称 |
cost |
float |
大类单项花费 |
3.1.3 `cost_detail_list` 字段的参数:
字段 |
类型 |
说明 |
amount |
float |
数量 |
check_info |
int |
整个条目(含细目名称、总价格、单价、数量、自付金额)校验是否通过:-1-无法校验,0-校验不通过,1-校验通过 |
check_info_price |
int |
总价格校验是否通过:-1-无法校验,0-校验不通过,1-校验通过 |
check_name_info |
int |
细目名称是否通过:-1-无法校验,0-校验不通过,1-校验通过 |
class |
string |
细目所属大类;根据票面内容提取 |
level |
string |
医保等级;根据票面内容提取 |
medical_type |
int |
项目类型:0-未知,1-西药,2-中药,3-诊疗项目 |
name |
string |
通过细目名称匹配的医保库名称 |
ocr_name |
string |
结合医保库修正的细目名称 ;建议细目名称用此条 |
origin_ocr_name |
string |
票面上原始打印的细目名称 |
price |
float |
细目金额 |
selfpay |
float |
自付金额,从票面提取或通过细目金额*自付比例 计算 |
selfpay_ratio |
float |
自付比例,取值范围[0-1],从票面提取或通过细目名称查询医保库获取 |
spec |
string |
规格 |
unit_price |
float |
单价 |
3.1.4 `payments_info` 的字段:
字段 |
类型 |
说明 |
name |
string |
名称 |
amount |
float |
金额 |
check_info |
int |
金额校验是否通过:-1-无法校验,0-校验不通过,1-校验通过 |
3.1.5 `payments_info`中`name`的取值:
以下字段如票面中不包含或未提取到,不做输出
字段 |
自付一(自负、个人自负等同义词均按此字段输出) |
自付二(自理、个人自理等同义词等同义词均按此字段输出) |
自费(自费、自费金额等同义词等同义词均按此字段输出) |
现金支付 |
个人账户支付 |
基金支付 |
民政救助 |
大病救助 |
返回结果示例
{
"request_id": "TIDa0f74432e2134772a8974cb086e9ae6b",
"status": "OK",
"degree":0,
"medical_result": {
"average_prob": 0.7073246833276072,
"billing_date": "2018-03-28",
"checksum": {
"cost_categories": 1,
"total_cost": 1,
"note_no": 1,
"billing_date": 1
},
"cost_categories": [],
"fund_payments": [],
"payments_info": [{
"amount": 102376.98,
"check_info": -1,
"name": "个人支付金额"
}],
"hospital_name": "烟台市州台山医院",
"note_no": "401238134315",
"patient_gender": 2,
"patient_name": "曲多多"
"total_cost": 855.32,
"type": 1
}
}
4.错误码
状态码 |
status 字段 |
说明 |
400 |
INVALID_ARGUMENT |
请求参数错误 |
400 |
DETETION_FAILED |
图片检测失败 |
400 |
DOWNLOAD_ERROR |
网络地址图片获取失败 |
401 |
UNAUTHORIZED |
未授权或授权失败 |
401 |
KEY_EXPIRED |
账号过期 |
403 |
NO_PERMISSION |
无调用权限 |
403 |
OUT_OF_QUOTA |
调用次数超出限额 |
403 |
RATE_LIMIT_EXCEEDED |
调用频率超出限额 |
404 |
NOT_FOUND |
请求路径错误 |
500 |
INTERNAL_ERROR |
服务器内部错误 |
备注: 以上40X系列错误描述请参考reason
字段
输出样例
{
"status": "INVALID_ARGUMENT",
"reason": "must specify 'file' or 'url' argument",
"request_id": "TID8bf47ab6eda64476973cc5f5b6ebf57e"
}
5.输入示例