Tapaya
ÜbersichtWebhooksEreignistypen

Ereignistypen

Wählen Sie die Änderungen an Zahlungen, Erstattungen, Händlern und am Onboarding aus, die Ihre Integration benötigt.

Wählen Sie aus diesen 23 Ereignistypen oder aktivieren Sie ein Abonnement aller Typen. Jede Benachrichtigung verwendet die gemeinsame Ereignishülle (Envelope); diese Seite zeigt, was jede Ereignisgruppe in data ablegt.

Ereignisgruppen

GruppeEreignissedata enthält
Zahlungen7payment
Erstattungen6payment und refund
Händler2merchant
Händler-Onboarding8onboarding

Die meisten Integrationen beginnen mit payment.succeeded, payment.failed und payment.refund.succeeded. Plattformen, die Händler-Onboarding durchführen, ergänzen merchant.onboarding.approved und merchant.onboarding.action_required.

Zahlungen

Diese Ereignisse beschreiben die gesamte Zahlung über unterstützte Zahlungsabwickler und Kanäle hinweg. Sie enthalten data.payment, einschließlich status und statusId der Zahlung.

EreignisVersandzeitpunkt
payment.createdEine Zahlung wird gespeichert.
payment.updatedDer Status ändert sich zu pending oder einem anderen Status ohne eigenen Ereignisnamen. Dies ist keine Benachrichtigung für jede Feldänderung.
payment.succeededDer Status ändert sich zu success.
payment.failedDie gesamte Zahlung wechselt zu failed, statt dass ein einzelner Zahlungsversuch fehlschlägt.
payment.canceledDer Status ändert sich zu cancelled.
payment.refundedTapaya kennzeichnet die Zahlung als refunded.
payment.action_requiredDer Status ändert sich zu actionNeeded.

Wird eine Zahlung in einem anderen Zustand als „ausstehend“ erstellt, werden sowohl payment.created als auch das passende Statusereignis gesendet, sofern Sie beide abonniert haben. Das erneute Speichern desselben Status sendet weder ein neues Statusereignis noch payment.updated.

status und statusId nehmen in Zahlungs- und Erstattungs-Snapshots diese Werte an:

statusIdstatusBedeutung
1pendingDie Verarbeitung hat noch kein endgültiges Ergebnis erreicht.
2successDie Zahlung oder Erstattung war erfolgreich.
3cancelledDie Zahlung oder Erstattung wurde abgebrochen.
4refundedDie Zahlung ist von Tapaya als erstattet gekennzeichnet.
5failedDie Zahlung oder Erstattung ist fehlgeschlagen.
6actionNeededEine weitere Aktion ist erforderlich.

Unbekannte zukünftige Status-IDs verwenden status: "unknown" und behalten ihre numerische statusId. Ereignisnamen verwenden succeeded und canceled; Statuswerte verwenden success und cancelled.

Erstattungen

Erstattungsereignisse enthalten sowohl data.payment als auch data.refund. Die Erstattung hat eine eigene ID, ein eigenes Token, einen eigenen Status sowie angeforderte Beträge, Abrechnungsbeträge und die jeweiligen Währungen. Verwenden Sie die ID der Erstattung, um sie unabhängig von der übergeordneten Zahlung zu verfolgen.

EreignisVersandzeitpunkt
payment.refund.createdEine Erstattung wird gespeichert.
payment.refund.updatedDer Status ändert sich zu pending oder einem anderen Status ohne eigenen Ereignisnamen.
payment.refund.succeededDer Status ändert sich zu success.
payment.refund.failedDer Status ändert sich zu failed.
payment.refund.canceledDer Status ändert sich zu cancelled.
payment.refund.action_requiredDer Status ändert sich zu actionNeeded.

Wird eine Erstattung in einem anderen Zustand als „ausstehend“ erstellt, kann auch das passende Statusereignis gesendet werden. Eine erfolgreiche Erstattung beschreibt für sich genommen nicht den endgültigen Status der gesamten Zahlung: Prüfen Sie data.payment.status und eine etwaige separate Benachrichtigung payment.refunded.

Händler

Händlerereignisse enthalten data.merchant mit einer id, einem token und einem Snapshot des gespeicherten Händlerstatus.

EreignisVersandzeitpunkt
merchant.createdEin Händler wird in Ihrer Organisation erstellt.
merchant.status_changedAktivierung, Status als Basis-Händlerdatensatz (Merchant Shell), Vorhandensein eines Profils oder ein Konto, eine Einreichung, eine Zulassung oder eine Ablehnung beim Zahlungsabwickler ändern sich.
data
{
  "merchant": {
    "id": "019a0000-0000-7000-8000-000000000005",
    "token": "example_merchant_token",
    "status": {
      "isActive": true,
      "isShellMerchant": false,
      "profileOnboarded": true,
      "processors": [
        {
          "paymentProcessorId": 2,
          "hasAccount": true,
          "submitted": true,
          "approved": true,
          "rejected": false,
          "submittedAt": "2026-10-29T10:00:00+00:00",
          "approvedAt": "2026-10-30T12:00:00+00:00",
          "rejectedAt": null
        }
      ]
    }
  }
}
  • profileOnboarded bedeutet, dass ein Profil vorhanden ist. Es bedeutet nicht, dass ein Zahlungsabwickler den Händler zugelassen hat oder jede Zahlungsmethode bereit ist.
  • Kontokennungen beim Zahlungsabwickler und private Ablehnungsnachrichten des Zahlungsabwicklers sind nicht enthalten. Die Zahlungsabwickler-ID oben dient der Veranschaulichung.
  • Das Aktualisieren unveränderter Werte oder das Bearbeiten nicht damit zusammenhängender Händlerdetails sendet kein Ereignis. Es gibt weder ein Ereignis merchant.updated noch ein Ereignis zum Löschen eines Händlers.

Händler-Onboarding

Onboarding-Ereignisse enthalten data.onboarding. Dessen status entspricht dem letzten Segment des Ereignisnamens, und einige Ereignisse fügen die unten genannten Felder hinzu.

EreignisVersandzeitpunkt
merchant.onboarding.startedDas erste Händlerprofil und die Onboarding-Daten werden gespeichert.
merchant.onboarding.profile_completedDas erste vollständige Händlerprofil wird gespeichert.
merchant.onboarding.document_addedEin neues Dokument wird gespeichert. Fügt documentId, documentTypeId, paymentProcessorId und bei einem zwischengespeicherten Dokument source: "cache" hinzu.
merchant.onboarding.stakeholder_completedDie Onboarding-Daten eines Beteiligten werden abgeschlossen. Fügt stakeholderId hinzu.
merchant.onboarding.submittedDas Onboarding ist bereit zur Einreichung bei einem Zahlungsabwickler. Fügt paymentProcessorId hinzu.
merchant.onboarding.approvedEin Konto beim Zahlungsabwickler wird zum ersten Mal zugelassen. Fügt paymentProcessorId hinzu.
merchant.onboarding.rejectedTapaya lehnt das Onboarding nach einer manuellen Prüfung ab. Fügt reason hinzu, wobei requiredAction auf null gesetzt ist.
merchant.onboarding.action_requiredTapaya fordert nach einer manuellen Prüfung weitere Informationen an. Fügt reason und requiredAction hinzu.
data
{
  "onboarding": {
    "status": "action_required",
    "reason": "The submitted company document is no longer valid.",
    "requiredAction": "Upload a current company registration document."
  }
}

Onboarding- und Händlerstatusereignisse beschreiben unterschiedliche Aspekte einer Änderung. Dasselbe gespeicherte Profil oder dieselbe Zulassung durch einen Zahlungsabwickler kann beide Ereignisgruppen erzeugen, wenn Sie beide abonniert haben; gehen Sie nicht von einer bestimmten Reihenfolge zwischen ihnen aus. Ereignisse für frühere Onboarding-Aktivitäten werden nicht nachträglich bereitgestellt.

Diagnosetests

Verwenden Sie die Testaktion der Platform, um webhook.test zu senden. Es enthält test: true, merchantId: null und data.message, jedoch keinen Zahlungs- oder Händlerzustand. Es kann nicht als Ereignisabonnement ausgewählt werden.

Unter Verifizieren und testen erfahren Sie, wie Sie die Zustellung prüfen, ohne eine Zahlung zu erstellen.

Fehlt Ihnen etwas auf dieser Seite?Wünschen Sie sich eine Funktion. Wir hängen diese Seite an, damit das Team den Kontext sieht.