> ## Documentation Index
> Fetch the complete documentation index at: https://docs.xhuoapi.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# 은행 카드 3요소 검증 API 연동 설명

> Identity Authentication 集成指南 - XHuoAPI

본 문서는 은행 카드 3요소 검증 API 연동 설명을 소개하며, 이는 은행 카드 번호, 이름, 개설 증명서 번호 정보의 진위와 일관성을 검증하는 데 사용됩니다.

## 신청 절차

API를 사용하려면 먼저 [은행 카드 3요소 검증 API](https://api.xhuoapi.ai/documents/eb9c6677-68db-4549-a207-41f8a1084634) 해당 페이지에서 서비스를 신청해야 합니다. 페이지에 들어가면 "Acquire" 버튼을 클릭합니다, 아래 그림과 같이:

![](https://cdn.xhuoapi.ai/q6ytrc.png)

로그인 또는 등록이 되어 있지 않으면 자동으로 로그인 페이지로 이동하여 등록 및 로그인을 요청합니다. 로그인 및 등록 후에는 자동으로 현재 페이지로 돌아옵니다.

첫 신청 시 무료 한도가 제공되어 해당 API를 무료로 사용할 수 있습니다.

## 기본 사용

먼저 기본 사용 방식을 이해해야 합니다. 즉, 은행 카드의 카드 번호 정보를 입력하면 처리된 결과 이미지를 얻을 수 있습니다. 먼저 간단히 `bank_card` 필드를 전달해야 합니다. 이후 인터페이스에 해당 내용을 입력할 수 있습니다, 아래 그림과 같이:

<p>
  <img src="https://cdn.xhuoapi.ai/3kh6i2.png" width="500" className="m-auto" />
</p>

여기서 요청 헤더를 설정한 것을 볼 수 있습니다, 포함된 내용은 다음과 같습니다:

* `accept`: 어떤 형식의 응답 결과를 받고 싶은지, 여기서는 `application/json` 즉 JSON 형식으로 입력합니다.
* `authorization`: API 호출의 키, 신청 후 바로 드롭다운에서 선택할 수 있습니다.

또한 요청 본문을 설정했습니다, 포함된 내용은 다음과 같습니다:

* `bank_card`: 처리할 은행 카드 번호 정보, 필수 매개변수입니다.
* `id_card`: 개설 증명서 번호, 필수 매개변수입니다.
* `name`: 사용자의 이름, 필수 매개변수입니다.
* `cert_type`: 개설 증명서 유형, 개설 증명서와 일치해야 하며, 그렇지 않으면 검증할 수 없습니다.
* `encryption`: 선택 사항, 민감한 필드 암호화 매개변수(암호문 전송이 필요한 경우).

선택 후 오른쪽에 해당 코드가 생성된 것을 확인할 수 있습니다, 아래 그림과 같이:

<p>
  <img src="https://cdn.xhuoapi.ai/cpvguu.png" width="500" className="m-auto" />
</p>

"Try" 버튼을 클릭하면 테스트를 진행할 수 있습니다, 위 그림과 같이, 여기서 다음과 같은 결과를 얻었습니다:

```json theme={null}
{
  "result": "0",
  "description": "인증 통과"
}
```

반환 결과는 여러 필드로 구성되어 있으며, 설명은 다음과 같습니다:

* `result`, 인증 결과 코드, 요금 상황은 다음과 같습니다.
  * 요금 결과 코드:
    * 0: 인증 통과
    * -1: 인증 미통과
    * -4: 카드 소지자 정보 오류
    * -5: 카드 없는 결제 미개통
    * -6: 이 카드가 압수됨
    * -7: 유효하지 않은 카드 번호
    * -8: 이 카드에 해당 발급 은행 없음
    * -9: 해당 카드가 초기화되지 않았거나 휴면 카드
    * -10: 부정 카드, 카드 압수
    * -11: 이 카드가 분실 신고됨
    * -12: 해당 카드가 만료됨
    * -13: 제한된 카드
    * -14: 비밀번호 오류 횟수 초과
    * -15: 발급 은행이 이 거래를 지원하지 않음
  * 비요금 결과 코드:
    * -2: 이름 검증 미통과
    * -3: 은행 카드 번호 오류
    * -16: 검증 센터 서비스 바쁨
    * -17: 검증 횟수 초과, 다음 날 재시도
* `description`, 비즈니스 결과 설명.

이 은행 카드의 카드 번호, 이름, 개설 증명서 번호 정보의 진위와 일관성이 이미 통과된 것을 확인할 수 있습니다.

또한 해당 연동 코드를 생성하고 싶다면 직접 복사하여 생성할 수 있습니다, 예를 들어 CURL의 코드는 다음과 같습니다:

```shell theme={null}
curl -X POST 'https://api.xhuoapi.ai/v1/identity/bankcard/check-3e' \
-H 'accept: application/json' \
-H 'authorization: Bearer {token}' \
-H 'content-type: application/json' \
-d '{
  "name": "***",
  "bank_card": "***",
  "id_card": "***"
}'
```

Python의 연동 코드는 다음과 같습니다:

```python theme={null}
import requests

url = "https://api.xhuoapi.ai/v1/identity/bankcard/check-3e"

headers = {
    "accept": "application/json",
    "authorization": "Bearer {token}",
    "content-type": "application/json"
}

payload = {
    "name": "***",
    "bank_card": "***",
    "id_card": "***"
}

response = requests.post(url, json=payload, headers=headers)
print(response.text)
```

## 오류 처리

API를 호출할 때 오류가 발생하면 API는 해당 오류 코드와 정보를 반환합니다. 예를 들어:

* `400 token_mismatched`: 잘못된 요청, 누락되거나 잘못된 매개변수 때문일 수 있습니다.
* `400 api_not_implemented`: 잘못된 요청, 누락되거나 잘못된 매개변수 때문일 수 있습니다.
* `401 invalid_token`: 인증되지 않음, 잘못되었거나 누락된 인증 토큰.
* `429 too_many_requests`: 너무 많은 요청, 비율 한도를 초과했습니다.
* `500 api_error`: 내부 서버 오류, 서버에서 문제가 발생했습니다.

### 오류 응답 예시

```json theme={null}
{
  "success": false,
  "error": {
    "code": "api_error",
    "message": "fetch failed"
  },
  "trace_id": "2cf86e86-22a4-46e1-ac2f-032c0f2a4e89"
}
```

## 결론

본 문서를 통해 은행 카드 3요소 검증 API를 사용하여 은행 카드 번호, 이름, 개설 증명서 번호 정보의 진위와 일관성을 검증하는 방법을 이해하셨습니다. 본 문서가 귀하가 해당 API를 더 잘 연동하고 사용할 수 있도록 도움이 되기를 바랍니다. 질문이 있으시면 언제든지 기술 지원 팀에 문의해 주시기 바랍니다.
