> ## Documentation Index
> Fetch the complete documentation index at: https://docs.dodopayments.com/llms.txt
> Use this file to discover all available pages before exploring further.

# 公式SDKの概要

> Dodo Paymentsをアプリケーションに統合するためのTypeScript、Python、PHP、Go、Ruby、Java、Kotlin、C#、Rustの公式SDK

Dodo Paymentsは、複数のプログラミング言語用の公式SDKを提供しており、それぞれが言語固有のベストプラクティスと最新の機能を備えて、シームレスな支払い統合を実現しています。

<Tip>
  常に最新のSDKバージョンを使用して、最新の機能と改善にアクセスしてください。パッケージマネージャーで定期的に更新を確認し、Dodo Paymentsのすべての機能を利用できるようにしてください。
</Tip>

## 利用可能なSDK

あなたの技術スタックに合ったSDKを選択してください：

<CardGroup cols={2}>
  <Card title="TypeScript SDK" icon="js" href="/developer-resources/sdks/typescript">
    TypeScriptとNode.js向けの型安全な統合で、プロミスベースのAPIと自動ページネーション付き
  </Card>

  <Card title="Python SDK" icon="python" href="/developer-resources/sdks/python">
    Python 3.7以上のアプリケーション向けのasync/await対応のPythonライクなインターフェイス
  </Card>

  <Card title="PHP SDK" icon="php" href="/developer-resources/sdks/php">
    PSR-4準拠の、モダンなPHP 8.1以上のアプリケーション向けSDK
  </Card>

  <Card title="Go SDK" icon="golang" href="/developer-resources/sdks/go">
    コンテキスト対応かつ強い型付けの、慣用的なGoインターフェイス
  </Card>

  <Card title="Ruby SDK" icon="gem" href="/developer-resources/sdks/ruby">
    Rubyの慣習とベストプラクティスに従ったエレガントなRubyインターフェイス
  </Card>

  <Card title="Java SDK" icon="java" href="/developer-resources/sdks/java">
    MavenおよびGradleに対応した、Java 8以上向けの堅牢でスレッドセーフなSDK
  </Card>

  <Card title="Kotlin SDK" icon="code" href="/developer-resources/sdks/kotlin">
    コルーチン、ヌル安全性、拡張関数を備えたモダンなKotlin SDK
  </Card>

  <Card title="C# SDK" icon="c" href="/developer-resources/sdks/csharp">
    async TaskベースAPIを備えた、.NET 8以上向けの型安全なSDK（ベータ）
  </Card>

  <Card title="Rust SDK" icon="rust" href="/developer-resources/sdks/rust">
    Rust 1.75+向けのTokioとreqwestを基にした非同期ファーストSDKで、強力な型付けが特徴
  </Card>

  <Card title="React Native SDK" icon="mobile" href="/developer-resources/react-native-integration">
    iOSおよびAndroidアプリでの安全な支払い体験を構築するためのネイティブモバイルSDK
  </Card>

  <Card title="CLI" icon="terminal" href="/developer-resources/sdks/cli">
    ターミナルからAPIとやり取りするためのコマンドラインインターフェース
  </Card>
</CardGroup>

## クイックスタート

どのSDKでも数分で始めることができます：

<Steps>
  <Step title="Install the SDK">
    使用する言語のパッケージマネージャでSDKをインストールします

    <Tabs>
      <Tab title="TypeScript/Node.js">
        ```bash theme={null}
        npm install dodopayments
        ```
      </Tab>

      <Tab title="Python">
        ```bash theme={null}
        pip install dodopayments
        ```
      </Tab>

      <Tab title="PHP">
        ```bash theme={null}
        composer require dodopayments/client
        ```
      </Tab>

      <Tab title="Go">
        ```bash theme={null}
        go get github.com/dodopayments/dodopayments-go
        ```
      </Tab>

      <Tab title="Rust">
        ```bash theme={null}
        cargo add dodopayments
        ```
      </Tab>
    </Tabs>
  </Step>

  <Step title="Initialize the Client">
    クライアントをAPIキーで構成します

    <Tabs>
      <Tab title="TypeScript">
        ```typescript theme={null}
        import DodoPayments from 'dodopayments';
        const client = new DodoPayments({ bearerToken: 'your_api_key' });
        ```
      </Tab>

      <Tab title="Python">
        ```python theme={null}
        from dodopayments import DodoPayments
        client = DodoPayments(bearer_token="your_api_key")
        ```
      </Tab>

      <Tab title="PHP">
        ```php theme={null}
        use Dodopayments\Client;
        $client = new Client(bearerToken: 'your_api_key');
        ```
      </Tab>

      <Tab title="Go">
        ```go theme={null}
        import "github.com/dodopayments/dodopayments-go"
        client := dodopayments.NewClient(option.WithBearerToken("your_api_key"))
        ```
      </Tab>

      <Tab title="Rust">
        ```rust theme={null}
        use dodopayments::Client;
        let client = Client::from_env()?; // reads DODO_PAYMENTS_API_KEY
        ```
      </Tab>
    </Tabs>

    <Warning>
      常に環境変数を使用してAPIキーを安全に保存します。バージョン管理にコミットしないでください。
    </Warning>
  </Step>

  <Step title="Make Your First API Call">
    チェックアウトセッションまたは支払いを作成します

    <Check>
      これで支払いの処理が準備完了です！詳細なガイドと例を含む個々のSDKページをご覧ください。
    </Check>
  </Step>
</Steps>

## 主な特徴

すべてのSDKはこれらの基本的な機能を共有しています：

* **型安全性**: コンパイル時の安全性と優れたIDEサポートのための強力な型付け
* **エラーハンドリング**: 詳細なエラーメッセージを持つ包括的な例外処理
* **認証**: 環境変数サポートによるシンプルなAPIキー認証
* **非同期サポート**: 適用可能なモダンなasync/awaitパターン
* **自動ページネーション**: リストレスポンスの自動ページネーション
* **使用量ベースの課金**: 使用イベントの追跡と取り込みをサポート
* **テスト**: 開発とテスト用の完全なサンドボックス環境

## React Native SDK

モバイルアプリケーション向けに専用のReact Native SDKを提供しています：

<Card title="React Native SDK" icon="mobile" href="/developer-resources/react-native-integration">
  iOSおよびAndroidアプリでの安全な支払い体験を構築するためのネイティブUIコンポーネントと簡素化された支払いデータの収集
</Card>

**特徴：**

* AndroidおよびiOS用のネイティブUIコンポーネント
* セキュリティを簡素化し、機微な支払いデータを収集
* 複数の支払い方法をサポート
* React Nativeアプリとのシームレスな統合

<Info>
  Apple Pay、Google Pay、Cash App、およびUPIは現在React Native SDKでサポートされていません。これらの支払い方法のサポートは将来のリリースで予定されています。
</Info>

## コマンドラインインターフェース

ターミナルベースのワークフローと自動化には：

<Card title="CLI" icon="terminal" href="/developer-resources/sdks/cli">
  すべての78 APIエンドポイントをサポートする自動生成されたコマンドラインインターフェース
</Card>

**特徴：**

* 直感的な使用法のためのリソースベースのコマンド構造
* 複数の出力フォーマット（JSON、YAML、pretty、interactive）
* bash、zsh、fish用のシェル補完
* スクリプトおよびCI/CD自動化に最適

```bash theme={null}
# Quick example
dodopayments payments list --format json | jq '.data[] | {id, amount}'
```

## Node.js SDKからの移行

<Info>
  Node.js SDKから新しいTypeScript SDKに移行しました。旧Node.js SDKを使用している場合は、[移行ガイド](https://github.com/dodopayments/dodopayments-typescript/blob/main/MIGRATION.md)を参照して、統合を更新してください。
</Info>

## フレームワークアダプター

10行未満のコードで統合するために、フレームワークアダプターを提供しています。推奨フレームワークを選択するか、サポートされているオプションをすべて探索します。

### 推奨フレームワーク

<CardGroup cols={2}>
  <Card title="Next.js" icon="atom" href="/developer-resources/nextjs-adaptor">
    App Routerサポートを備えたReactベースのフルスタックフレームワーク
  </Card>

  <Card title="Better Auth" icon="shield" href="/developer-resources/better-auth-adaptor">
    統合を内蔵した認証フレームワーク
  </Card>

  <Card title="Supabase" icon="database" href="developer-resources/supabase-boilerplate">
    PostgresとAuthを備えたオープンソースのFirebase代替
  </Card>

  <Card title="Convex" icon="database" href="/developer-resources/convex-component">
    リアルタイム機能を持つBackend-as-a-Service
  </Card>
</CardGroup>

<AccordionGroup>
  <Accordion title="Show other 8+ supported frameworks">
    <CardGroup cols={4}>
      <Card title="SvelteKit" icon="js" href="/developer-resources/sveltekit-adaptor" />

      <Card title="Nuxt" icon="vuejs" href="/developer-resources/nuxt-adaptor" />

      <Card title="Remix" icon="react" href="/developer-resources/remix-adaptor" />

      <Card title="Express" icon="js" href="/developer-resources/express-adaptor" />

      <Card title="Fastify" icon="bolt" href="/developer-resources/fastify-adaptor" />

      <Card title="Hono" icon="cloud" href="/developer-resources/hono-adaptor" />

      <Card title="Astro" icon="star" href="/developer-resources/astro-adaptor" />

      <Card title="TanStack" icon="chart-line" href="/developer-resources/tanstack-adaptor" />
    </CardGroup>
  </Accordion>
</AccordionGroup>

## ヘルプを得る

SDKについてのヘルプが必要ですか？

* **Discord**: リアルタイムヘルプのための[コミュニティサーバー](https://discord.gg/bYqAp4ayYh)に参加する
* **Email**: [support@dodopayments.com](mailto:support@dodopayments.com) にお問い合わせください
* **GitHub**: 該当するSDKリポジトリで問題を報告する
* **Documentation**: [APIリファレンス](/api-reference/introduction)を訪問する

## コントリビューション

すべてのSDKへの貢献を歓迎します！各リポジトリには以下のガイドラインが記載された`CONTRIBUTING.md`ファイルがあります：

* バグの報告
* 機能のリクエスト
* プルリクエストの提出
* ローカル環境でのテストの実行
* コードスタイルと規約

個々のSDKページを訪問して、GitHubリポジトリとコントリビューションガイドラインにアクセスしてください。
