Weiter zum Inhalt
Konto erstellen oder anmelden
Das Logo der Stripe-Dokumentation
/
KI fragen
Konto erstellenAnmelden
Jetzt starten
Zahlungen
Umsatz
Plattformen und Marktplätze
Geldmanagement
Entwicklerressourcen
APIs und SDKsHilfe
Übersicht
Informationen zu Stripe Payments
Aktualisieren Sie Ihre Integration
Zahlungsanalysefunktionen
Online-Zahlungen
ÜbersichtIhren Use case findenVerwenden Sie Managed Payments
Payment Links verwenden
Vorgefertigte Checkout-Seite verwenden
Erstellen Sie eine benutzerdefinierte Integration mit Elements
    Übersicht
    QuickStart-Leitfäden
    Stripe Elements
    Vergleichen Sie Checkout-Sitzungen und PaymentIntents
    Erweiterte Integration entwerfen
    Erscheinungsbild anpassen
    Zahlungsmethoden verwalten
      Zahlungen mit dem Express Checkout Element annehmen
      Nutzerdefinierte Zahlungsmethoden hinzufügen
      Zahlungsmethoden anpassen
      Zahlungsmethoden zum Dashboard migrieren
    Zusätzliche Informationen erfassen
    Abonnement-Integration erstellen
    Dynamische Aktualisierungen
    Rabatte hinzufügen
    Steuern auf Ihre Zahlungen einziehen
    Gutschriften einlösen
    Lassen Sie Kundinnen/Kunden in ihrer Landeswährung zahlen
    Zahlungsmethoden von Kundinnen und Kunden speichern und abrufen
    Belege und bezahlte Rechnungen senden
    Zahlungen auf Ihrem Server manuell genehmigen
    Eine Zahlung separat autorisieren und einziehen
    Elements mit Checkout Sessions API-Änderungsprotokoll (Beta)
In-App-Integration erstellen
Präsenzzahlungen
Terminal
Zahlungsmethoden
Zahlungsmethoden hinzufügen
Zahlungsmethoden verwalten
Schnellerer Bezahlvorgang mit Link
Zahlungsszenarien
Umgang mit mehreren Währungen
Nutzerdefinierte Zahlungsabläufe
Flexibles Acquiring
Orchestrierung
Mehr als Zahlungen
Unternehmensgründung
Krypto
Agentenbasierter Handel
Financial Connections
Climate
Betrug verstehen
Betrugsprävention von Radar
Zahlungsanfechtungen verwalten
Identitäten verifizieren
Vereinigte Staaten
Deutsch
StartseiteZahlungenBuild a custom integration with ElementsManage payment methods

Nutzerdefinierte Zahlungsmethoden hinzufügen

Erfahren Sie, wie Sie nutzerdefinierte Zahlungsmethoden zum Payment Element hinzufügen können.

Verwenden Sie das Payment Element in Verbindung mit der Payment Intents API, um über 50 voreingestellte Zahlungsmethoden sowie Ihre nutzerdefinierten Zahlungsmethoden über eine einzige Integration anzuzeigen. Nachdem Sie Ihre nutzerdefinierte Zahlungsmethode im Dashboard erstellt haben, konfigurieren Sie das Payment Element, um sicherzustellen, dass diese Transaktionen außerhalb von Stripe korrekt verarbeitet und abgeschlossen werden. Sie können diese Transaktionen zu Berichtszwecken in Ihrem Stripe-Konto erfassen.

Note

Bei der Integration eines Drittanbieter-Zahlungsabwicklers sind Sie für die Einhaltung der geltenden rechtlichen Bestimmungen verantwortlich, einschließlich Ihrer Vereinbarung mit Ihrem Zahlungsdienstleister, der geltenden Gesetze usw.

Bevor Sie loslegen

  1. Erstellen Sie ein Stripe-Konto oder melden Sie sich mit Ihrem bestehenden Konto an.
  2. Folgen Sie bitte diesem Leitfaden, um die Zahlungsintegration abzuschließen.

Ihre nutzerdefinierten Zahlungsmethode erstellen
Dashboard

Sie können im Dashboard eine nutzerdefinierte Zahlungsmethode erstellen, indem Sie zu Einstellungen > Zahlungen > Nutzerdefinierte Zahlungsmethoden navigieren. Geben Sie den Namen und das Logo für das Payment Element an, das angezeigt werden soll.

Wahl des richtigen Logos

  • Bei Logos mit einem transparenten Hintergrund, berücksichtigen Sie die Hintergrundfarbe des Payment Element auf Ihrer Seite und stellen Sie sicher, dass es auffällt.
  • Für Logos mit Hintergrundfüllung fügen Sie bitte bei Bedarf abgerundete Ecken in Ihre Datei ein.
  • Wählen Sie eine Logo-Variante, die auf 16 x 16 Pixel verkleinert werden kann. Dies ist oft die eigenständige Logo-Marke für eine Marke.

Nach dem Erstellen der nutzerdefinierten Zahlungsmethode zeigt das Dashboard die ID der nutzerdefinierten Zahlungsmethode (beginnend mit cpmt_) an, die Sie im nächsten Schritt benötigen.

Nutzerdefinierte Arten von Zahlungsmethoden hinzufügen
Clientseitig

Fügen Sie anschließend den nutzerdefinierten Zahlungsmethoden-Typ zu Ihrer Stripe Elements-Konfiguration hinzu. Geben Sie in Ihrer Datei checkout.js, in der Sie Stripe Elements initialisieren, die customPaymentMethods an, die zum Payment Element hinzugefügt werden sollen. Geben Sie die nutzerdefinierte Zahlungsmethoden-ID aus dem vorherigen Schritt, den options.type und einen optionalen Untertitel an.

checkout.js
const elements = stripe.elements({ // ... customPaymentMethods: [ { id:
'{{CUSTOM_PAYMENT_METHOD_TYPE_ID}}'
, options: { type: 'static', subtitle: Optional subtitle, } } ] });

Nach dem Laden zeigt das Payment Element Ihre nutzerdefinierte Zahlungsmethode an.

Stripe Payment Element zeigt eine nutzerdefinierte Zahlungsmethode namens PM Name an.

OptionalEingebettete nutzerdefinierte Inhalte anzeigen
Preview
Clientseitig

Verwenden Sie den eingebetteten Typ, um den Inhalt für Ihre nutzerdefinierte Zahlungsmethode im Payment Element anzuzeigen.

Das Stripe Payment Element, das eine nutzerdefinierte Zahlungsmethode namens „Name der Zahlungsmethode“ anzeigt, wobei der benutzerdefinierte Inhalt im Formular-Container überlagert wird.

Verwalten Sie Ihre nutzerdefinierten Inhalte mithilfe dieser Rückrufe:

  • handleRender: Wird aufgerufen, wenn eine Zahlungsmethode ausgewählt wird, und enthält einen Verweis auf einen Container-DOM-Knoten, in dem Sie Ihre Inhalte rendern können.
  • handleDestroy: Wird aufgerufen, wenn die Auswahl einer Zahlungsmethode aufgehoben und Payment Element deaktiviert wird. Führt Bereinigungen durch, z. B. Ereignis-Listener oder ein nutzerdefiniertes SDK zu entfernen.

Security tip

Bitte rendern Sie nur vertrauenswürdige Inhalte innerhalb des Containers, der von handleEmbed bereitgestellt wird. Das Rendern von Transaktionsgebühren, die Sie nicht kontrollieren, insbesondere von einer Nutzerin bzw. einem Nutzer oder einer nicht bereinigten Quelle, kann zu einer Cross-Site-Scripting-Sicherheitslücke (XSS) führen.

Mit Tools wie React-Portalen können Sie Ihre Rendering-Logik in Ihren Anwendungscode integrieren:

checkout.js
import {Elements} from '@stripe/react-stripe-js'; import {loadStripe} from '@stripe/stripe-js'; // Make sure to call `loadStripe` outside of a component’s render to avoid // recreating the `Stripe` object on every render. const stripePromise = loadStripe(
'pk_test_TYooMQauvdEDq54NiTphI7jx'
); export default function App() { const [embedContainer, setEmbedContainer] = useState(); const options = { customPaymentMethods: [ { id: '{{CUSTOM_PAYMENT_METHOD_TYPE_ID}}', options: { type: 'embedded', subtitle: Embedded payment method, embedded: { handleRender: (container) => { setEmbedContainer(container); }, handleDestroy: () => { setEmbedContainer(null); } } } } ] }; return ( <Elements stripe={stripePromise} options={options}> <CheckoutFormWithPaymentElement /> {embedContainer && createPortal(<EmbeddedCpmContent />, embedContainer)} </Elements> ); };

Übermittlung der Zahlungsmethode handhaben
Clientseitig

Um Transaktionen mit nutzerdefinierten Zahlungsmethoden außerhalb von Stripe zu verarbeiten, aktualisieren Sie bitte die Funktion handleSubmit, die aufgerufen wird, wenn Nutzer/innen auf Ihrer Website auf die Schaltfläche „Bezahlen“ klicken.

Die Funktion elements.submit() ruft die ausgewählte Art der Zahlungsmethode ab. Beispielsweise können Sie ein Modal anzeigen und die Zahlung dann entweder auf Ihrem eigenen Server verarbeiten oder Ihren Kunden/Ihre Kundin auf eine externe Bezahlseite weiterleiten.

checkout.js
async function handleSubmit(e) { const { submitError, selectedPaymentMethod } = await elements.submit(); if (selectedPaymentMethod ===
'{{CUSTOM_PAYMENT_METHOD_TYPE_ID}}'
) { // Process CPM payment on merchant server and handle redirect const res = await fetch("/process-cpm-payment", { method: 'post' }); ... } else { // Process Stripe payment methods ... } }

OptionalGeben Sie die Reihenfolge der nutzerdefinierten Zahlungsmethoden an
Clientseitig

Standardmäßig zeigt das Payment Element die letzten nutzerdefinierten Zahlungsmethoden an. Um die Reihenfolge der Zahlungsmethoden manuell festzulegen, legen Sie die Eigenschaft paymentMethodOrder in der Konfiguration der Optionen fest, wenn Sie Ihre Payment Element-Instanz erstellen.

checkout.js
const paymentElement = elements.create('payment', { // an array of payment method types, including custom payment method types paymentMethodOrder: [...] });

OptionalDie Zahlung in Ihrem Stripe-Konto erfassen
Serverseitig

Wenn Sie Transaktionen mit nutzerdefinierten Zahlungsmethoden außerhalb von Stripe abwickeln, können Sie die Transaktionsdetails dennoch in Ihrem Stripe-Konto erfassen. Dies kann bei der einheitlichen Berichterstellung und der Erstellung von Backoffice-Workflows, wie der Ausstellung von Belegen oder der Erstellung von Berichten, hilfreich sein.

server.js
const stripe = new Stripe(
'sk_test_BQokikJOvBiI2HlWgH4olfQ2'
, { apiVersion: '2025-10-29.clover; invoice_partial_payments_beta=v3' }); app.get('/process-cpm-payment', async (req, res) => { const paymentResult = processMyCustomPayment(...) // Create an instance of a custom payment method const paymentMethod = await stripe.paymentMethods.create({ type: 'custom', custom: { type:
'{{CUSTOM_PAYMENT_METHOD_TYPE_ID}}'
, } }); // Report successful payment const paymentRecord = await stripe.paymentRecords.reportPayment({ amount_requested: { value: paymentResult.amount, currency: paymentResult.currency }, payment_method_details: { payment_method: paymentMethod.id }, customer_details: { customer: paymentResult.customer.id }, processor_details: { type: 'custom', custom: { payment_reference: paymentResult.id } }, initiated_at: paymentResult.initiated_at, customer_presence: 'on_session', outcome: 'guaranteed', guaranteed: { guaranteed_at: paymentResult.completed_at } }); // Respond to frontend to finish buying experience return res.json(...) });
War diese Seite hilfreich?
JaNein
  • Benötigen Sie Hilfe? Kontaktieren Sie den Kundensupport.
  • Schauen Sie sich unser Änderungsprotokoll an.
  • Fragen? Sales-Team kontaktieren.
  • LLM? Lesen Sie llms.txt.
  • Unterstützt von Markdoc