Skip to main content

개요

이 문서는 라이브폼 모바일 여정에서 노출되는 에러 페이지를 유형별로 분류해 에러 코드, URL 경로, 사용자 메시지를 제공합니다. 최종 사용자가 만나는 에러 메시지에 대해 실제 라우팅 경로와 발생 조건을 정확하게 확인하고 업무나 고객 지원에 활용할 수 있습니다.
모든 에러 페이지는 다음의 4 유형으로 구분됩니다.
  1. /error-page/:errorType
  2. /error-page/token-*
  3. /face-retry/:faceErrorCode
  4. Error Boundary

에러 코드 카테고리 체계

에러 코드 형식: 접두사-숫자 (예: NF-10000). 숫자 자릿수는 카테고리마다 다릅니다.

에러와 검증 실패 구분

모든 화면이 ‘에러 페이지’로 보이지만, 발생 원인은 크게 세 가지로 나뉩니다. 아래 구분은 고객 지원·모니터링 시 ‘실제 장애’와 ‘정상 거절/설정 문제’를 빠르게 판별하는 데 사용합니다.

🔧 시스템 오류 (System Error)

ARGOS · 엔진 · 3rd party 측의 일시적 장애. 잠시 후 재시도하면 해결되는 경우가 대부분입니다.
  • SE-50000~SE-50015 (프로젝트 로드 · 토큰 확인 · 검증 API · 얼굴 인증 초기화 등 서버 오류)
  • SE-50020SE-50022 · SE-50030SE-50033 (라이브니스 · 얼굴 비교 · 정부 진위확인 엔진 서버 오류)
  • RT-60000 · RT-60001 (프론트엔드 런타임 예외)
  • QE-20000 (엔진 대기열 과부하)
  • QS-30000 (IP 체커 시스템 오류)
  • DE-30001 · DE-30002 · DE-30003 (기기 인증 초기화 · 응답 · 네트워크 오류)
  • LO-30001 · LO-30002 · LO-30004 · LO-99999 (OCR · 데이터 처리 · requestId 누락 · 알 수 없는 루프 오류)

🚫 검증 실패 · 차단 (Verification Rejected / Blocked)

제출 정보·행동·리스크를 기준으로 한 정상 판정. ARGOS가 의도대로 동작한 결과이며 장애가 아닙니다.
  • 위조 의심 (suspected-forgery), 얼굴 중복 (face_validation_error), 비정상 행동 (abnormal_action)
  • IP 리스크 (ipRisk_failCategory · distanceChecks_ipGeo · blackliskCountries · ipRisk_durationHours)
  • QS-10000 · QS-20000 (비정상 검증 거부 · 즉시 거부)
  • DE-20000 · DE-30000 · DE-40000 (기기 환경 차단 · 핑거프린트 이상 · 기기 중복)
  • TS-300*** · TS-600*** (Turnstile 챌린지 실패 — 봇·자동화 의심)
  • 제출·IP·이메일 상태 중복 (already_* · processed_* · ip_already_* · email_already_rejected)
  • 토큰 상태 (TK-10002 · TK-10003 · TK-10004 — 이미 승인·검토 중·거부)
  • 이미지 품질 미달 (LO-30005), 얼굴 재촬영 (face-retry)
  • 요청 한도·잠금 (ER-001 · ER-002 · rate_limit_exceeded · locked_out · traffic_overload)

⚙️ 요청 · 환경 · 설정 오류 (Request / Environment / Configuration)

고객사의 링크·파라미터·프로젝트 설정 문제이거나, 사용자 기기·브라우저·접근 방식 문제. 해당 설정/환경을 바로잡아야 해결됩니다.
  • 파라미터·옵션 오류 (PV-40000~PV-40018)
  • 경로 오류 (NF-10000 · NF-10001 · bad-path · page-not-found)
  • 암호화 전용 접근 (encrypted_only)
  • 미지원 브라우저·기기 (invalid-browser = RT-60002)
  • Turnstile 환경 문제 (TS-110500 · TS-110510 · TS-11060* · TS-11062* · TS-200010 · TS-200100)
  • 프로젝트 상태 (project-closed · period · submission-number-limit · service-blocked)
  • 토큰 누락·만료 (TK-10000 · TK-10001)
  • 필수 파라미터 누락 (LO-30003)
  • 세션 꼬임 (refresh · hash_problem)
  • 업로드 권한 차단 (not-allow-file-upload)
일부 코드는 상황에 따라 분류가 달라질 수 있습니다. 위 구분은 1차 트리아지 기준이며, 정확한 발생 조건은 아래 각 표의 ‘발생 상황’ 열을 확인하세요.

일반 에러 페이지 (/error-page/:errorType)

🔒 인증·권한 오류

📅 프로젝트 상태 오류

📤 제출 상태 오류

📧 이메일 관련 오류

🛡️ 보안·사기 탐지 오류

🌍 IP 리스크 오류

⏱️ Rate Limit · Lockout

ER — Rate limit · Lockout

아래 코드는 Rate limit·lockout과 연관된 API·상수 식별자(RATE_LIMIT_EXCEEDED, LOCKED_OUT)와 동일한 화면으로 연결됩니다. 위 Rate Limit · Lockout 표의 rate_limit_exceeded, locked_out 개발자 코드와 대응합니다.

📍 NF — Not Found

경로를 찾을 수 없을 때 발생하는 에러 코드입니다.

⚠️ QS — Quality Score

IP 조회 시 발생하는 에러 코드입니다.

📦 QE — Queueing Error

엔진 대기열 과부하 시 발생하는 에러 코드입니다.

🔧 PV — Parameter Validation

쿼리스트링 파라미터 누락, 잘못된 값, 옵션 충돌 시 발생하는 에러 코드입니다.

🖥️ SE — Server Error

API 호출 실패 또는 서버 에러 시 발생하는 에러 코드입니다.
위 엔진 오류 중 신분증 라이브니스(SE-50020) · 셀피 Passive 라이브니스(SE-50021) · 한국 정부 진위확인(SE-50030~50033) 은 대시보드 설정에서 Error 대신 Warning 으로 처리하도록 지정할 수 있습니다. Warning 처리 시 에러 페이지로 이동하지 않고 후속 KYC 프로세스를 이어가며, 해당 Warning 은 Custom Policy 트리거로 활용할 수 있습니다. (얼굴 비교(SE-50022)는 Error 전용입니다.) Warning 으로 전환된 경우의 WarningOccurred 값과 warning[] 필드 매핑은 Warning 코드와 필드 문서를 참고하세요.

🔁 LO — Loop Error (/error-page/loop/:params)

신분증 촬영 및 단계별 처리 중 같은 오류가 3회 누적되면, 무한 재시도를 방지하기 위해 전용 루프 에러 페이지로 이동합니다(replace). 3회 미만에서는 재촬영 안내 또는 알림으로 처리됩니다. URL 의 params 값에 따라 아래로 매핑되며, 매핑되지 않은 경우 Fallback 페이지로 이동합니다.

⚡ RT — Runtime Error

프론트엔드 런타임 에러 시 발생하는 에러 코드입니다.

📱 DE — Device Error

Device Info 사전 검증(진입) 단계와 신분증·셀피 촬영 단계에서 차단된 경우 발생하는 에러 코드입니다. 오류 페이지에는 에러 코드와 정의가 함께 표시되어 고객사가 차단 사유를 즉시 식별할 수 있습니다.
DE-51xxx(신분증 촬영)·DE-52xxx(셀피 촬영)는 2026-07 업데이트에서 추가된 촬영 단계 지점 간 검증 차단 코드입니다. 진입 단계 코드와 달리 전용 URL·안내 메시지가 별도로 정의되어 있지 않으며, 차단 시 해당 코드가 사용자에게 표시됩니다. 같은 값이 Device Verification 상세의 Internal Code 필드에도 기록됩니다.
Device Info 탭에서 Device Verification / Fingerprint option / Device Duplicate Check 설정 방법은 인증강화 및 위조방지 — Device Info를 참고하세요.

🤖 TS — Turnstile

봇·자동화 차단을 위한 Cloudflare Turnstile 챌린지가 실패했을 때 발생하는 에러 코드입니다. 번호는 Cloudflare가 반환하는 클라이언트 측 오류 코드를 그대로 사용하며, 앞에 TS- 접두사만 붙습니다. 표의 *** · *는 Cloudflare가 세부 상황에 따라 채우는 자리로, 실제 화면에는 TS-600010처럼 전체 번호가 표시됩니다.
사용자에게 표시되는 문구는 모든 TS 코드가 동일합니다화면에는 위 문구와 함께 실제 에러 코드가 표시되므로, 정확한 원인은 아래 표에서 코드로 확인합니다.
Turnstile 검증은 Session Journey에서 CHECK_TURNSTILE(FE 요청) · TURNSTILE_TOKEN_CHECK(BE 검증, 사용자 영향 BLOCKED) 이벤트로 기록됩니다. 자세한 내용은 세션 여정 — 이벤트 레퍼런스를 참고하세요.
TS-300*** · TS-600***의 세부 하위 코드와 최신 진단 정보는 Cloudflare Turnstile 클라이언트 측 오류 코드 문서에서 확인할 수 있습니다.

🔵 토큰 에러 페이지 (/error-page/token-*)

토큰 검증 실패 시 발생하는 에러 페이지입니다. 2026-04 업데이트부터 TK- 접두사의 에러 코드가 부여되어, 오류 페이지에 코드와 정의가 함께 표시됩니다.

🔄 얼굴 인증 재시도 (/face-retry/:faceErrorCode)

❌ 런타임 에러 (Error Boundary)

각 테이블을 기반으로 고객 지원, 모니터링 알림, QA 테스트 케이스를 매핑하면 동일한 화면을 바라보는 모든 이해관계자가 빠르게 상황을 파악할 수 있습니다.