콘텐츠로 이동

ConfirmResolution — @gj-kit/toss-payments

@gj-kit/toss-payments/server에서 공개하는 type입니다. package version 0.6.1의 release declaration을 그대로 표시합니다.

import { ConfirmResolution } from '@gj-kit/toss-payments/server';
/**
* §3.7 confirm 실패 복구·안내 3분기 — "confirm Err ≠ 결제 실패"(G8).
*
* transport 실패(승인됐는데 응답 유실)·ALREADY_PROCESSED_PAYMENT(새로고침 이중 confirm)를
* 일괄 실패 처리하면 "돈은 나갔는데 실패 안내"라는 최악의 CS 사고가 난다 — 조회로 진실을
* 확정한 뒤 분기하라.
*/
type ConfirmResolution =
/** 조회로 DONE|WAITING_FOR_DEPOSIT 및 (가상계좌라면) secret까지 확인됨. */
{
readonly resolution: 'actually-confirmed';
readonly payment: ConfirmedPayment;
}
/** 결제는 확인됐지만 가상계좌 secret은 lookup으로 복구할 수 없다 — 주문 보류/운영 복구. */
| {
readonly resolution: 'confirmed-without-deposit-secret';
readonly payment: ConfirmedWithoutDepositSecret;
}
/** NOT_FOUND_PAYMENT_SESSION(10분 초과) 등 — 결제 재요청 유도. */
| {
readonly resolution: 'retry-payment';
}
/** 조회로도 미승인 확정. */
| {
readonly resolution: 'definitively-failed';
readonly error: ConfirmError;
};

이 선언은 매개변수, optionality, 제네릭, 반환값, 공개 union/type 계약의 정본입니다. 호출 전 필요한 환경·권한·오류 경계는 패키지 Golden path와 이 subpath의 import 조건을 함께 확인하세요.

  • 패키지: @gj-kit/toss-payments
  • 버전: 0.6.1
  • 공개 entry: ./server
  • 소스: GitHub

§3.7 confirm 실패 복구·안내 3분기 — “confirm Err ≠ 결제 실패”(G8).

transport 실패(승인됐는데 응답 유실)·ALREADY_PROCESSED_PAYMENT(새로고침 이중 confirm)를 일괄 실패 처리하면 “돈은 나갔는데 실패 안내”라는 최악의 CS 사고가 난다 — 조회로 진실을 확정한 뒤 분기하라.