ADR-DS-021_사용자 QR 확인

ADR-DS-021_사용자 QR 확인

## 1. 기본 정보

  • ADR ID: ADR-DS-021
  • 제목: 사용자 QR 보조 검증 (Partner Assisted Verification)
  • 상태: Accepted
  • 작성일: 2026-03-06
  • 작성자: YSY
  • 관련 ADR: ADR-DS-010, ADR-DS-020, ADR-U-020
  • Supersedes: N/A
  • Superseded By: N/A

2. 배경 (Context)

사용 확정은 사용자 액션으로 완료된다. 일부 업종에서는 파트너가 사후로 사용자 QR을 확인해 부정 사용을 줄일 필요가 있다. 이 단계는 상태 전이를 추가하지 않는 보조 검증이다.


3. 결정 (Decision)

  1. 상태 집합은 reserved, redeemed, expired, cancelled만 사용한다.
  2. verified 상태는 도입하지 않는다.
  3. 보조 검증 필드만 추가한다.
    • partner_verified (bool)
    • partner_verified_at (timestamp)
    • partner_verified_by_store_id (uuid)
  4. 보조 검증은 redeemed 이후에만 가능하다.
  5. 중복 검증 요청은 멱등 처리한다.

In Scope

  • 파트너 보조 검증 데이터와 API 규칙

Out of Scope

  • 제재/분쟁 처리 운영 절차

4. 경계 및 책임 (Boundaries)

  • Domain(본 ADR): 보조 검증 데이터 규칙
  • Tech: API idempotency, 감사 로그
  • Product/Operations: 분쟁 대응 프로세스

5. 단일 출처(SoT) 참조

  • 상태 전이 SoT: ADR-DS-010
  • 사용 확정 SoT: ADR-DS-020
  • UX SoT: ADR-U-020

6. 대안 (Alternatives Considered)

대안 A: verified 상태 추가

  • 장점: 단계 구분 명확
  • 단점: 상태 복잡도 증가
  • 미채택 이유: 핵심 흐름 단순성 훼손

대안 B: 보조 검증 자체 미도입

  • 장점: 구현 단순
  • 단점: 사후 분쟁 대응 약함
  • 미채택 이유: 운영 안전장치 부족

7. 결과 (Consequences)

긍정적 결과

  • 상태 모델을 유지하면서 운영 통제 수단 확보

부정적 결과

  • 로그/감사 데이터 관리 비용 증가

8. 영향 범위 (Impact)

  • DB: partner_verified* 필드
  • API: POST /verify-user-qr 보조 엔드포인트

9. 검증 및 운영 확인 (Validation)

  • 멱등성 테스트
  • 권한/스토어 범위 검증 테스트

10. 재검토 조건 (Revisit Conditions)

  • 중복/부정 사용 패턴 증가
  • 보조 검증 사용률 급증으로 기본 정책 승격 필요