Skip to main content
C# SDK는 C#으로 작성된 애플리케이션에서 Dodo Payments REST API에 편리하게 액세스할 수 있도록 합니다. 강력한 형식 지정, 자동 재시도 및 포괄적인 오류 처리를 지원하는 async Task 기반 API를 제공합니다.

설치

NuGet에서 패키지를 설치합니다:
SDK에는 .NET 8.0 이상이 필요합니다. ASP.NET Core, Console 애플리케이션 및 기타 .NET 프로젝트 유형에서 사용할 수 있습니다.

빠른 시작

클라이언트를 초기화하고 checkout session을 생성합니다:
API 키는 environment variables, user secrets 또는 Azure Key Vault를 사용하여 항상 안전하게 저장하세요. 소스 코드에 직접 입력하거나 version control에 커밋하지 마세요.

핵심 기능

Async/Await

비차단 작업을 위한 완전한 async Task 기반 API

Strong Typing

nullable reference types를 통한 포괄적인 type safety

Smart Retries

일시적인 오류에 대한 exponential backoff를 적용한 자동 재시도

Error Handling

정확한 오류 관리를 위한 기본 제공 exception hierarchy

구성

Environment Variables

.env

수동 구성

환경

live 모드와 test 모드 간에 전환합니다:

재시도

SDK는 기본적으로 exponential backoff를 사용하여 2회 자동 재시도합니다. connection errors와 status codes 408, 409, 429 및 5xx에 대해 재시도합니다.

Timeout

요청은 기본적으로 1분 후 timeout됩니다.

요청별 재정의

WithOptions를 사용하여 단일 요청의 구성을 일시적으로 수정합니다:

일반적인 작업

Checkout Session 생성

Customer 관리

Subscription 처리

Billing에는 최소 두 자리 ISO Country 코드가 필요합니다. 기존 customer를 연결하려면 AttachExistingCustomer를 사용하고, 새 customer를 생성하려면 NewCustomer를 사용하세요. ProductPrice는 통화의 가장 작은 단위로 지정합니다.

오류 처리

SDK는 HTTP status code에 따라 구체적인 exception을 throw합니다. 모든 4xx 오류는 DodoPayments4xxException를 상속합니다. 기타 exception 유형:
  • DodoPaymentsIOException: I/O networking errors
  • DodoPaymentsInvalidDataException: 파싱된 데이터를 해석하지 못한 경우
  • DodoPaymentsException: 모든 exception의 base class

페이지 매김

자동 페이지 매김

Paginate method를 사용하여 모든 페이지의 모든 결과를 순회합니다. 이 method는 IAsyncEnumerable를 반환합니다:

수동 페이지 매김

ASP.NET Core 통합

DI container에 client를 등록합니다:
Program.cs
appsettings.json
개발 환경에서는 키를 appsettings.json에 저장하는 대신 user secrets를 사용하세요:

리소스

NuGet Package

NuGet Gallery에서 패키지 보기

GitHub Repository

소스 코드 확인 및 기여

API Reference

전체 API documentation

Discord Community

도움말 확인 및 개발자와 연결

지원

C# SDK에 대한 도움이 필요하신가요?
마지막 수정일 2026년 7월 31일