Version
Version | Date | Changes |
---|---|---|
v1.0.0 | 2021-03-04 | 최초 작성 |
v1.0.2 | 2021-07-22 | foundValuesSum -> foundValueSum 신분증에 maskingPolys 추가 |
v1.0.3 | 2021-09-16 | 신분증에 외국인등록증 추가 |
v1.0.4 | 2022-04-21 | 신분증 테두리 위치 표기 외국인 등록증에 alienRegNumEtc 추가 신용카드에 이름 추가 |
v1.0.5 | 2023-05-25 | 여권 MRZ API |
v1.0.6 | 2023-11-23 | 영수증 부가세 및 할인금액 추가 |
v1.0.7 | 2024-09-26 | 콘텐츠 항목 정리 및 문구 개선 |
개요
본 문서에서는 Document OCR의 공통요청 및 응답 바디에 대해 설명하고 API 구현 예제를 제공합니다.
공통 요청
참고
- Document OCR은 Post URL과 헤더를 기준으로 상품을 구분하며 요청 바디는 모두 동일합니다.
- Post URL과 헤더, 에러코드에 대한 정보는 CLOVA OCR 개요 문서를 참조해 주십시오.
요청 예시
요청 바디
Content-Type : application/json
- CURL example:
- JSON 요청 바디 필드
필드명 | 필수 여부 | 타입 | 설명 | 제약 사항 |
---|---|---|---|---|
version | Y | string | V2 로 고정 |
|
requestId | Y | string | 임의의 UUID 값 입력 | |
timestamp | Y | integer | 임의의 timestamp 값을 숫자로 입력 | |
images | Y | string | JSON array로 작성하며, 호출당 1개의 이미지 array만 작성 가능 | |
images.format | Y | string | jpg , jpeg , png , pdf , tiff 중 택일하여 이미지 포맷을 입력 |
pdf , tiff 는 단일 페이지 형식을 지원합니다. |
image.data | Y | string | BASE64로 인코딩된 이미지 바이트를 입력 | 특화 문서의 경우 보안을 위해 인코딩된 이미지 바이트만 지원합니다. |
image.name | Y | string | 임의의 이미지명 입력 | 이미지를 식별하는 데 사용되며, 응답 결과 검증에 사용하실 수 있습니다. |
Content-Type : multipart/form-data
- CURL example:
- Form Data 요청 바디 필드
필드명 | 필수 여부 | 타입 | 설명 | 제약 사항 |
---|---|---|---|---|
version | Y | string | V2 로 고정 |
|
requestId | Y | string | 임의의 UUID 값 입력 | |
timestamp | Y | integer | 임의의 timestamp 값을 숫자로 입력 | |
images | Y | string | JSON array로 작성하며, 호출당 1개의 이미지 array만 작성 가능 | |
images.format | Y | string | jpg , jpeg , png , pdf , tiff 중 택일하여 이미지 포맷을 입력 |
pdf , tiff 는 단일 페이지 형식을 지원 |
image.name | Y | string | 임의의 이미지명 입력 | 이미지를 식별하는 데 사용됨 응답 결과 검증에 사용 가능 |
응답 바디
영수증 예시
영수증 응답 바디
영수증 OCR의 응답 바디를 설명합니다.
응답 바디 하위의 객체에 대해서는 하단의 "공통 객체 정보"를 참고해주시기 바랍니다.
1. 응답 바디 필드
필드명 | 유형 | 설명 |
---|---|---|
uid | string | API의 유효성 검사를 위해 제공되는 고유 ID로, 유효성 검사 요청을 추적하는 데 사용 |
name | string | 요청 바디의 images.name에 입력한 이미지명 |
inferResult | string | 이미지 인식 결과SUCCESS : 이미지 인식 성공FAILURE : 이미지 인식 실패ERROR : 이미지 인식 처리예외 |
message | string | 이미지 인식 성공 시 SUCCESS 표시이미지 인식 실패 시 오류 메시지 표시 |
receipt | json object | receipt 객체 참조 |
validationResult | json object | 유효성 검사 결과 |
validationResult.result | string | 유효성 검사 결과 코드 NO_REQUESTED : 검증 작업을 요청하지 않음UNCHECKED : 동작 응답이 확인되지 않거나 응답 미수락ERROR : 검증 실행에 오류 발생 VALID : 검증 결과가 유효함 INVALID : 검증 결과가 유효하지 않음 ※ UNCHECKED ,ERROR ,INVALID 는 유효성 검사 실패로 표시됨 |
validationResult.message | string | Validation 세부 메시지로 항상 응답되는 값은 아님 |
convertedImageInfo | json object | 이미지 포맷이 pdf 또는 tiff 인 경우 응답좌표값은 이미지로 변환된 호출 파일을 기준으로 함 |
convertedImageInfo.width | integer | 변환 이미지 가로 길이 |
convertedImageInfo.height | integer | 변환 이미지 세로 길이 |
convertedImageInfo.pageIndex | integer | pdf 또는 tiff 의 페이지 인덱스 |
2. receipt 객체 필드
필드명 | 유형 | 설명 |
---|---|---|
meta | json object | 메타 정보 |
meta.estimatedLanguage | string | OCR에서 추정한 언어 ( en : 영어, ja : 일본어, ko : 한국어) |
result | json object | 인식 결과 |
result.storeInfo | json object | 매장 정보 |
result.storeInfo.poiInfo | PoiObject[] | POI 그라운딩 결과 |
result.storeInfo.name | StringObject | 상호명 |
result.storeInfo.subName | StringObject | 지점명 |
result.storeInfo.bizNum | StringObject | 사업자번호 |
result.storeInfo.movieName | StringObject | 영화 제목 (영화표 관련 항목) |
result.storeInfo.addresses | StringObject[] | 매장 주소 |
result.storeInfo.tel | TelObject[] | 매장 전화번호 |
result.paymentInfo | json object | 결제 정보 |
result.paymentInfo.date | DateObject | 결제 날짜 |
result.paymentInfo.time | TimeObject | 결제 시간 |
result.paymentInfo.cardInfo | json object | 거래 카드 정보 |
result.paymentInfo.cardInfo.company | StringObject | 카드사 이름 |
result.paymentInfo.cardInfo.number | StringObject | 카드 번호 |
result.paymentInfo.confirmNum | BaseObject | 결제 번호 |
result.subResults | json array | 항목 그룹 정보 |
result.subResults.items | json array | 인식된 항목 정보 (메뉴 등) |
result.subResults.items.name | StringObject | 항목명 |
result.subResults.items.code | StringObject | 항목 코드 |
result.subResults.items.count | FloatObject | 항목 수량 |
result.subResults.items.price | json object | 가격정보 |
result.subResults.items.price.price | FloatObject | 가격 |
result.subResults.items.price.unitPrice | FloatObject | 단가 |
result.totalPrice | json object | 총 금액 정보 |
result.totalPrice.price | FloatObject | 총 금액 |
result.subTotal | FloatObject | 총 합계 정보 |
result.subTotal.taxPrice | FloatObject | 부과세 |
result.subTotal.discountPrice | FloatObject | 할인금액 |
사업자등록증 예시
사업자등록증 응답 바디
사업자등록증 OCR의 응답 바디를 설명합니다.
응답 바디 하위의 객체에 대해서는 하단의 "공통 객체 정보"를 참고해주시기 바랍니다.
1. 응답 바디 필드
필드명 | 유형 | 설명 |
---|---|---|
uid | string | API의 유효성 검사를 위해 제공되는 고유 ID로, 유효성 검사 요청을 추적하는 데 사용 |
name | string | 요청 바디의 images.name에 입력한 이미지명 |
inferResult | string | 이미지 인식 결과SUCCESS : 이미지 인식 성공FAILURE : 이미지 인식 실패ERROR : 이미지 인식 처리예외 |
message | string | 이미지 인식 성공 시 SUCCESS 표시이미지 인식 실패 시 오류 메시지 표시 |
bizLicense | json object | bizLicense 객체 참조 |
validationResult | json object | 유효성 검사 결과 |
validationResult.result | string | 유효성 검사 결과 코드 NO_REQUESTED : 검증 작업을 요청하지 않음UNCHECKED : 동작 응답이 확인되지 않거나 응답 미수락ERROR : 검증 실행에 오류 발생 VALID : 검증 결과가 유효함 INVALID : 검증 결과가 유효하지 않음 ※ UNCHECKED ,ERROR ,INVALID 는 유효성 검사 실패로 표시됨 |
validationResult.message | string | Validation 세부 메시지로 항상 응답되는 값은 아님 |
convertedImageInfo | json object | 이미지 포맷이 pdf 또는 tiff 인 경우 응답좌표값은 이미지로 변환된 호출 파일을 기준으로 함 |
convertedImageInfo.width | integer | 변환 이미지 가로 길이 |
convertedImageInfo.height | integer | 변환 이미지 세로 길이 |
convertedImageInfo.pageIndex | integer | pdf 또는 tiff 의 페이지 인덱스 |
2. bizLicense 객체 필드
필드명 | 유형 | 설명 |
---|---|---|
meta | json object | 메타 정보 |
meta.estimatedLanguage | string | OCR에서 추정한 언어 ( en : 영어, ja : 일본어, ko : 한국어) |
result | json object | 인식 결과 객체 |
result.birth | BaseObject[] | 생년월일 |
result.bisAddress | BaseObject[] | 사업자 주소 |
result.bisArea | BaseObject[] | 사업장 소재지 |
result.bisItem | BaseObject[] | 사업 항목 |
result.registerNumber | BaseObject[] | 사업자등록번호 |
result.bisType | BaseObject[] | 업종 |
result.companyName | BaseObject[] | 상호 |
result.coRepName | BaseObject[] | 공동 대표자 이름 |
result.corpName | BaseObject[] | 법인(기업)명 |
result.corpRegisterNum | BaseObject[] | 사업자등록번호 |
result.coRepSocialNum | BaseObject[] | 공동 대표자의 주민등록번호 |
result.documentType | StringObject[] | 문서 유형 |
result.headAddress | BaseObject[] | 본사 주소 |
result.issuanceDate | BaseObject[] | 발행 일자 |
result.issuanceReason | BaseObject[] | 발행 사유 |
result.openDate | BaseObject[] | 사업 시작일 |
result.repName | BaseObject[] | 대표자 이름 |
result.socialNumber | BaseObject[] | 주민등록번호 |
result.taxType | BaseObject[] | 과세 유형 |
신용카드 예시
신용카드 응답 바디
신용카드 OCR의 응답 바디를 설명합니다.
응답 바디 하위의 객체에 대해서는 하단의 "공통 객체 정보"를 참고해주시기 바랍니다.
1. 응답 바디 필드
필드명 | 유형 | 설명 |
---|---|---|
uid | string | API의 유효성 검사를 위해 제공되는 고유 ID로, 유효성 검사 요청을 추적하는 데 사용 |
name | string | 요청 바디의 images.name에 입력한 이미지명 |
inferResult | string | 이미지 인식 결과SUCCESS : 이미지 인식 성공FAILURE : 이미지 인식 실패ERROR : 이미지 인식 처리예외 |
message | string | 이미지 인식 성공 시 SUCCESS 표시이미지 인식 실패 시 오류 메시지 표시 |
creditCard | json object | creditCard 객체 참조 |
validationResult | json object | 유효성 검사 결과 |
validationResult.result | string | 유효성 검사 결과 코드NO_REQUESTED : 검증 작업을 요청하지 않음UNCHECKED : 동작 응답이 확인되지 않거나 응답 미수락ERROR : 검증 실행에 오류 발생 VALID : 검증 결과가 유효함 INVALID : 검증 결과가 유효하지 않음 ※ UNCHECKED ,ERROR ,INVALID 는 유효성 검사 실패로 표시됨 |
validationResult.message | string | Validation 세부 메시지로 항상 응답되는 값은 아님 |
convertedImageInfo | json object | 이미지 포맷이 pdf 또는 tiff 인 경우 응답좌표값은 이미지로 변환된 호출 파일을 기준으로 함 |
convertedImageInfo.width | integer | 변환 이미지 가로 길이 |
convertedImageInfo.height | integer | 변환 이미지 세로 길이 |
convertedImageInfo.pageIndex | integer | pdf 또는 tiff 의 페이지 인덱스 |
2. creditCard 객체 필드
필드명 | 유형 | 설명 |
---|---|---|
meta | json object | 메타 정보 |
meta.estimatedLanguage | string | OCR에서 추정한 언어 ( en : 영어, ja : 일본어, ko : 한국어) |
result | json object | 인식 결과 객체 |
result.number | Field object | field 객체 참조 |
result.validThru | Field object | field 객체 참조 |
result.name | Field object | 카드 소유자 이름 field 객체 참조 |
신분증 예시
주민등록증 응답 예시
여권 응답 예시
신분증 응답 바디
신분증 OCR의 응답 바디를 설명합니다.
신분증은 주민등록증(구형/신형), 운전면허증(구형/신형), 외국인등록증, 여권 인식을 지원합니다.
응답 바디 하위의 객체에 대해서는 하단의 "공통 객체 정보"를 참고해주시기 바랍니다.
1. 응답 바디 필드
필드명 | 유형 | 설명 |
---|---|---|
uid | string | API의 유효성 검사를 위해 제공되는 고유 ID로, 유효성 검사 요청을 추적하는 데 사용 |
name | string | 요청 바디의 images.name에 입력한 이미지명 |
inferResult | string | 이미지 인식 결과SUCCESS : 이미지 인식 성공FAILURE : 이미지 인식 실패ERROR : 이미지 인식 처리예외 |
message | string | 이미지 인식 성공 시 SUCCESS 표시이미지 인식 실패 시 오류 메시지 표시 |
idCard | json object | idCard 객체 참조 |
passport | json object | passport 객체 참조 |
validationResult | json object | 유효성 검사 결과 |
validationResult.result | string | 유효성 검사 결과 코드 NO_REQUESTED : 검증 작업을 요청하지 않음UNCHECKED : 동작 응답이 확인되지 않거나 응답 미수락ERROR : 검증 실행에 오류 발생 VALID : 검증 결과가 유효함 INVALID : 검증 결과가 유효하지 않음 ※ UNCHECKED ,ERROR ,INVALID 는 유효성 검사 실패로 표시됨 |
validationResult.message | string | Validation 세부 메시지로 항상 응답되는 값은 아님 |
convertedImageInfo | json object | 이미지 포맷이 pdf 또는 tiff 인 경우 응답좌값은 이미지로 변환된 호출 파일을 기준으로 함 |
convertedImageInfo.width | integer | 변환 이미지 가로 길이 |
convertedImageInfo.height | integer | 변환 이미지 세로 길이 |
convertedImageInfo.pageIndex | integer | pdf 또는 tiff 의 페이지 인덱스 |
2. idCard 객체 필드
필드명 | 유형 | 설명 |
---|---|---|
meta | json object | 메타 정보 |
meta.estimatedLanguage | string | OCR에서 추정한 언어 ( en : 영어, ja : 일본어, ko : 한국어) |
result | json object | 인식 결과 객체 |
result.isConfident | boolean | 신뢰성 자격 요건을 반영하는 지표 각 ID 유형에 필요한 세부 정보가 있으면 true 로 출력되고, 그렇지 않으면 false 로 출력됨 |
result.IDType | string | 신분증 유형 반환 값은 "신분증", "운전면허증", "여권", "알 수 없음" 중 하나임 |
result.rois | BoundingPoly[] | 객체 테두리 위치 정보 |
result.ic | json object | 주민등록증 정보 |
result.ic.name | StringObject[] | 이름(한국어) |
result.ic.personalNum | StringObject[] | 주민등록번호 |
result.ic.address | StringObject[] | 주소 |
result.ic.issueDate | DateObject[] | 발급 일자 |
result.ic.authority | StringObject[] | 발급 기관 |
result.dl | json object | 운전면허증 정보 |
result.dl.type | BaseObject[] | 면허 유형 |
result.dl.num | StringObject[] | 면허 번호 |
result.dl.name | StringObject[] | 이름(한국어) |
result.dl.personalNum | StringObject[] | 주민등록번호 |
result.dl.address | StringObject[] | 주소 |
result.dl.renewStartDate | DateObject[] | 갱신기간 시작일 |
result.dl.renewEndDate | DateObject[] | 갱신기간 종료일 |
result.dl.condition | StringObject[] | 면허 조건 |
result.dl.code | StringObject[] | 면허 코드 |
result.dl.organDonation | BaseObject[] | 장기 및 조직 기증 등록 |
result.dl.issueDate | DateObject[] | 발급 일자 |
result.dl.authority | StringObject[] | 발급 기관 |
result.pp | json object | 여권 정보 |
result.pp.type | StringObject[] | 여권 유형 |
result.pp.issueCountry | BaseObject[] | 발급 국가 |
result.pp.num | StringObject[] | 여권 번호 |
result.pp.surName | StringObject[] | 성 |
result.pp.givenName | StringObject[] | 이름 |
result.pp.nationality | StringObject[] | 국적 |
result.pp.birthDate | DateObject[] | 생년월일 |
result.pp.personalNum | StringObject[] | 주민등록번호 |
result.pp.sex | StringObject[] | 성별 |
result.pp.issueDate | DateObject[] | 발급 일자 |
result.pp.expireDate | DateObject[] | 만료 일자 |
result.pp.authority | BaseObject[] | 발행 기관 |
result.pp.fullNameKor | StringObject[] | 이름(한국어) |
result.pp.MRZ1 | StringObject[] | 기계판독영역(Machine Readable Zone, MRZ) 1 |
result.pp.MRZ2 | StringObject[] | 기계판독영역(Machine Readable Zone, MRZ) 2 |
result.ac | json object | 외국인 등록증 정보 |
result.ac.alienRegNum | StringObject[] | 외국인 등록번호 |
result.ac.sex | StringObject[] | 성별 |
result.ac.name | StringObject[] | 이름 |
result.ac.nationality | StringObject[] | 국적 |
result.ac.visaType | StringObject[] | 비자 유형 |
result.ac.issueDate | DateObject[] | 발급 일자 |
result.ac.authority | StringObject[] | 발급 기관 |
result.ac.authorityEng | StringObject[] | 발급 기관(영문) |
result.ac.alienRegNumEtc | StringObject[] | 외국인 등록번호 등 |
3. passport 객체 필드
필드명 | 유형 | 설명 |
---|---|---|
passportResult | json object | 인식 결과 |
passportResult.documentClassCode | MrzString | 문서 코드. "여권" |
passportResult.issuingStateCode | MrzString | 발급 국가 |
passportResult.firstName | MrzString | 이름 |
passportResult.lastName1 | MrzString | 첫번째 성 |
passportResult.lastName2 | MrzString | 두번째 성 |
passportResult.documentNumber | MrzString | 여권번호 |
passportResult.checkDigitForDocumentNumber | MrzString | 문서 번호에 대한 확인 숫자 |
passportResult.nationality | MrzString | 국적 |
passportResult.dateOfBirth | MrzString | 생년월일 |
passportResult.age | MrzInt | 나이 |
passportResult.checkDigitForDateOfBirth | MrzString | 생년월일에 대한 확인 숫자 |
passportResult.gender | MrzString | 성별 |
passportResult.dateOfExpiry | MrzString | 만료일자 |
passportResult.checkDigitForDateOfExpiry | MrzString | 만료일자에 대한 확인 숫자 |
passportResult.personalNumber | MrzString | 주민등록번호 |
passportResult.checkDigitForPersonalNumber | MrzString | 주민등록번호에 대한 확인 숫자 |
passportResult.finalCheckDigit | MrzString | 최종 확인 숫자 |
passportResult.mrzType | MrzString | 기계판독영역(Machine Readable Zone, MRZ) 타입 |
passportResult.mrzLines | MrzString | 기계판독영역(Machine Readable Zone, MRZ) 텍스트 |
passportResult.isExpired | Mrzbool | 만료됨 |
명함 예시
명함 응답 바디
명함 OCR의 응답 바디를 설명합니다.
응답 바디 하위의 객체에 대해서는 하단의 "공통 객체 정보"를 참고해주시기 바랍니다.
1. 응답 바디 필드
필드명 | 유형 | 설명 |
---|---|---|
uid | string | API의 유효성 검사를 위해 제공되는 고유 ID로, 유효성 검사 요청을 추적하는 데 사용 |
name | string | 요청 바디의 images.name에 입력한 이미지명 |
inferResult | string | 이미지 인식 결과SUCCESS : 이미지 인식 성공FAILURE : 이미지 인식 실패ERROR : 이미지 인식 처리예외 |
message | string | 이미지 인식 성공 시 SUCCESS 표시이미지 인식 실패 시 오류 메시지 표시 |
nameCard | json object | nameCard 객체 참조 |
validationResult | json object | 유효성 검사 결과 |
validationResult.result | string | 유효성 검사 결과 코드 NO_REQUESTED : 검증 작업을 요청하지 않음UNCHECKED : 동작 응답이 확인되지 않거나 응답 미수락ERROR : 검증 실행에 오류 발생 VALID : 검증 결과가 유효함 INVALID : 검증 결과가 유효하지 않음 ※ UNCHECKED ,ERROR ,INVALID 는 유효성 검사 실패로 표시됨 |
validationResult.message | string | Validation 세부 메시지로 항상 응답되는 값은 아님 |
convertedImageInfo | json object | 이미지 포맷이 pdf 또는 tiff 인 경우 응답좌표값은 이미지로 변환된 호출 파일을 기준으로 함 |
convertedImageInfo.width | integer | 변환 이미지 가로 길이 |
convertedImageInfo.height | integer | 변환 이미지 세로 길이 |
convertedImageInfo.pageIndex | integer | pdf 또는 tiff 의 페이지 인덱스 |
2. nameCard 객체 필드
필드명 | 유형 | 설명 |
---|---|---|
meta | json object | 메타 정보 |
meta.estimatedLanguage | string | OCR에서 추정한 언어 (en : 영어, ja : 일본어, ko : 한국어) |
result | json object | 인식 결과 객체 |
result.name | StringObject[] | 이름 정보 |
result.nameFurigana | StringObject[] | 후리가나 이름 정보(언어가 ja 일 때만 응답) |
result.company | StringObject[] | 회사 정보 |
result.department | StringObject[] | 부서 정보 |
result.address | StringObject[] | 주소 정보 |
result.position | StringObject[] | 직급 정보 |
result.mobile | TelObject[] | 휴대폰 정보 |
result.tel | TelObject[] | 전화 정보 |
result.fax | TelObject[] | 팩스 정보 |
result.email | StringObject[] | 이메일 정보 |
result.homepage | StringObject[] | 홈페이지 정보 |
의료비영수증 예시
의료비영수증 응답 바디
의료비영수증 OCR의 응답 바디를 설명합니다.
응답 바디 하위의 객체에 대해서는 하단의 "공통 객체 정보"를 참고해주시기 바랍니다.
1. 응답 바디 필드
필드명 | 유형 | 설명 |
---|---|---|
uid | string | API의 유효성 검사를 위해 제공되는 고유 ID로, 유효성 검사 요청을 추적하는 데 사용 |
name | string | 요청 바디의 images.name에 입력한 이미지명 |
inferResult | string | 이미지 인식 결과SUCCESS : 이미지 인식 성공FAILURE : 이미지 인식 실패ERROR : 이미지 인식 처리예외 |
message | string | 이미지 인식 성공 시 SUCCESS 표시이미지 인식 실패 시 오류 메시지 표시 |
medicalReceipt | json object | medicalReceipt 객체 참조 |
validationResult | json object | 유효성 검사 결과 |
validationResult.result | string | 유효성 검사 결과 코드 NO_REQUESTED : 검증 작업을 요청하지 않음UNCHECKED : 동작 응답이 확인되지 않거나 응답 미수락ERROR : 검증 실행에 오류 발생 VALID : 검증 결과가 유효함 INVALID : 검증 결과가 유효하지 않음 ※ UNCHECKED ,ERROR ,INVALID 는 유효성 검사 실패로 표시됨 |
validationResult.message | string | Validation 세부 메시지로 항상 응답되는 값은 아님 |
convertedImageInfo | json object | 이미지 포맷이 pdf 또는 tiff 인 경우 응답좌표값은 이미지로 변환된 호출 파일을 기준으로 함 |
convertedImageInfo.width | integer | 변환 이미지 가로 길이 |
convertedImageInfo.height | integer | 변환 이미지 세로 길이 |
convertedImageInfo.pageIndex | integer | pdf 또는 tiff 의 페이지 인덱스 |
2. medicalReceipt 객체 필드
필드명 | 유형 | 설명 |
---|---|---|
checksum | json object | Checksum results |
checksum.sumPaidByPatient | Checksum | 본인부담금 합계 |
checksum.sumPaidByInsurer | Checksum | 공단부담금 합계 |
checksum.sumPaidByPatientFull | Checksum | 전액본인부담금 합계 |
checksum.sumTreatmentCostEtc | Checksum | 선택진료료 합계 |
checksum.sumTreatmentCostEtc | Checksum | 선택진료료이외 합계 |
checksum.totalAmount | Checksum | 총액확인 |
checksum.totalPaid | Checksum | 환자부담액 |
result | MedicalReceiptResult[] | List of value cell results |
2. medicalReceiptResult 객체 필드
필드명 | 유형 | 설명 |
---|---|---|
id | int | 셀 ID |
keyTexts | string | “|“ 로 분류된 문자 텍스트 |
valueText | string | 응답 셀의 값 |
confidence | float | 응답 셀의 신뢰도 |
keyCells | KeyCell[] | 키 값 리스트 |
valueCell | ValueCell | 응답셀 객체 |
공통 객체 정보
Document OCR 각 상품의 응답 바디는 아래의 공통 하위 객체를 응답 전문에 반환합니다.
본 챕터에서는 공통 하위 객체에 대한 세부사항을 설명합니다.
field 객체 필드
필드명 | 유형 | 설명 |
---|---|---|
text | string | 인식된 텍스트 |
confidence | float | 인식한 텍스트에 대한 신뢰도를 0~1 사이로 나타내며 값이 클수록 정확도가 높음 |
boundingPoly | BoundingPoly object | boundingPoly 객체 참조 |
subBoundingPolys | BoundingPoly[] | boundingPoly 객체 참조 |
boundingPoly 객체 필드
필드명 | 유형 | 설명 |
---|---|---|
vertices | vertices object | vertices 객체 참조 |
vertices 객체 필드
필드명 | 유형 | 설명 |
---|---|---|
x | float | x축 좌표값 |
y | float | y축 좌표값 |
baseObject 객체 필드
필드명 | 유형 | 설명 |
---|---|---|
text | string | 인식된 텍스트 |
boundingPolys | BoundingPoly[] | boundingPoly 객체 참조 |
keyText | string | 인식된 텍스트와 관련된 키 값 |
confidenceScore | float | 인식한 텍스트에 대한 신뢰도를 0~1 사이로 나타내며 값이 클수록 정확도가 높음 |
dateObject 객체 필드
필드명 | 유형 | 설명 |
---|---|---|
text | string | 인식된 텍스트 |
formatted | json object | 인식된 텍스트에 대한 추가 정보 |
formatted.year | string | 연. 네 자리 숫자로 연도를 나타냄. 빈 문자열인 경우를 제외하면 ISO 8601 표준 포맷을 따름. |
formatted.month | string | 월. 두 자리 숫자로 월을 나타냄. 빈 문자열인 경우를 제외하면 ISO 8601 표준 포맷을 따름. |
formatted.day | string | 일. 두 자리 숫자로 날짜를 나타냄. 빈 문자열인 경우를 제외하면 ISO 8601 표준 포맷을 따름. |
boundingPolys | BoundingPoly[] | boundingPoly 객체 참조 |
maskingPolys | BoundingPoly[] | 개인정보 마스킹 |
keyText | string | 인식된 텍스트와 관련된 키 값 |
confidenceScore | float | 인식한 텍스트에 대한 신뢰도를 0~1 사이로 나타내며 값이 클수록 정확도가 높음 |
timeObject 객체 필드
필드명 | 유형 | 설명 |
---|---|---|
text | string | 인식된 텍스트 |
formatted | json object | 인식된 텍스트에 대한 추가 정보 |
formatted.hour | string | 시. 두 자리 숫자로 시를 나타냄. 빈 문자열인 경우를 제외하면 ISO 8601 표준 포맷을 따름. |
formatted.minute | string | 분. 두 자리 숫자로 분을 나타냄. 빈 문자열인 경우를 제외하면 ISO 8601 표준 포맷을 따름. |
formatted.second | string | 초. 두 자리 숫자로 초를 나타냄. 빈 문자열인 경우를 제외하면 ISO 8601 표준 포맷을 따름. |
boundingPolys | BoundingPoly[] | boundingPoly 객체 참조 |
maskingPolys | BoundingPoly[] | 개인정보 마스킹 |
keyText | string | 인식된 텍스트와 관련된 키 값 |
confidenceScore | float | 인식한 텍스트에 대한 신뢰도를 0~1 사이로 나타내며 값이 클수록 정확도가 높음 |
TelObject 객체 필드
필드명 | 유형 | 설명 |
---|---|---|
text | string | 인식된 텍스트 |
formatted | json object | 인식된 텍스트에 대한 추가 정보 |
formatted.value | string | 전화번호 유형을 나타내는 서식 텍스트. 주로 숫자 문자열 형태로 표시되지만 전화 식별자(+)를 포함할 수 있음. 인식 세분화에 실패하면 빈 문자열일 수 있음. |
boundingPolys | BoundingPoly[] | boundingPoly 객체 참조 |
keyText | string | 인식된 텍스트와 관련된 키 값 |
confidenceScore | float | 인식한 텍스트에 대한 신뢰도를 0~1 사이로 나타내며 값이 클수록 정확도가 높음 |
FloatObject 객체 필드
필드명 | 유형 | 설명 |
---|---|---|
text | string | 인식 텍스트 |
formatted | json object | 인식된 텍스트에 대한 추가 정보 |
formatted.value | string | 실수 유형을 나타내는 서식 있는 텍스트. 실수 문자열 유형. 품목의 개수와 가격을 설명하는 데 유용함. 인식 세분화에 실패하면 빈 문자열일 수 있음. |
boundingPolys | BoundingPoly[] | boundingPoly 객체 참조 |
keyText | string | 인식된 텍스트와 관련된 키 값 |
confidenceScore | float | 인식한 텍스트에 대한 신뢰도를 0~1 사이로 나타내며 값이 클수록 정확도가 높음 |
StringObject 객체 필드
필드명 | 유형 | 설명 |
---|---|---|
text | string | 인식 텍스트 |
formatted | json object | 인식된 텍스트에 대한 추가 정보 |
formatted.value | string | 정제된 텍스트. 정제 과정은 각 신분증의 분류에 따라 다름 빈 문자열일 수 있음. |
boundingPolys | BoundingPoly[] | boundingPoly 객체 참조 |
maskingPolys | BoundingPoly[] | 개인정보 |
keyText | string | 인식된 텍스트와 관련된 키 값 |
confidenceScore | float | 인식한 텍스트에 대한 신뢰도를 0~1 사이로 나타내며 값이 클수록 정확도가 높음 |
PoiObject 객체 필드
필드명 | 유형 | 설명 |
---|---|---|
gid | string | 고유 ID |
title | string | 상호명 |
phone | string | 전화번호 |
address | string | 주소 |
roadAddress | string | 도로명주소 |
biznum | string | 사업자번호 (아직 정식으로 지원되지 않아 null일 수 있으나 추후 추가될 수 있음) |
confidence | string | 신뢰도 (0~1 사이의 값을 가지며 값이 클수록 정확도가 높음) |
Checksum 객체 필드
필드명 | 유형 | 설명 |
---|---|---|
found | json object | 체크섬 필드의 발견 여부를 나타내는 구분자 |
foundValueIds | int[] | 발견된 값 셀의 ID 목록 |
foundValueSum | float | 발견된 값의 합 |
foundTotalIds | int[] | 발견된 전체 셀의 ID 목록 |
foundTotalSum | float | 발견된 전체 값의 합 |
difference | float | 값과 전체 셀의 차이 |
KeyCell 객체 필드
필드명 | 유형 | 설명 |
---|---|---|
boundingPoly | BoundingPoly | 셀 테두리 상자 좌표 |
depth | string | 발견된 키 셀의 깊이 |
formatted | string | 키 셀의 그라운딩 텍스트 |
group | string | 열/행별 키를 구분하기 위한 식별자 |
value | string | 키 셀의 그라운딩되지 않은 텍스트 |
ValueCell 객체 필드
필드명 | 유형 | 설명 |
---|---|---|
boundingPoly | BoundingPoly | 셀 테두리 상자 좌표 |
confidence | float | 값 셀 신뢰도 |
value | string | 값 셀의 텍스트 |
MrzString 객체 필드
필드명 | 유형 | 설명 |
---|---|---|
rawText | string | 원본 텍스트 |
refinedText | string | 정제된 텍스트 |
postprocessed | int32 | 정제 방식 |
Mrzbool 객체 필드
Field Name | Data Type | Description |
---|---|---|
rawText | string | 원본 텍스트 |
refinedText | bool | 정제된 텍스트 |
postprocessed | int32 | 정제 방식 |
MrzInt 객체 필드
Field Name | Data Type | Description |
---|---|---|
rawText | string | 원본 텍스트 |
refinedText | int | 정제된 텍스트 |
postprocessed | int32 | 정제 방식 |
API 예제
다음은 각 언어별 CLOVA OCR Document API 구현 예제입니다