> ## 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.

# Official SDKs Overview

> Offizielle SDKs für TypeScript, Python, PHP, Go, Ruby, Java, Kotlin, C# und Rust zur Integration von Dodo Payments in Ihre Anwendungen

Dodo Payments provides official SDKs for multiple programming languages, each designed with language-specific best practices and modern features for seamless payment integration.

<Tip>
  Always use the latest SDK version to access the newest features and improvements. Check your package manager for updates regularly to ensure you have access to all Dodo Payments capabilities.
</Tip>

## Available SDKs

Choose the SDK that matches your tech stack:

<CardGroup cols={2}>
  <Card title="TypeScript SDK" icon="js" href="/developer-resources/sdks/typescript">
    Type-safe integration for TypeScript and Node.js with promise-based API and auto-pagination
  </Card>

  <Card title="Python SDK" icon="python" href="/developer-resources/sdks/python">
    Pythonic interface with async/await support for Python 3.7+ applications
  </Card>

  <Card title="PHP SDK" icon="php" href="/developer-resources/sdks/php">
    PSR-4 compliant SDK for modern PHP 8.1+ applications
  </Card>

  <Card title="Go SDK" icon="golang" href="/developer-resources/sdks/go">
    Idiomatic Go interface with context support and strong typing
  </Card>

  <Card title="Ruby SDK" icon="gem" href="/developer-resources/sdks/ruby">
    Elegant Ruby interface following Ruby conventions and best practices
  </Card>

  <Card title="Java SDK" icon="java" href="/developer-resources/sdks/java">
    Robust and thread-safe SDK for Java 8+ with Maven and Gradle support
  </Card>

  <Card title="Kotlin SDK" icon="code" href="/developer-resources/sdks/kotlin">
    Modern Kotlin SDK with coroutines, null safety, and extension functions
  </Card>

  <Card title="C# SDK" icon="c" href="/developer-resources/sdks/csharp">
    Type-safe SDK for .NET 8+ with async Task-based API (Beta)
  </Card>

  <Card title="Rust SDK" icon="rust" href="/developer-resources/sdks/rust">
    Asynchrones SDK, basierend auf Tokio und reqwest mit starker Typisierung für Rust 1.75+
  </Card>

  <Card title="React Native SDK" icon="mobile" href="/developer-resources/react-native-integration">
    Natives mobiles SDK für die Erstellung sicherer Zahlungserlebnisse in iOS- und Android-Apps
  </Card>

  <Card title="CLI" icon="terminal" href="/developer-resources/sdks/cli">
    Befehlszeilenschnittstelle zur Interaktion mit der API von Ihrem Terminal aus
  </Card>
</CardGroup>

## Schnellstart

Beginnen Sie innerhalb von Minuten mit jedem SDK:

<Steps>
  <Step title="Install the SDK">
    Verwenden Sie den Paketmanager Ihrer Sprache, um das SDK zu installieren

    <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">
    Konfigurieren Sie den Client mit Ihrem API-Schlüssel

    <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>
      Speichern Sie Ihre API-Schlüssel immer sicher mit Umgebungsvariablen. Niemals in die Versionskontrolle einfügen.
    </Warning>
  </Step>

  <Step title="Make Your First API Call">
    Erstellen Sie eine Checkout-Session oder Zahlung

    <Check>
      Sie sind nun bereit, Zahlungen zu verarbeiten! Besuchen Sie die einzelnen SDK-Seiten für detaillierte Anleitungen und Beispiele.
    </Check>
  </Step>
</Steps>

## Hauptfunktionen

Alle SDKs teilen diese Kernfunktionen:

* **Typensicherheit**: Starke Typisierung für Kompilationssicherheit und bessere IDE-Unterstützung
* **Fehlerbehandlung**: Umfassende Ausnahmebehandlung mit detaillierten Fehlermeldungen
* **Authentifizierung**: Einfache API-Schlüssel-Authentifizierung mit Umgebungsvariablenunterstützung
* **Async-Unterstützung**: Moderne Async/Await-Muster, wo anwendbar
* **Auto-Paginierung**: Automatische Paginierung für Listenantworten
* **Nutzungsbasierte Abrechnung**: Eingebaute Unterstützung für das Tracking und die Erfassung von Nutzungsdaten
* **Testen**: Vollständige Unterstützung der Sandbox-Umgebung für Entwicklung und Tests

## React Native SDK

Für mobile Anwendungen bieten wir ein dediziertes React Native SDK an:

<Card title="React Native SDK" icon="mobile" href="/developer-resources/react-native-integration">
  Erstellen Sie sichere Zahlungserlebnisse für iOS- und Android-Apps mit nativen UI-Komponenten und vereinfachter Erfassung von Zahlungsdaten
</Card>

**Funktionen:**

* Native UI-Komponenten für Android und iOS
* Vereinfachte Sicherheit für das Sammeln sensibler Zahlungsdaten
* Unterstützung für mehrere Zahlungsmethoden
* Nahtlose Integration mit React Native Apps

<Info>
  Apple Pay, Google Pay, Cash App und UPI werden derzeit im React Native SDK nicht unterstützt. Unterstützung für diese Zahlungsmethoden ist für zukünftige Versionen geplant.
</Info>

## Befehlszeilenschnittstelle

Für terminalbasierte Workflows und Automatisierung:

<Card title="CLI" icon="terminal" href="/developer-resources/sdks/cli">
  Automatisch generierte Befehlszeilenschnittstelle mit Unterstützung für alle 78 API-Endpunkte
</Card>

**Funktionen:**

* Ressourcenbasierte Befehlstruktur für intuitive Nutzung
* Mehrere Ausgabeformate (JSON, YAML, schön, interaktiv)
* Shell-Vervollständigung für bash, zsh und fish
* Perfekt für Scripting und CI/CD-Automatisierung

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

## Migration vom Node.js SDK

<Info>
  Wir sind vom Node.js SDK zum neuen TypeScript SDK migriert. Wenn Sie das ältere Node.js SDK verwenden, lesen Sie den [Migrationsleitfaden](https://github.com/dodopayments/dodopayments-typescript/blob/main/MIGRATION.md), um Ihre Integration zu aktualisieren.
</Info>

## Framework-Adapter

Integrieren Sie in unter 10 Zeilen Code mit unseren Framework-Adaptern. Wählen Sie aus unseren empfohlenen Frameworks oder erkunden Sie alle unterstützten Optionen.

### Empfohlene Frameworks

<CardGroup cols={2}>
  <Card title="Next.js" icon="atom" href="/developer-resources/nextjs-adaptor">
    Auf React basierendes Full-Stack-Framework mit App-Router-Unterstützung
  </Card>

  <Card title="Better Auth" icon="shield" href="/developer-resources/better-auth-adaptor">
    Authentifizierungs-Framework mit eingebauten Integrationen
  </Card>

  <Card title="Supabase" icon="database" href="developer-resources/supabase-boilerplate">
    Open-Source-Firebase-Alternative mit Postgres und Auth
  </Card>

  <Card title="Convex" icon="database" href="/developer-resources/convex-component">
    Backend-as-a-Service mit Echtzeitfunktionen
  </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>

## Hilfe erhalten

Brauchen Sie Unterstützung mit einem SDK?

* **Discord**: Treten Sie unserem [Community-Server](https://discord.gg/bYqAp4ayYh) für Echtzeit-Hilfe bei
* **Email**: Kontaktieren Sie uns unter [support@dodopayments.com](mailto:support@dodopayments.com)
* **GitHub**: Öffnen Sie ein Issue im jeweiligen SDK-Repository
* **Dokumentation**: Besuchen Sie unsere [API-Dokumentation](/api-reference/introduction)

## Mitmachen

Wir begrüßen Beiträge zu all unseren SDKs! Jedes Repository hat eine `CONTRIBUTING.md` Datei mit Richtlinien für:

* Fehler melden
* Features anfordern
* Pull Requests einreichen
* Tests lokal ausführen
* Code-Stil und Konventionen

Besuchen Sie die einzelnen SDK-Seiten, um deren GitHub-Repositories und Beitragerrichtlinien zu sehen.
