it-swarm.com.de

Wie erstelle ich mit WorldPay eine Einstellung für die Rückseiten?

Die Dokumente für WorldPay sind für mich nach stundenlangem Lesen und erneutem Lesen wirklich schwer zu verstehen . (Tatsächlich gaben mir viele der Dokumente die falsche Live-URL und ich musste mich im Internet umsehen und Dinge mit Versuch/Irrtum ausprobieren, um zum Beispiel die Live-URL zu finden.)

Wie erstelle ich mit WorldPay eine Rückseiteneinstellung? Damit meine ich, wenn jemand die Zahlung auf der WorldPay-Website veröffentlicht und dann bezahlt, leitet WorldPay den Käufer bei Erfolg automatisch auf eine Seite auf meiner Website zurück. Ich möchte wissen, wie das geht. Ich glaube, ich habe es unten erraten, bin mir aber nicht sicher, ob es funktioniert?

<?php ?>
<html><head><title></title></head><body>
<form action="https://secure.wp3.rbsworldpay.com/wcc/purchase" method="post">
    <input type="hidden" name="testMode" value="0">
    <input type="hidden" name="instId" value="<?= $this->INST_ID ?>">
    <input type="hidden" name="cartId" value="<?= $this->CART_ID ?>">
    <input type="hidden" name="amount" value="<?= $this->AMOUNT ?>">
    <input type="hidden" name="currency" value="<?= $this->CURRENCY_CODE ?>">
    <input type="hidden" name="desc" value="Photos">
    <input type="hidden" name="MC_success" value="<?= $this->RETURNING_PAGE_ON_MY_SITE ?>">
    <input type="submit" value="Click here for the secure payment form">
</form>
</body></html>

EDIT: Der technische Support von WorldPay gab an, dass die Aktion jetzt " https://secure.worldpay.com/wcc/purchase " lauten muss und der Parameter MC_success nicht funktioniert. Er riet mir, einen wpdisplay-Parameter im Formularbeitrag zu verwenden, damit die Ergebnisseite den Header austauschen und eine Meta-Weiterleitung zurück zu einer Seite auf unserer Site ausführen kann. Ich fragte nach einem Beispiel und er sagte, es gäbe keines. Alles, was er tun konnte, war mich auf dieses verwirrende Dokument aufmerksam zu machen, das das überhaupt nicht wirklich beschreibt. (Ich kann dem technischen Support nichts vorwerfen - er macht nur seine Arbeit mit den schwachen Werkzeugen, die er gegeben hat.)

21
Volomike

Nachdem ich 3-4 Tage verbracht hatte und all die verwirrenden und schlechten Dokumente von Worldpay gelesen hatte, fand ich irgendwie heraus, wie ich zu einer Seite zurückkehren und die von Worldpay zurückgegebenen Antworten verarbeiten kann. Ich wollte einen Datensatz mit Transaktionsdetails in eine Datenbank einfügen. Also suchte ich nach einer Lösung. Nun, hier ist die Lösung, die für mich funktioniert hat:

  1. melden Sie sich bei Worldpay an, öffnen Sie die gewünschte Installation, um sie zu bearbeiten
  2. Aktivieren Sie das Kontrollkästchen "Zahlungsantwort aktiviert?" 
  3. Geben Sie der Seite, die die POST -Daten von worldpay erhalten/verarbeiten soll, "Payment Response URL" an. 
  4. Geben Sie dieselbe URL in "Shopper-Weiterleitungs-URL" ein.
  5. Aktivieren Sie das Kontrollkästchen "Umleitung für Shopper aktiviert".
  6. Aktivieren Sie das Kontrollkästchen "Aktivieren Sie die Kundenantwort". 
  7. Wenn Sie print_r ($ _ POST) (für PHP-Benutzer) für die in "Payment Response URL" eingegebene URL verwenden, können Sie alle von Worldpay zurückgegebenen Details sehen. 
  8. Nach der Verarbeitung können Sie die Meta-Aktualisierungsmethode verwenden, um den Benutzer auf eine andere Seite umzuleiten, oder Sie können die Danksagungsmeldung an den Benutzer auf derselben Seite drucken.

Ich weiß, dass dieser Thread mindestens 1 Jahr alt ist, aber falls jemand dies hilfreich findet, poste ich meine Lösung hier. 

Bearbeiten: "WorldPay Payment Response Guide" Dokumentation

Edit: Hier ist ein Screenshot meiner Einstellungen, die für mich funktionierten screenshot of my settings

31

Kann total sympathisieren, das war ein Albtraum für mich. Ich habe den MC_success -Parameter zuvor noch nicht verwendet, aber soweit ich weiß, dass Sie keine direkte Umleitung durchführen können, muss nach der Bezahlung eine Worldpay-Seite angezeigt werden. Sie können diese Seite jedoch anpassen.

Sobald die Zahlung erfolgreich ist (oder nicht), zeigt Worldpay dem Benutzer eine HTML-Seite an. Diese HTML-Seiten werden in Ihrem Worldpay-Kontrollfeld gespeichert. Wenn Sie sie anpassen möchten, müssen Sie hier eine neue Datei hochladen. Die bei Erfolg und Misserfolg der Transaktion angezeigten Dateien sind resultY.html und resultC.html.

Sie müssen sich das Advanced Customizing Guide anschauen und - resultY.html oben rechts in diesem Handbuch suchen. Dies wird Ihnen helfen.

In diesen Dateien ersetzt Worldpay automatisch bestimmte Tags wie <wpdisplay item=cartId> und <wpdisplay item=banner default=""> für tatsächliche Daten. Ich würde mich bei Ihrem Worldpay-Kontrollfeld anmelden und die aktuell verwendeten Dateien herunterladen und von dort aus anpassen.

In einer Installation, die ich habe, füge ich einfach eine Zeile in meine resultY.html-Seite ein, wie die folgende ...

<p><a href="http://example.com/worldpay/cartid/<wpdisplay item=cartId>">Redirect back to my shop</a></p>

... die den Benutzer mit seiner cartId in der URL zu meiner Site zurückbringt, von der ich ihre Bestelldaten abrieche und eine eigene Erfolgsseite zeige. Sie können jedoch auch eigene Tags erstellen, indem Sie zusätzliche Post-Felder in Ihrem Beispielformular darüber senden. Den Namen der Variablen muss MC_ vorangestellt werden. Sie können sie jedoch in Ihre resultY.html-Datei einfügen. Ie.

<form action="https://secure.wp3.rbsworldpay.com/wcc/purchase" method="post">
    <input type="hidden" name="testMode" value="0">
    <input type="hidden" name="instId" value="<?= $this->INST_ID ?>">
    <input type="hidden" name="cartId" value="<?= $this->CART_ID ?>">
    <input type="hidden" name="amount" value="<?= $this->AMOUNT ?>">
    <input type="hidden" name="currency" value="<?= $this->CURRENCY_CODE ?>">
    <input type="hidden" name="desc" value="Photos">

    <input type="hidden" name="MC_myText" value="This is my custom text">

    <input type="submit" value="Click here for the secure payment form">
</form>

Fügen Sie in Ihrer resultY.html-Datei einfach das Tag <WPDISPLAY ITEM=MC_myText> ein. Sie müssen sich dessen bewusst sein, dass alle Ihre Formularfelder für einen Benutzer sichtbar sind, wenn er die Quelle Ihrer Zahlungsseiten anzeigt. Daher ist es eine schlechte Idee, einen gültigen MC_downloadLink für einen wertvollen Download zu verwenden.

Schauen Sie sich diese Seiten an, sie sind die nützlichsten im Customizing-Handbuch:

Ich hoffe, das war ein bisschen hilfreich, wenn Sie Fragen haben, fügen Sie einfach einen Kommentar hinzu. Viel Glück!!

15
Chris

Die Bearbeitung von resultY.html ist nicht unbedingt erforderlich. Sie können den Zahlungsseiten-Editor mit der Funktion "Zahlungsantwort" überspringen.

Geben Sie in den Installationseinstellungen eine URL für ein Skript auf Ihrem Server an, und WorldPay POST die folgenden Parameter, sobald eine Zahlung autorisiert wurde (oder der Käufer klickt auf der Zahlungsseite auf Abbrechen): http://www.worldpay.com/support/kb/bg/paymentresponse/pr5201.html

Wenn Sie auch die Einstellung "Antwort des Käufers aktivieren" aktivieren, lädt WorldPay den HTML-Code des von Ihnen angegebenen Skripts herunter und verwendet diesen als Ergebnisseite (auf seinem eigenen Server gehostet). (Wenn Sie möchten, dass Bilder sicher gehostet werden, müssen sie im Zahlungsseiten-Editor hochgeladen werden.)

Auf diese Weise können Sie eine dynamische Ergebnisseite erstellen, ohne resultY.html zu verwenden (OSCommerce und möglicherweise verwenden andere Einkaufswagen diese Methode, um die Ergebnisseite anzupassen.)

Ich glaube, es gibt kein Problem mit der Verwendung einer META-Aktualisierung auf Ihrer Ergebnisseite, sofern dies nicht irreführend ist (Sie müssen dem Käufer das Ergebnis der Zahlung mitteilen und sie beispielsweise nicht sofort auf Ihre Homepage senden).

6

Ich denke, Worldpay erlaubt schließlich Shopper Response durch Meta-Aktualisierung zu Ihrer Website zurückzuleiten.

Alles, was Sie tun müssen, ist die HTML-Antwort von Ihrem serverseitigen Rückruf zu generieren.

1
Sxc

@Chris hat diese Frage wirklich beantwortet, aber ich habe es letztendlich getan. Ich habe zwar den Parameter MC_success verwendet, aber so eingestellt:

<input type="hidden" name="MC_success" value="Click here to return to the merchant: <?= $this->RETURNING_PAGE_ON_MY_SITE ?>">

Dann muss der Händler seine resultY.html-Seite in WorldPay bearbeiten und diesen Parameter irgendwo in den Hauptteil einfügen:

<div><strong><WPDISPLAY ITEM=success></strong></div>

Auf der erfolgreichen, auf WorldPay gehosteten Zahlungsantwortseite wird dann Folgendes angezeigt:

Hier klicken, um zum Händler zurückzukehren: http://example.com/my-success-return-link-here

Nun wird nicht jeder Kunde wissen, wie das geht. Daher habe ich in meinem Zahlungs-Gateway, das ich baute, eine E-Mail an den Administrator geschickt, den jemand von WorldPay bezahlt hat und dass er die Fotos manuell über die Admin-Oberfläche unseres Produkts an den Kunden senden soll.

Außerdem muss man dies an die richtige Aktions-URL senden, die ich in meinem ursprünglichen Beitrag im AbschnittEDITkorrigiert habe.

Beachten Sie, dass wir keine automatische Weiterleitung durchführen können. In der Tat hat WorldPay eine strikte Verbotsrichtlinie, die auf dieser Seite rot dargestellt ist: 

http://www.worldpay.com/support/kb/bg/paymentresponse/pr5402.html

"Warnung: Die automatische Umleitung mithilfe der Antwortfunktion für Einkäufer ist verboten und führt dazu, dass ein Fehler protokolliert wird und möglicherweise die Funktion ausgesetzt wird."

0
Volomike