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

# Produkte

> Erstellen Sie in wenigen Minuten einmalige, abonnementbasierte oder nutzungsbasierte Produkte. Verwalten Sie Preise, Medien, Felder und automatisierte Berechtigungen - alles an einem Ort.

<Info>
  Produkte bilden die Grundlage von Dodo Payments. Egal, ob Sie einen einmaligen Download, ein Abo mit wiederkehrenden Zahlungen oder nutzungsbasierte Zugänge verkaufen – Sie beginnen mit der Erstellung eines Produkts. Jedes Produkt legt fest, wie es bepreist, im Checkout angezeigt und nach dem Kauf bereitgestellt wird.
</Info>

<CardGroup cols={3}>
  <Card title="One‑Time" icon="credit-card" href="/features/one-time-payment-products">
    Einmalig berechnen für lebenslangen Zugriff oder eine einzelne Lieferung.
  </Card>

  <Card title="Subscriptions" icon="repeat" href="/features/subscription">
    Planmäßig abrechnen mit Probezeiten, anteiliger Abrechnung und Add-ons.
  </Card>

  <Card title="Usage‑Based" icon="arrow-trend-up" href="/features/usage-based-billing/introduction">
    Verbrauch messen und Rechnung nach tatsächlicher Nutzung erstellen.
  </Card>
</CardGroup>

## Erstellen Sie ein Produkt

Sie können Produkte über das Dashboard oder über die API erstellen. Wählen Sie das Preismodell im Voraus: Einmalig, Abonnement oder Nutzungsbasiert und konfigurieren Sie dann die Details. Das Preismodell kann später nicht geändert werden; erstellen Sie ein neues Produkt, wenn Sie ein anderes Modell benötigen.

<Steps>
  <Step title="Name & description">
    Geben Sie einen klaren Titel und eine prägnante, wertorientierte Beschreibung an. Markdown wird in Beschreibungen unterstützt.

    <Tip>
      Halten Sie den ersten Satz kundenorientiert und ergebnisfokussiert; dieser erscheint prominent im Checkout.
    </Tip>

    <Frame>
      <img src="https://mintcdn.com/dodopayments/r-ndtvzx3WhKqwER/images/products.png?fit=max&auto=format&n=r-ndtvzx3WhKqwER&q=85&s=fb41221c4f2af4de0155e71de1ac6904" alt="Produkte" style={{ maxHeight: '500px', width: 'auto' }} width="1911" height="927" data-path="images/products.png" />
    </Frame>
  </Step>

  <Step title="Pricing model & price">
    Wählen Sie das Preismodell:

    * **Einmalig**: Festpreis, der einmal bezahlt wird.
    * **Abonnement**: Wiederkehrender Preis mit Intervall und optionaler Testphase.
    * **Nutzungsbasiert**: Preis, der aus gemessenen Ereignissen abgeleitet wird.

    Legen Sie dann die Preise fest:

    * **Preis**: Basisbetrag und Währung.
    * **Rabatt (%)**: Optionaler Inline-Rabatt, der beim Checkout und in Rechnungen angezeigt wird.
    * Für Abonnements setzen Sie **Wiederholen alle** (z.B. 1 Monat oder 1 Jahr) und **Testtage**, falls erforderlich. Der Abonnementpreis muss mindestens **1 \$** (oder das Äquivalent in Ihrer gewählten Währung) betragen; Beträge unter diesem Minimum werden nicht unterstützt und das Abonnement funktioniert nicht.

    <Tip>
      Möchten Sie einen festen Preis pro Währung oder Land anstelle einer Live-FX-Konvertierung? Setzen Sie einen `pricing_mode` auf das Produkt und fügen Sie [Lokalisierte Preisregeln](/features/localized-pricing) hinzu — zum Beispiel €9,99 in EUR oder ₹999 in Indien.
    </Tip>

    <Warning>
      Preisänderungen betreffen nur neue Käufe. Bestehende Abonnements folgen den Planänderungsregeln.
    </Warning>
  </Step>

  <Step title="Product media">
    Laden Sie Bilder hoch, um das Produkt bei Checkout und Rechnungen zu präsentieren. Unterstützte Formate sind PNG/JPG/WebP bis zu 3 MB. Reordnen oder ersetzen Sie jederzeit.
  </Step>

  <Step title="Automated entitlements (Under Advanced Settings)">
    Fügen Sie eine Erfüllung hinzu, die automatisch nach der Zahlung aktiviert wird:

    * **Lizenzschlüssel**: Einzigartige Schlüssel ausgeben und validieren
    * **Dateidownloads**: Sicherer Dateizugriff gewähren
    * **Benutzerdefiniert**: Eigene Berechtigungslogik über Webhooks auslösen

    Fügen Sie Vorteile hinzu oder entfernen Sie diese, während Ihr Angebot sich entwickelt. Bestehende Abonnenten erhalten oder verlieren entsprechend den Zugang.
  </Step>
</Steps>

## Varianten und Preisoptionen

Anstatt Varianten unter einem Produkt zu haben, erstellen Sie separate Produkte für jede Preisoption (z. B. monatlich und jährlich). Gruppieren Sie diese dann in einer **Produktkollektion**, um alle Optionen in einem einzigen Checkout zu präsentieren und den Planwechsel im Kundenportal zu ermöglichen.

<Frame>
  <img src="https://mintcdn.com/dodopayments/2YrxTqbaYgAm54C_/images/product-collection/checkout-page.png?fit=max&auto=format&n=2YrxTqbaYgAm54C_&q=85&s=1890932384bc32c8126c7993f3581855" alt="Produktkollektionen" style={{ maxHeight: '500px', width: 'auto' }} width="1440" height="960" data-path="images/product-collection/checkout-page.png" />
</Frame>

### Warum dieser Ansatz?

* **Klare Preismodelle**: Jedes Produkt hat ein einzelnes, klar definiertes Preismodell (einmalig, Abonnement, oder nutzungsbasiert)
* **Vorhersehbare APIs**: Einfache Integrationen ohne verschachtelte Variantenlogik
* **Einfachere Berichterstattung**: Verfolgen Sie Einnahmen und Metriken pro Produkt ohne Variantenaggregation
* **Flexibler Checkout**: Mehrere Produkte nebeneinander anzeigen, damit Kunden vergleichen und auswählen können

### Wie Produktkollektionen funktionieren

1. **Produkte erstellen**: Richten Sie individuelle Produkte für jeden Plan ein (z. B. Starter Monatlich, Starter Jährlich, Pro Monatlich, Pro Jährlich)
2. **In einer Sammlung gruppieren**: Fügen Sie verwandte Produkte zu einer Produktkollektion hinzu
3. **Einheitlicher Checkout**: Kunden sehen alle Optionen in einem Checkout und wählen ihren bevorzugten Plan
4. **Planwechsel**: Kunden können innerhalb derselben Sammlung über das Kundenportal zwischen Produkten upgraden oder downgraden

<Card title="Product Collections" icon="layer-group" href="/features/product-collections">
  Gruppieren Sie verwandte Produkte für einheitliche Checkout-Erlebnisse und nahtlose Upgrade-/Downgrade-Pfade.
</Card>

## Produkte verwalten

Sie können Produkte über das Dashboard oder programmatisch über die API verwalten. Die API bietet vollständige Kontrolle über die Produkterstellung, -aktualisierung, -abfrage, -bild-Uploads und -Archivierung.

### Dashboard-Verwaltung

* **Aktualisieren**: Jederzeit Name, Beschreibung, Bilder, Preis, Felder und Vorteile bearbeiten (Preismodell ist unveränderlich).
* **Archivieren**: Ein Produkt von neuen Käufen ausblenden, ohne bestehende Kunden zu stören. Sie können es später wiederherstellen.

### API-Verwaltung

Die folgenden Anweisungen ermöglichen es Ihnen, Produkte zu erstellen, zu aktualisieren, zu verwalten und abzurufen, einschließlich der Bild-Uploads.

<AccordionGroup>
  <Accordion title="Creating a Product">
    Ein Produkt kann ein einmaliger Artikel oder ein abonnementsbasiertes Service sein. Um ein neues Produkt zu erstellen, senden Sie eine `POST`-Anfrage an den `/products`-Endpunkt mit Details wie Name, Beschreibung, Preis, Währung und ob es sich um ein wiederkehrendes Produkt handelt.

    Für wiederkehrende Produkte, setzen Sie das `price`-Objekt auf einen wiederkehrenden Preis (`type: recurring_price`) und spezifizieren `payment_frequency_interval` und `subscription_period_interval` (`Day`, `Week`, `Month`, oder `Year`) zusammen mit deren entsprechenden Zählungen.

    <Card title="Create Product API" icon="code" href="/api-reference/products/post-products">
      Sehen Sie die detaillierte Anfrage- und Antwortstruktur in der Dokumentation zur API „Produkt erstellen“.
    </Card>
  </Accordion>

  <Accordion title="Updating a Product">
    Um ein bestehendes Produkt zu ändern, senden Sie eine `PATCH`-Anfrage an den `/products/{product_id}`-Endpunkt. Sie können Eigenschaften wie Name, Preis und Beschreibung aktualisieren, während andere Details unverändert bleiben.

    Stellen Sie sicher, dass der `product_id` im Endpunkt mit einem bestehenden Produkt übereinstimmt.

    <Card title="Update Product API" icon="code" href="/api-reference/products/patch-products">
      Sehen Sie die detaillierte Anfrage- und Antwortstruktur in der Dokumentation zur API „Produkt aktualisieren“.
    </Card>
  </Accordion>

  <Accordion title="Retrieving Products">
    Sie können eine Liste von Produkten abrufen, die in Ihrem Konto gespeichert sind, indem Sie eine `GET`-Anfrage an den `/products`-Endpunkt senden. Dadurch können Sie Produktdetails, einschließlich aktiver und archivierter Produkte, abrufen.

    <Card title="Retrieve Products API" icon="code" href="/api-reference/products/get-products">
      Sehen Sie die detaillierte Anfrage- und Antwortstruktur in der Dokumentation zur API „Produkte abrufen“.
    </Card>
  </Accordion>

  <Accordion title="Uploading Product Images">
    Sie können ein Bild mit einem Produkt verknüpfen, indem Sie es mit einer von der API bereitgestellten vorab signierten URL zu AWS S3 hochladen. Fordern Sie zunächst eine Bild-Upload-URL vom `/products/{product_id}/images`-Endpunkt an und verwenden Sie die bereitgestellte URL, um das Bild innerhalb von 60 Sekunden hochzuladen.

    <Warning>
      Die vorab signierte URL läuft in 60 Sekunden ab, sodass das Bild innerhalb dieses Zeitrahmens hochgeladen werden muss.
    </Warning>

    Sobald die vorab signierte URL von der API empfangen wurde, laden Sie das Bild mit der `PUT`-Methode hoch. Dies gewährleistet einen sicheren und temporären Zugriff auf AWS S3 zum Hochladen des Bildes.

    **Unterstützte Bibliotheken für den Upload zu S3:**

    * **Node.js**: `axios`, `node-fetch`
    * **Python**: `requests`, `boto3`
    * **Go**: `net/http`
    * **PHP**: `GuzzleHttp`
    * **Ruby**: `rest-client`

    Wenn der Upload erfolgreich ist, gibt AWS S3 einen `200 OK`-Status zurück, der anzeigt, dass das Bild erfolgreich gespeichert wurde.

    <Card title="Upload Product Image API" icon="code" href="/api-reference/products/put-products-images">
      Sehen Sie die detaillierte Anfrage- und Antwortstruktur in der Dokumentation zur API „Produktbild hochladen“.
    </Card>
  </Accordion>

  <Accordion title="Archiving a Product">
    Wenn Sie ein Produkt nicht mehr anzeigen oder verwenden möchten, können Sie es mit einer `DELETE`-Anfrage an den `/products/{id}`-Endpunkt archivieren. Diese Aktion verbirgt das Produkt, löscht es jedoch nicht dauerhaft.

    <Card title="Archive Product API" icon="code" href="/api-reference/products/archive-product">
      Sehen Sie die detaillierte Anfrage- und Antwortstruktur in der Dokumentation zur API „Produkt archivieren“.
    </Card>
  </Accordion>

  <Accordion title="Unarchiving a Product">
    Wenn Sie ein archiviertes Produkt wiederherstellen müssen, senden Sie eine `POST`-Anfrage an den `/products/{product_id}/unarchive`-Endpunkt. Dies wird das Produkt reaktivieren und es wieder verfügbar machen.

    <Card title="Unarchive Product API" icon="code" href="/api-reference/products/unarchive-product">
      Sehen Sie die detaillierte Anfrage- und Antwortstruktur in der Dokumentation zur API „Produkt wiederherstellen“.
    </Card>
  </Accordion>

  <Accordion title="Checkout & fulfillment">
    Erstellen Sie Zahlungs- oder Abonnementabläufe aus Produkten und erfüllen Sie diese automatisch über Vorteile und Webhooks.

    <CardGroup cols={3}>
      <Card title="Checkout Sessions" icon="code" href="/developer-resources/checkout-session">
        Erstellen Sie Checkout-Sitzungen für einmalige oder Abonnementkäufe.
      </Card>

      <Card title="Payment Webhooks" icon="code" href="/developer-resources/webhooks/intents/payment">
        Reagieren Sie auf Ereignisse im Zahlungslebenszyklus.
      </Card>

      <Card title="Subscription Webhooks" icon="code" href="/developer-resources/webhooks/intents/subscription">
        Bearbeiten Sie Ereignisse bei erstellten, erneuerten und gekündigten Abonnements.
      </Card>
    </CardGroup>
  </Accordion>
</AccordionGroup>

## Best Practices

* **Klarheit schaffen**: Separate Produkte für jede Preisoption (monatlich vs. jährlich)
* **Versuche durchdacht nutzen**: Tests mit Onboarding kombinieren, um die Aktivierung zu fördern
* **Automatisierte Erfüllung**: Nutzen Sie Vorteile und Webhooks für sofortige Lieferung
* **Mit Metadaten taggen**: Speichern Sie Ihre System-IDs zur Abstimmung

<Check>
  Sie sind bereit, Produkte zu erstellen und zu verkaufen - einmalig, wiederkehrend oder nach Nutzung.
</Check>

## Verwandte Themen

<CardGroup cols={2}>
  <Card title="Product Analytics" icon="chart-mixed" href="/features/analytics-and-reporting#product-level-analytics">
    Verfolgen Sie Umsatz, Kunden, Bindung, Abonnenten und MRR für jedes einzelne Produkt.
  </Card>

  <Card title="Localized Pricing" icon="earth-americas" href="/features/localized-pricing">
    Setzen Sie feste Preise pro Währung oder Land auf ein Produkt, anstatt sich auf Live-Wechselkurse zu verlassen.
  </Card>
</CardGroup>
