Bestelldaten aus Bestellprozess erweitern und auslesen

Da ich neu hier bin - ein großes “HALLO” an alle :slight_smile:

Und direkt zu meinem Problem:

Ich versuche eine Zahlungsschnittstelle für einen externen Zahlungsanbieter zu schreiben. Ich muss dem Zahlungsprovider bereits Daten aus “Hiddenfields” mitliefern (Bestell-ID, Währung, KD-Nr. usw.), bevor ich nach erfolgreicher Zahlung zurück zum Shop komme und quasi dann “irgendwie” die Bestellung abschließe.

[B]Zusammenfassung:[/B]

  1. Ich muss den Kunden mit einem Formular (in dem Kreditkarteninformationen - zumindest aber die oben genannten Daten stehen) auf den Zahlungsanbieter weiterleiten -> via PHP existiert (meiner Meinung nach) keine vergleichbare Möglichkeit die Daten zu Posten UND den Benutzer weiter zu leiten.

  2. Ich muss den Kunden vor Bestellabschluss die Zahlung tätigen lassen, so dass bei erfolgreicher Zahlung die Bestellung gebucht wird und sonst nicht.

  3. Ich muss also den Bestellprozess zwischen Schritt 3 (Zahlungsart auswählen) und 4 (Bestellung bestätigen) abändern und den Kunden zum Zahlungsanbieter leiten - Ihn anschließend wieder in den Bestellprozess einklinken.

[B]Meine Überlegung war die:[/B]

Ich fange bei Schritt 3 (Zahlungsart wählen) die Zahlungsart ab. Wenn die gewünschte Zahlungsart ausgewählt wurde, manipuliere ich den “Weiter zum nächsten Schritt”-Button bzw. das Formular und ersetze das Action-Ziel durch den Zahlungsanbieter -> und leite je nach Zahlungerfolg zurück zu Schritt 3 oder 4.

Jetzt suche ich die Klassen, die ich so überschreiben kann, dass diese Überlegung ausführbar wird.

Mit dem Paymentgateway (wie im Tutorial beschrieben) komme ich da nicht weit. Momentan schaffe ich es nichteinmal die gewählte Zahlungsart abzufragen.

Also - ich bin wirklich etwas ratlos :frowning:

Ich hoffe Ihr habt die Ideen und vielleicht auch einen besseren Lösungsansatz für mich.

wirklich niemand?

Ich schaffe es momentan nicht einmal auf Schritt 4 die Formulardaten aus Schritt 3 zu lesen… :mad:

Echt zum verzweifeln… :frowning: