Hallo, ist es irgendwie möglich die Paypal-Daten, die in der DoExpressCheckoutPayment.php in die Datenbank geschrieben werden, früher auszuführen? /\*Insert into PayPal\_orders\*/ $sql = "INSERT INTO paypal\_orders (suid,payerId,transactionId,paymentStatus,authorization,booked,price,refunded,currency,stransId, ipn, dateTime) "; $sql .= "VALUES "; $sql .= "('$shopwareUID','$payerID','$paypalTransactionID','$paypalPaymentStatus','$authorization','$booked','$amt', '0','$currCodeType','$transId', '', '".date("Y-m-d H:i:s")."')"; $payment-\>sDB\_CONNECTION-\>Execute($sql);
Problem ist, ich erstelle bei der Bestellung eine XML, diese möchte ich danach weiterleiten lassen. Das geht aber nicht, da die Datei die Paypal Daten nicht bekommt. Heißt, die Datei wird eher erstellt, als die Paypal-Daten in der Datenbank landen. Unvorteilhaft. Ich lasse meine Datei per Hook nach sOrder erstellen. $event = $this-\>createHook( 'sOrder', 'sSaveOrder', 'onOrder', Enlight\_Hook\_HookHandler::TypeAfter, 0 ); $this-\>subscribeHook($event);
Hoffe da kann mir einer von Shopware oder jemand aus der Community helfen.
So, ich hab nun einen Ganzen Tag damit verbracht, um heraus zu bekommen wie ich an diese Paypal Daten komme, bevor der Bestellprozess beendet ist. Meine Antwort fällt Mager aus. ES GEHT NICHT!? Finde es schon etwas “enttäuschend” das die Erstellung der Daten von Paypal erst nach dem speichern der Bestellung “SaveOrder” und nach den Hooks erfolgt. Somit lassen Sich die Daten nicht ohne weiteres erfassen und verarbeiten. Heißt wohl ich muss meine erstellten Bestell-XMLs zwischen speichern und per Cronjob nacharbeiten lassen. Super… Oder hat jemand eine bessere Idee?