콘텐츠로 이동

WebhookRejection — @gj-kit/toss-payments

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

import { WebhookRejection } from '@gj-kit/toss-payments/webhook';
type WebhookRejection = {
readonly kind: 'invalid-signature';
readonly signatureCount: number;
readonly keysTried: number;
}
/** 위조 의심 — 저장된 secret과 불일치. */
| {
readonly kind: 'secret-mismatch';
readonly orderId: string;
}
/** depositSecrets가 null 반환 — 승인 시 저장 누락. */
| {
readonly kind: 'unknown-order';
readonly orderId: string;
} | {
readonly kind: 'missing-config';
readonly needed: 'securityKeys' | 'depositSecrets';
} | {
readonly kind: 'untrusted-source-ip';
readonly ip: string;
}
/** 서명·secret이 없는 이벤트에서 출처 IP 미제공 — 기본 fail-closed. */
| {
readonly kind: 'missing-source-ip';
} | {
readonly kind: 'invalid-transmission-time';
readonly value: string;
} | {
readonly kind: 'stale-transmission-time';
readonly value: string;
}
/** 동일 이벤트가 아직 처리 중 — 어댑터는 503으로 재전송을 유도한다. */
| {
readonly kind: 'processing';
readonly dedupeKey: string;
} | {
readonly kind: 'parse-failed';
readonly detail: string;
} | {
readonly kind: 'store-failure';
readonly cause: unknown;
};

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

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