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

# 은행 계좌 인증 방식: 로그인 또는 계좌 확인

> Didit 은행 인증의 로그인 및 계좌 확인 방식이 검증하고 반환하는 데이터와 국가별 선택 및 우선순위 지정 방법을 확인하세요.

Bank Verification은 해당 은행 계좌가 워크플로의 이전 단계에서 인증한 개인 또는 기업의 소유인지 확인합니다. 이는 두 가지 방법을 제공하는 하나의 워크플로 단계입니다. 사용자가 은행에 로그인하거나, 계좌 정보를 입력하여 은행이 해당 계좌의 명의를 확인합니다. 각 국가에서 제공할 방법과 우선적으로 표시할 방법을 직접 선택할 수 있습니다.

> [!NOTE]
>
> 프로덕션 환경에서 은행 로그인은 나이지리아와 뉴질랜드에서 지원되며, 계좌 확인은 나이지리아, 가나, 케냐에서 지원됩니다.
> 지원 국가는 계속해서 확대되고 있으며, 각 국가에서 현재 제공하는 방법은 항상 [Bank Verification 요금](https://docs.didit.me/ko/getting-started/bank-verification-pricing.md)에서 확인할 수 있습니다.

> [!NOTE]
>
> Bank Verification은 계좌 예금주를 **다른 단계**에서 확인된 신원과 비교하므로, 단독으로 신원을 증명할 수는 없습니다. 이 단계 앞에 신분증 인증, 데이터베이스 검증, 설문지 또는 `expected_details`를 배치하십시오. 확인 대상이 되는 이름을 사용자가 직접 입력하는 일은 없으며, Didit은 항상 세션에서 이미 인증된 이름과 비교합니다.

## 두 가지 방법

| | 은행 로그인 | 계좌 확인 |
| - | - | - |
| 방법 값 | `open_banking` | `account_lookup` |
| 사용자 수행 작업 | 은행에 로그인하고 계좌를 공유합니다. | IBAN, sort code 및 계좌번호, CLABE 등의 계좌 정보를 입력합니다. 로그인은 필요하지 않습니다. |
| 증명 대상 | 계좌에 대한 통제권 및 은행이 반환한 예금주. | 해당 계좌에 대한 은행의 예금주 성명이 인증된 성명과 일치하는지 여부. |
| 추가 데이터 | 단계에서 요청한 경우 잔액, 거래 내역, 소득. | 없음: 소유권만 확인. |
| 일반적인 용도 | 온보딩, 대출, 지불 능력 평가, 고위험 고객. | 지급 및 출금, 마찰을 최소화한 온보딩, 은행 로그인이 지원되지 않는 국가. |

두 방법 모두 예금주 일치 여부, 은행이 반환한 예금주, 마스킹된 계좌 등 동일한 종류의 결과를 제공합니다. 지원되는 방법은 국가마다 다르며, 한 국가는 둘 중 하나만 제공하거나 둘 다 제공할 수도 있고, 둘 다 제공하는 경우 순서를 지정할 수도 있습니다. 계좌 형식, 결과 및 샌드박스 값에 대해서는 [계좌 확인](https://docs.didit.me/ko/core-technology/bank-verification/account-check.md)을 참조하십시오.

명세서 업로드와 소액 입금은 두 방법 후의 대체 수단으로 유지되며(`bank_statement_enabled`, `bank_microdeposits_enabled`), 사용자는 언제든지 은행 인증 없이 진행할 수 있습니다. 소액 입금은 동일한 세션에서 유료 은행 로그인 또는 계좌 확인이 수행된 후에만 추가 비용 없이 제공됩니다. 명세서 업로드 역시 해당 방법 후에 포함되며, 어떤 국가에서든 사전에 은행 인증 시도가 없었더라도 제공될 수 있습니다. 자세한 내용은 [사용자가 은행을 인증할 수 없는 경우](https://docs.didit.me/ko/core-technology/bank-verification/fallbacks.md)를 참조하십시오.

## 사용자에게 표시되는 화면

각 국가에서 사용자는 해당 국가에서 제공하는 첫 번째 방법부터 시작합니다. 두 번째 방법은 백업 역할을 합니다.

* **은행 로그인 우선:** 은행 선택 화면이 열립니다. 마지막 행인 **계좌 정보 입력**을 누르면 계좌 확인이 시작됩니다. 은행 로그인이 실패하면 **다른 인증 방법** 아래에 동일한 행이 다시 표시됩니다.
* **계좌 확인 우선:** 계좌 입력 양식이 열리고, 그 아래에 **대신 은행에 로그인** 링크가 표시됩니다.
* **한 가지 방법만 제공:** 사용자에게 해당 방법만 표시됩니다.

계좌 확인을 제공하는 국가에서는 은행 서비스가 저하되거나 중단되어 은행 로그인으로 현재 연결할 수 없는 은행에 대해서도 계좌 확인이 백업 역할을 수행합니다. 사용 가능한 계좌 확인 횟수가 남아 있는 한, 동의를 요청하기 전에 계좌 입력 양식으로 이동합니다. 특정 국가에서 지원하는 라우트가 없는 방법은 제외되므로, 사용자는 실행할 수 없는 방법을 보지 않게 됩니다. 라우트가 전혀 지원되지 않는 국가는 대체 수단과 **은행 없이 계속하기**만 제공합니다.

## 국가별 방법 선택

### 단계 순서

`bank_method_order`는 자체 설정을 지정하지 않은 모든 국가에 대해 해당 단계가 제공할 방법과 그 순서를 설정합니다. `open_banking`, `account_lookup` 또는 둘 다를 나열하며, 먼저 표시할 방법이 첫 번째로 옵니다.

```json theme={null}
{
  "bank_method_order": ["open_banking", "account_lookup"]
}
```

`bank_method_order`를 전달하지 않고 저장하면 기본값인 `["open_banking", "account_lookup"]`으로 설정되어 은행 로그인이 우선 표시되고 계좌 확인이 백업으로 제공됩니다. 빈 목록을 전달하면 `Choose a method: bank sign-in, account check, or both.` 오류와 함께 저장이 거부됩니다.

단계 순서는 기본값입니다. 한 방법에 대해 지원하는 라우트가 없는 국가에서는 해당 방법이 제외되고 나머지 방법만 제공됩니다. 라우트가 지원되지만 순서 설정으로 인해 사용 가능한 방법이 전혀 남지 않는 국가는 저장 시 거부됩니다(예: `Choose a method: bank sign-in, account check, or both. ARE offers account check.`). 라우트가 전혀 지원되지 않는 국가는 유지되며 대체 수단만 제공됩니다. 자세한 내용은 [지원되는 은행 라우트가 없는 국가](https://docs.didit.me/ko/core-technology/bank-verification/fallbacks.md#은행-경로가-지원되지-않는-국가)를 참조하십시오.

### 국가별 개별 순서

`bank_countries` 내 특정 국가의 `methods`는 해당 국가에 대한 단계 순서를 재정의합니다. 사용자는 첫 번째 방법부터 시작하며, 두 번째 방법은 백업으로 제공됩니다.

```json theme={null}
{
  "bank_method_order": ["open_banking", "account_lookup"],
  "bank_countries": {
    "GBR": { "enabled": true, "institutions": "all" },
    "NOR": {
      "enabled": true,
      "institutions": "all",
      "methods": ["open_banking"]
    },
    "MEX": {
      "enabled": true,
      "institutions": "all",
      "methods": ["account_lookup", "open_banking"]
    }
  }
}
```

여기서 영국은 단계 순서를 따르고, 노르웨이는 은행 로그인만 제공하며, 멕시코는 계좌 확인으로 시작하고 은행 로그인을 백업으로 제공합니다. `methods`가 `null`로 설정되었거나 해당 키가 없는 국가는 단계 순서를 따릅니다. 활성화된 국가에서 다음과 같은 경우 `bank_countries.<ISO3>` 아래에서 저장이 거부됩니다.

* 라우트가 지원되지 않는 국가이더라도 `methods`를 빈 목록으로 설정한 경우
* 해당 국가에서 지원하는 라우트가 없는 방법을 지정한 경우(예: `Account check is not available in NOR.`)

라우트가 전혀 지원되지 않는 국가는 `methods`를 생략하거나 `null`로 설정하며, 대체 수단만 제공합니다. 자세한 내용은 [지원되는 은행 라우트가 없는 국가](https://docs.didit.me/ko/core-technology/bank-verification/fallbacks.md#은행-경로가-지원되지-않는-국가)를 참조하십시오.

### 콘솔에서 설정하기

Bank Verification 단계에서 **국가 및 방법**은 각 국가에서 은행 로그인과 계좌 확인이 제공하는 내용과 어떤 방법이 우선하는지 나열합니다. 사전 설정을 사용하면 모든 국가를 한 번에 채울 수 있습니다.

| 사전 설정 | 순서 |
| - | - |
| 은행 로그인, 계좌 확인을 백업으로 사용 (기본값) | `["open_banking", "account_lookup"]` |
| 은행 로그인만 사용 | `["open_banking"]` |
| 계좌 확인만 사용 | `["account_lookup"]` |
| 계좌 확인, 은행 로그인을 백업으로 사용 | `["account_lookup", "open_banking"]` |

사전 설정을 적용해도 국가에 아무런 방법도 남지 않는 상태는 발생하지 않습니다. 두 방법 중 하나만 지원하는 국가에서는 해당 방법이 활성 상태로 유지됩니다.

## 금융 데이터에는 은행 로그인 필요

은행 로그인만이 잔액, 거래 내역 및 소득을 조회할 수 있습니다. 단계에서 `bank_scopes`로 해당 데이터를 요청하고 특정 국가에서 계좌 확인을 제공하는 경우, 계좌 확인을 통해 인증한 사용자는 해당 데이터 없이 통과됩니다. 단계가 실패하는 것은 아니며, 수집되지 않은 항목은 결과의 `financial_data.not_collected`에 나열됩니다.

```json theme={null}
"financial_data": {
  "balances": null,
  "transactions": null,
  "income": null,
  "categorization": null,
  "not_collected": ["balances", "transactions"]
}
```

해당 방법으로 단계에서 요청한 모든 항목을 수집한 경우 `not_collected`는 빈 목록이 됩니다. 데이터 수집이 필수적인 경우, 해당 데이터가 필요한 국가에서는 은행 로그인만 제공하십시오.

## 계좌 확인 설정

다음 키는 계좌 확인에만 적용됩니다. 은행 로그인에는 자체 설정이 유지됩니다.

| 설정 필드 | 효과 |
| - | - |
| `bank_account_check_accept_close_match` | 켜짐(기본값): 은행이 `bank_partial_match_floor`와 `bank_name_match_threshold` 사이로 점수를 매긴 이름을 유사 일치로 처리합니다. `bank_suggest_holder_name`이 켜져 있으면 사용자가 은행에 등록된 이름을 확인하고, `bank_partial_match_action`에 따라 결정됩니다. 꺼짐: 해당 유사 일치는 불일치(`OWNER_NAME_MISMATCH`)로 처리되며 `bank_no_match_action`에 따라 결정되고 시도 횟수를 소진합니다. |
| `bank_account_check_max_attempts` | 사용자에게 부여되는 계좌 확인 횟수로, `1`\~`5`회이며 설정하지 않은 경우 `3`회입니다. 은행이 응답하는 확인을 위해 계좌 정보를 입력할 수 있는 횟수를 의미합니다. 입력한 정보가 거부된 계좌나 은행이 응답하지 못한 확인은 횟수를 소진하지 않습니다. |

시도 횟수는 방법별로 계산됩니다. `bank_max_attempts`는 은행 로그인 시도 횟수를 계산하며, 소액 입금 또는 명세서 업로드 시에도 이 횟수 중 하나가 차감됩니다. `bank_account_check_max_attempts`는 계좌 확인 횟수를 계산합니다. 명세서 업로드를 포함하여 사용자에게 계속 제공되는 모든 인증 방식이 성공적인 연결 없이 시도 횟수를 모두 소진하면 단계는 `bank_attempts_exhausted_action`에 따라 종료됩니다. 자세한 내용은 [명세서 업로드](https://docs.didit.me/ko/core-technology/bank-verification/fallbacks.md#명세서-업로드)를 참고하십시오.

## 결과에서 인증 방법 확인

### 결정 및 webhook

각 은행 인증 단계는 [세션 결정](https://docs.didit.me/ko/sessions-api/retrieve-session.md#은행-인증)과 [`status.updated` webhook](https://docs.didit.me/ko/integration/webhooks#v3-복수형-배열-중요)의 `decision` 객체 내 `bank_verifications[]` 항목으로 표시됩니다. 해당 항목의 `method`는 계좌가 어떻게 인증되었는지를 나타냅니다.

| `method` | 표시 이름 |
| - | - |
| `open_banking` | 은행 로그인 |
| `account_lookup` | 계좌 확인 |
| `microdeposits` | 소액 입금 |
| `statement` | 명세서 업로드 |
| `none` | 은행 없이 계속 진행 |

`method`는 계좌가 평가될 때까지 `null`이며, 어떠한 시도도 평가되기 전에 사용자가 은행 없이 계속 진행한 경우 `none`이 됩니다. 자세한 내용은 [결과에서 확인하기](https://docs.didit.me/ko/core-technology/bank-verification/fallbacks.md#결과에서-확인하기)를 참고하십시오. 인증 방법을 구분하려면 `ownership.method`가 아닌 `method`를 확인하십시오. `ownership.method`는 `exact` 또는 `fuzzy`와 같이 점수를 생성한 이름 비교 방식을 나타냅니다.

```json theme={null}
{
  "bank_verifications": [
    {
      "node_id": "feature_bank_verification",
      "status": "Approved",
      "method": "account_lookup",
      "ownership": {
        "result": "match",
        "method": "exact"
      },
      "financial_data": {
        "balances": null,
        "transactions": null,
        "income": null,
        "categorization": null,
        "not_collected": []
      }
    }
  ]
}
```

이 예시에는 이 페이지에서 다루는 필드만 표시되어 있습니다. 전체 필드는 [API 참조](https://docs.didit.me/ko/sessions-api/retrieve-session.md)의 `SessionDecision` 스키마에서 확인할 수 있습니다.

### 워크플로 규칙

분기 및 커스텀 상태 규칙은 `bank.method`와 동일한 값을 읽으며, 규칙 빌더에는 **Bank Verification Method**로 표시되고 값은 **Bank Sign-in**, **Account Check**, **Micro-deposits**, **Statement Upload**, **Continued Without a Bank**입니다. 규칙은 인증 방법 값을 비교하며, 예를 들어 AML 스크리닝 단계 후 위험 점수가 높은 계좌 확인 건을 검토로 전달하는 분기 등에 활용됩니다.

```json theme={null}
{
  "id": "account_check_high_risk",
  "rules": [
    {
      "field": "bank.method",
      "operator": "equals",
      "value": "account_lookup"
    },
    {
      "field": "aml.risk_score",
      "operator": "greater_than",
      "value": 70
    }
  ],
  "logic": "and",
  "goto": "status_in_review"
}
```

### 세션 보고서

세션 PDF 보고서에서는 **인증 방법** 행에 해당 방법의 이름을 표기합니다.

## 인증 방법 도입 전에 저장된 노드

`bank_open_banking_enabled` 및 `bank_account_lookup_enabled`는 더 이상 사용되지 않습니다. `bank_method_order`가 도입되기 전에 저장된 노드는 이제 두 스위치에서 지정했던 순서대로 실행됩니다.

| `bank_open_banking_enabled` | `bank_account_lookup_enabled` | 노드 실행 순서 |
| - | - | - |
| 켜짐 또는 미설정 | 꺼짐 또는 미설정 | `["open_banking"]` |
| 켜짐 또는 미설정 | 켜짐 | `["open_banking", "account_lookup"]` |
| 꺼짐 | 켜짐 | `["account_lookup"]` |

은행 로그인과 함께 계좌 확인이 켜져 있었던 경우, 사용자는 이제 은행 서비스가 중단되었을 때뿐만 아니라 은행 선택 화면에서 **계좌 정보 입력**을 대체 수단으로 확인할 수 있습니다. 두 스위치가 모두 꺼져 있어 소액 입금 또는 명세서 업로드만 제공했던 노드는 그대로 유지되며, 이후 다시 저장할 때 두 방법 중 적어도 하나를 켜야 합니다.

한 릴리스 동안은 `bank_method_order`를 전달하지 않고 두 스위치 중 하나를 전달하는 저장이 발생하더라도 스위치를 기반으로 순서가 설정됩니다. 저장 시마다 어느 국가에서든 은행 로그인을 제공하는지 여부와 어느 국가에서든 계좌 확인을 제공하는지 여부에 따라 두 스위치 모두에 값이 다시 기록됩니다. 새로운 연동에서는 `bank_method_order` 및 `bank_countries.<ISO3>.methods`를 사용하십시오.

## 요금

각 방법은 국가별로 자체 가격에 따라 청구됩니다. 국가별 가격은 [은행 인증 요금](https://docs.didit.me/ko/getting-started/bank-verification-pricing.md)을 참고하십시오.

* **은행 로그인**에는 자체 가격이 적용되며, 잔액 및 거래 내역 추가 기능마다 각각의 요금이 추가됩니다.
* **계좌 확인**은 은행이 응답한 확인 건당 1회 청구됩니다. 여기에는 일치, 유사 일치, 불일치, 확인할 수 없는 계좌, 찾을 수 없는 계좌가 포함됩니다. 입력한 정보가 거부된 계좌는 청구되지 않습니다.

특정 국가에서 두 가지 방법을 모두 제공하는 경우, 세션 비용은 사용자가 이용한 방법에 따라 두 가격 중 하나가 될 수 있습니다. 명세서 업로드와 소액 입금은 유료 시도 후에 추가 비용 없이 포함됩니다. 사전에 은행 시도가 없었던 명세서 업로드는 \$0.20이며, 은행 없이 계속 진행하는 경우에는 요금이 청구되지 않습니다. 자세한 내용은 [요금](https://docs.didit.me/ko/core-technology/bank-verification/fallbacks.md#요금)을 참고하십시오. [계좌 확인 API](https://docs.didit.me/ko/standalone-apis/bank-account-check.md)를 사용하면 세션 없이도 백엔드에서 동일한 확인을 동일한 계좌 확인 가격으로 실행할 수 있습니다.

## 샌드박스에서 테스트

샌드박스 애플리케이션은 단계에서 설정한 순서에 따라 모든 국가에서 두 가지 방법을 모두 제공하며, 비용은 전혀 청구되지 않습니다. 기본 순서에서는 사용자가 은행 로그인부터 시작하며, **계좌 정보 입력**을 선택하여 계좌 확인을 실행할 수 있습니다. 계좌 확인부터 시작하려면 `bank_method_order`를 `["account_lookup", "open_banking"]`으로 설정하십시오. 계좌의 마지막 네 자리에 따라 계좌 확인의 응답이 결정됩니다. 자세한 내용은 [샌드박스에서 테스트](https://docs.didit.me/ko/core-technology/bank-verification/account-check.md#샌드박스에서-테스트하기)를 참고하십시오.

## 관련 문서

* [계좌 확인](https://docs.didit.me/ko/core-technology/bank-verification/account-check.md): 계좌 형식, 결과 및 샌드박스 값.
* [사용자가 은행을 인증할 수 없는 경우](https://docs.didit.me/ko/core-technology/bank-verification/fallbacks.md): 폴백, 은행 없이 계속하기 및 결과.
* [계좌 확인 API](https://docs.didit.me/ko/standalone-apis/bank-account-check.md): 세션 없이 백엔드에서 지급 계좌 확인.
* [은행 인증 설정 키](https://docs.didit.me/ko/management-api/workflows/feature-configs.md#은행-인증): 해당 단계의 모든 키.
* [샌드박스 테스트](https://docs.didit.me/ko/integration/sandbox-testing.md).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.