Zahlungsgateway-Integration

Der folgende Artikel gibt einen Überblick darüber, was erforderlich ist, um ein mit WC Vendors kompatibles Zahlungs-Gateway zu erstellen, das Händler-Provisionen unterstützt. Ihre Zahlungsplattform muss bestimmte Anforderungen erfüllen, um eine kompatible Integration zu erstellen. Sobald Sie sicher sind, dass Ihre Plattform über die erforderlichen Funktionen verfügt, gibt es zwei Teile beim Erstellen eines WC Vendors-kompatiblen Gateways.

  • Plattformanforderungen
  • Kundenzahlungen
  • Auszahlungen an Verkäufer

Es ist möglich, eine reine Auszahlungs-Integration zu erstellen, diese wird jedoch nicht behandelt.

Plattformanforderungen

Um ein mit WC Vendors kompatibles Zahlungs-Gateway für Zahlungen und Auszahlungen zu implementieren, muss Ihre Plattform die folgenden Funktionen unterstützen:

  • Zahlungen abwickeln (einschließlich Rückerstattungen & Streitfälle)
  • Zahlungen aufteilen oder Auszahlungsverwaltung

Andere nützliche, aber nicht erforderliche Funktionen sind

  • Anbieter-Onboarding
  • KYC
  • Berichte
  • Steuerverwaltung
  • Klare Dokumentation für Marktplatzunterstützung

Kundenzahlungen

Beim Erstellen Ihres Gateways besteht der erste Schritt darin, sicherzustellen, dass Sie ein vollständig kompatibles WooCommerce-Zahlungs-Gateway erstellt haben. Dies stellt sicher, dass Kundenzahlungen korrekt erfasst werden. Da dies in der offiziellen WooCommerce-Dokumentation bereits ausführlich behandelt wird, empfehlen wir Ihnen, diese zu lesen.

Bitte lesen Sie das Entwicklerdokument von WooCommerce für diesen Abschnitt.

Anbieterauszahlungen

Händlerauszahlungen hängen von der Art der von Ihnen unterstützten Auszahlungen ab. All diese Aspekte, wie und wann Händler bezahlt werden, werden von Ihrer Zahlungs-API bestimmt. Die beiden gängigen Szenarien für Händlerauszahlungen:

  • Geteilte Zahlung
  • Geplante Auszahlung

Abhängig von Ihrer Plattform wählen Sie eine oder beide dieser Optionen für die Integration. Um zu verstehen, wie Händlerauszahlungen gehandhabt werden, sollten Sie zunächst verstehen, wie unser Provisionssystem intern funktioniert.

Provisions-Interna

Das Provisionssystem von WC Vendors basiert derzeit auf Produkten. Das bedeutet, dass für jedes Produkt in einer Bestellung eine eigene Provision berechnet und protokolliert wird. Dies kann Versand und Steuern einschließen.

WC Vendors-Provisionen werden nur protokolliert, wenn die Zahlung abgewickelt wurde. Sobald die Zahlung abgewickelt wurde, protokolliert WC Vendors die Provision in der Provisions-Tabelle. Damit eine Provision protokolliert werden kann, muss die WooCommerce-Bestellung einen der folgenden beiden Status haben:

  • In Bearbeitung
  • Abgeschlossen

Wenn das Zahlungs-Gateway nicht mit WC Vendors kompatibel ist, wird der Provisionsstatus auf 'fällig' gesetzt. Wenn das Gateway mit WC Vendors kompatibel ist und die Auszahlung an den Händler ebenfalls abgeschlossen ist, wird die Provision auf 'bezahlt' gesetzt.

Schema der Provisions-Tabelle

Die Provisions-Tabelle ist der Ort, an dem alle Händlerprovisionen protokolliert werden. Marktplatz-Einnahmen werden derzeit nicht in dieser Tabelle protokolliert.

SpaltennameBeschreibung
idDie eindeutige interne Provisions-ID
produkt_idDie Produkt-ID für das Produkt für die Provision
bestell_idDie Bestell-ID für die Provision
verkäufer_idDie Menge des Produkts
gesamt_fälligDies ist die Gesamtprovision für das Produkt, diese beinhaltet keine Steuern oder Versandkosten
mengeDer Gesamtversand für das Produkt, muss von einem kompatiblen Versand-Plugin bereitgestellt werden
gesamt_versandDie Steuer für das Produkt, muss von einer kompatiblen Steuersoftware bereitgestellt werden
steuerDie Steuer für das Produkt, diese muss von einer kompatiblen Steuersoftware bereitgestellt werden
statusDies ist der Provisionsstatus (Bezahlt, Fällig, Storniert, Rückerstattet)
zeitDas Datum und die Uhrzeit, zu der die Provision erfasst wird
Provisions-Tabelle in WC Vendors

WC Vendors Klassen

Wenn Sie Ihre Integration entwickeln, müssen Sie auf die Provisions-Tabelle zugreifen und relevante Informationen über die Verkäufer, Produkte und Bestellungen abfragen. Die folgenden Klassen sind die am häufigsten verwendeten Klassen in Zahlungsgateways, die WC Vendors unterstützen.

KlassennameBeschreibung
WCV_CommissionDiese Klasse behandelt alle Interaktionen mit der oben beschriebenen Provisions-Tabelle.

Methoden, die Sie in Ihrem Gateway verwenden sollten:

WCV_Commission::set_vendor_product_commission_paid(); um zu protokollieren, wann eine Provision bezahlt wurde.
WCV_VendorsDiese Klasse behandelt Methoden im Zusammenhang mit den Verkäufern und ihren Produkten.

Methoden, die in Ihrem Zahlungsgateway verwendet werden, sind:

WCV_Vendors::is_vendor( $user_id ); Ermitteln Sie, ob die angegebene Benutzer-ID ein Verkäufer ist oder nicht.
WCV_Vendors::get_vendor_dues_from_order( $order ); Holen Sie sich die vom Verkäufer geschuldeten Provisionen für die Bestellung.
WC Vendors Klassen, die Sie verstehen müssen

Zahlungsteilung

Wenn Ihre Plattform Split-Zahlungen am Point of Sale unterstützt, dann werden Sie die Aufteilung während der Zahlungsabwicklung implementieren. Dies erfordert, dass Sie die Provision vor der Zahlungsabwicklung berechnen.

Die geteilte Zahlung zwischen Händlern und Marktplatz wird in Pseudocode wie folgt erklärt:

  1. Zahlung vom Kunden einziehen
  2. Bestellung abrufen 
  3. Händlerforderungen aus der Bestellung abrufen 
  4. Händlerforderungen durchlaufen 
  5. Forderungen zwischen jedem Händler und dem Marktplatz aufteilen
  6. Zahlung generieren, um an die Plattform zu senden 
  7. Bei Erfolg den Provisionsstatus auf 'bezahlt' setzen, andernfalls Fehler ausgeben und die Provision als fällig belassen

Der folgende Code kann als Leitfaden für Ihre Zahlungs-Gateway-Integration verwendet werden. Dies ist nicht vollständig oder für die Produktion bestimmt. Dies ist nur ein Leitfaden im Code des obigen Pseudocodes.

Auszahlungen

Der Hauptunterschied zwischen einer Auszahlung und einer geteilten Zahlung besteht darin, dass die Provision bereits berechnet und protokolliert wurde. Das bedeutet, dass Sie nur die Provisions-Tabelle abfragen und dann die Provisions-Tabelle nach Bedarf aktualisieren müssen.

Händlerauszahlungen, wie sie von den meisten Zahlungsplattformen unterstützt werden, werden über einen Zeitplan verwaltet. Dieser Zeitplan kann auf der WordPress-Seite oder auf der Zahlungsplattform-Seite liegen. Wenn Sie die Planung auf der Plattform durchführen und diese dies handhabt, müssen Sie nur die Händlerforderungen an die Plattform senden.

Wie Sie Ihre Auszahlungsoberfläche innerhalb von WordPress und WC Vendors erstellen, liegt bei Ihnen als Entwickler und Plattform. Wir empfehlen, Einstellungen für Folgendes zu erstellen:

  • Zeitplan (täglich, wöchentlich, monatlich)
  • Mindestauszahlungsbeträge
  • Mindestanzahl von Tagen, bevor eine Auszahlung bearbeitet werden kann (dies kann in Bezug auf Rückerstattungen oder Streitigkeiten hilfreich sein).

Eine Händlerauszahlung wird im folgenden Pseudocode erklärt

  1. Auszuzahlende(n) Händler ermitteln
  2. Provisions-Tabelle für alle fälligen Provisionen für die oben genannten Händler abfragen
  3. Auszahlungen für jeden Händler summieren
  4. Auszahlung verarbeiten

Der obige Prozess würde nach Ihrem festgelegten Zeitplan über WordPress abgewickelt werden. Wir empfehlen die Verwendung des Action Scheduler, der mit WooCommerce geliefert wird.

WC Vendors Klassen

KlasseBeschreibung
WCV_VendorsDiese Klasse behandelt Methoden, die sich auf die Händler und ihre Produkte beziehen.

Methoden, die in Ihrem Zahlungs-Gateway verwendet werden, sind:

WCV_Vendors::is_vendor( $user_id ); Ermitteln Sie, ob die angegebene Benutzer-ID ein Händler ist oder nicht.
WCV_Vendors::get_due_orders_by_vendor( $vendor_id); Rufen Sie alle fälligen Provisionen für einen bestimmten Händler ab.
WCV_CommissionDiese Klasse behandelt alle Interaktionen mit der oben beschriebenen Provisions-Tabelle.

Methoden, die Sie in Ihrem Gateway verwenden sollten:

WCV_Commission::set_vendor_product_commission_paid(); um zu protokollieren, wann eine Provision bezahlt wurde.
War dieser Artikel hilfreich?

Verwandte Artikel

Kauf abschließen