ADR-DS-063_선결제 픽업 슬롯 운영 정책

ADR-DS-063_선결제 픽업 슬롯 운영 정책

## 1. 기본 정보

Conforms to: ADR-DS-000 v1 Effective from: ADR-DS-060+ If conflict: ADR-DS-000 wins. Deprecated terms in this scope: arrived, checkin/check_in.

  • ADR ID: ADR-DS-063

  • 제목: 선결제 픽업 슬롯 운영 정책

  • 상태: Accepted

  • 작성일: 2026-03-07

  • 작성자: YSY

  • 관련 ADR:

    • ADR-DS-060 (선결제 기능 도입)
    • ADR-DS-061 (결제 중 슬롯 임시 확보 정책)
    • ADR-DS-062 (PG 리다이렉트 결제 확인 정책)

2. 배경 (Context)

플랫폼은 시간 기반 슬롯 매칭 서비스이다.

기본 구조는 다음과 같다.

슬롯 발행
→ 슬롯 확보
→ 매장 방문
→ 사용

그러나 일부 업종에서는 준비가 필요한 픽업 서비스가 존재한다.

예:

치킨
카페 제조 음료
도시락
베이커리

이 업종은 다음 흐름을 가진다.

결제
→ 조리 시작
→ 픽업

따라서 결제 완료 이후 준비가 시작되는 운영 구조가 필요하다.


3. 결정 (Decision)

플랫폼은 선결제 기반 픽업 슬롯 운영 정책을 도입한다.

3.1 결제와 준비의 관계

선결제 슬롯에서는 다음 원칙을 적용한다.

결제 완료
→ 준비 시작 가능

paid 상태 이후 매장 준비가 시작될 수 있다.


3.2 픽업 시간 정의

픽업 슬롯은 다음 정보를 가진다.

픽업 시작 시간
픽업 종료 시간

예:

18:00 ~ 18:15

이 시간은 사용자가 방문하여 수령할 수 있는 시간 범위이다.


3.3 준비 시작 시점

조리 시작 시점은 플랫폼이 강제하지 않는다.

다음 원칙을 따른다.

준비 시작 시점
= 발행자 운영 정책

플랫폼은 결제 완료 상태만 제공한다.


3.4 픽업 확인 방식

픽업 확인은 QR 인증 방식을 사용한다.

사용 흐름

사용자 방문
→ QR 스캔
→ redeemed 상태

이 과정은 다음 역할을 한다.

도착 확인
사용 확정
노쇼 판단 기준

3.5 최종 사용 처리

QR 인증 이후 슬롯은 다음 상태로 전환된다.

paid → redeemed

redeemed 상태는 최종 사용 완료를 의미한다.


4. 노쇼 처리 정책

선결제 슬롯에서는 미방문(no-show) 상황이 발생할 수 있다.

다음 기준을 적용한다.

픽업 종료 시간 이후 일정 시간이 지나면 자동 노쇼 처리한다.

예:

픽업 종료 + 15분

상태 전이

paid → no_show

5. 환불 정책

환불 정책은 발행자가 결정한다.

플랫폼은 다음 역할만 수행한다.

환불 정책 노출
슬롯 상태 관리

플랫폼은 환불 금액 계산이나 환불 처리에 개입하지 않는다.


6. 사용자 행동 기준

픽업 슬롯 사용자는 다음 순서를 따른다.

슬롯 선택
→ 결제
→ 매장 방문
→ QR 확인
→ 픽업

플랫폼은 시간 사용 흐름만 관리한다.


7. 상태 모델

픽업 슬롯의 상태 모델은 ADR-DS-060을 따른다. 수량 점유 상태 해석은 ADR-DS-064를 따른다.


8. 운영 원칙

본 정책은 다음 원칙을 따른다.

플랫폼은 조리를 통제하지 않는다
플랫폼은 가격을 계산하지 않는다
플랫폼은 환불을 처리하지 않는다

플랫폼은 시간 사용 흐름만 관리한다.


9. 구조적 의미

선결제 픽업 슬롯은 플랫폼 철학을 유지하면서 준비형 서비스 업종을 지원하기 위한 기능이다.

플랫폼의 역할은 다음으로 유지된다.

시간 관리
슬롯 관리
사용 확정

플랫폼은 다음 역할을 수행하지 않는다.

결제 수령
정산 관리
거래 중개

즉 플랫폼은

주문 플랫폼이 아니라 시간 기반 슬롯 인프라이다.



Template v2 Addendum

In Scope

  • Prepaid slot operations (reservation, payment confirmation, pickup, quantity, PG connection)

Out of Scope

  • Order brokering, settlement handling, refund amount calculation

Boundaries

  • Payment responsibility is on publisher. Time/state management is on platform.

Source of Truth (SoT)

  • Base: ADR-DS-060; Temporary hold: ADR-DS-061; Payment verification/reconcile: ADR-DS-062; Pickup ops: ADR-DS-063; Quantity/concurrency: ADR-DS-064; PG registration/secret handling: ADR-DS-065.

Validation

  • Detect state/constraint violations via tests and batch checks.
  • Recovery and reprocessing must be idempotent.

Revisit Conditions

  • KPI threshold breach (reservation failure, expiry ratio, payment confirmation failure)
  • External dependency change (PG, regulation, location API)

DS-000 v1 정합성 개정 (2026-03-08)

이 문서는 ADR-DS-000 v1에 정합되도록 다음 규칙을 우선 적용한다.

  1. Reservation 상태 집합은 reserved | redeemed | expired | cancelled만 사용한다.
  2. paid, payment_failed, no_show는 Reservation 상태로 사용하지 않는다.
  3. 결제 중 임시 점유는 Reservation 상태가 아니라 hold 도메인으로 분리한다.
  4. 수량 차감은 reserved -> redeemed 전이 트랜잭션에서만 수행한다.
  5. prepaid + verification_method=none은 결제 성공 시 즉시 redeemed 전이를 허용할 수 있다.
  6. prepaid + (location|qr)는 결제 성공 후 검증 성공 시 redeemed로 전이한다.
  7. 만료 시각은 운영 상한을 강제한다: expires_at <= store_close_at.

본 섹션과 기존 본문이 충돌하면 본 섹션(DS-000 정합성 개정)이 우선한다.