Skip to main content
TypeScript SDK는 TypeScript 및 JavaScript 애플리케이션을 위한 Dodo Payments REST API에 대한 편리한 서버 측 액세스를 제공합니다. 포괄적인 타입 정의, 오류 처리, 재시도, 타임아웃 및 원활한 결제 처리를 위한 자동 페이지 매김 기능을 갖추고 있습니다.

설치

선호하는 패키지 관리자를 사용하여 SDK를 설치하세요:

빠른 시작

API 키로 클라이언트를 초기화하고 결제 처리를 시작하세요:
API 키는 항상 환경 변수를 사용해 안전하게 저장하세요. 버전 관리에 커밋하거나 클라이언트 측 코드에 노출하지 마세요.

주요 기능

TypeScript First

모든 API 엔드포인트에 대해 포괄적인 타입 정의를 제공하는 완전한 TypeScript 지원

Auto-Pagination

목록 응답에 대한 자동 페이지 처리가 대량 데이터 작업을 수월하게 합니다

Error Handling

다양한 실패 시나리오에 대한 상세 메시지를 포함한 내장 오류 유형

Smart Retries

일시적인 오류에 대해 기하급수적 백오프와 함께 구성 가능한 자동 재시도

구성

환경 변수

안전한 구성을 위해 환경 변수를 설정하세요:
.env

타임아웃 구성

요청 타임아웃을 전역적으로 또는 요청별로 구성하세요:

재시도 구성

자동 재시도 동작을 구성하세요:
SDK는 네트워크 오류 또는 서버 문제(5xx 응답)로 실패한 요청을 기하급수적 백오프와 함께 자동으로 재시도합니다.

일반 작업

체크아웃 세션 생성

결제 정보를 수집하기 위한 체크아웃 세션을 생성하세요:

고객 관리

고객 정보를 생성하고 검색하세요:

구독 처리

정기 구독을 생성하고 관리하세요:
POST /subscriptions (SDK의 subscriptions.create 메서드)는 deprecated 상태입니다. 기존 통합에서는 계속 작동하지만, 새 통합에서는 Checkout Session을 통해 구독을 생성해야 합니다.
billing에는 최소한 두 글자의 ISO 국가 코드가 필요합니다. customer는 기존 고객을 연결하기 위한 { customer_id } 또는 새 고객을 생성하기 위한 { email, name? }의 union입니다. product_price는 통화의 최소 단위로 표현됩니다.

사용량 기반 청구

사용량 이벤트 수집

사용량 기반 청구를 위한 custom event를 추적합니다:
멱등성을 위해 이벤트에는 고유한 event_id 값이 있어야 합니다. 동일한 요청 내의 중복 ID는 거부되며, 기존 ID가 포함된 후속 요청은 무시됩니다.

사용량 이벤트 조회

사용량 이벤트에 대한 자세한 정보를 가져옵니다:

Proxy Configuration

다양한 런타임에 대한 프록시 설정을 구성합니다:

Node.js (using undici)

Bun

Deno

로깅

환경 변수 또는 클라이언트 옵션을 사용하여 로그 상세 수준을 제어합니다:
사용 가능한 로그 수준:
  • 'debug' - 디버그 메시지, 정보, 경고 및 오류 표시
  • 'info' - 정보 메시지, 경고 및 오류 표시
  • 'warn' - 경고 및 오류 표시(기본값)
  • 'error' - 오류만 표시
  • 'off' - 모든 로깅 비활성화
디버그 수준에서는 헤더와 본문을 포함한 모든 HTTP 요청과 응답이 로그에 기록됩니다. 일부 인증 헤더는 redacted 처리되지만, 본문에 포함된 민감한 데이터는 여전히 표시될 수 있습니다.

Node.js SDK에서 마이그레이션

레거시 Node.js SDK에서 업그레이드하는 경우 TypeScript SDK는 향상된 type safety와 기능을 제공합니다:

View Migration Guide

Node.js SDK에서 TypeScript SDK로 마이그레이션하는 방법 알아보기

자동 페이지 매김

DodoPayments API의 목록 메서드는 페이지로 나뉩니다. for await … of 구문을 사용하면 모든 페이지의 항목을 순회할 수 있습니다:
또는 한 번에 한 페이지를 요청할 수도 있습니다:

요구 사항

다음 런타임이 지원됩니다:
  • 웹 브라우저(최신 Chrome, Firefox, Safari, Edge 등)
  • Node.js 20 LTS 이상(non-EOL 버전)
  • Deno v1.28.0 이상
  • Bun 1.0 이상
  • Cloudflare Workers
  • Vercel Edge Runtime
  • "node" 환경에서 Jest 28 이상
  • Nitro v2.6 이상
TypeScript >= 4.9를 지원합니다.

리소스

GitHub Repository

소스 코드 확인 및 기여

API Reference

전체 API 문서

Discord Community

도움을 받고 개발자와 소통하기

Report Issues

버그 신고 또는 기능 요청

지원

TypeScript SDK에 도움이 필요하신가요?

기여

기여를 환영합니다! 시작하려면 기여 가이드라인을 확인하세요.
마지막 수정일 2026년 8월 17일