Paypal Versandadressenfehler

12

Ich versuche, meinen Shop mit PayPal Sandbox zu testen . Ich erhalte 2 verschiedene Fehler in 2 verschiedenen Situationen.
1. Alles funktioniert gut, bis die Bestellung bei PayPal abgeschlossen ist. Dann bekomme Nachricht:

Es tut uns leid, mit PayPal können Einwohner der USA keine Einkäufe an (irgendwo) senden.

2. Die zweite Situation ist, wenn ich dann die Versandadresse meines Käufers in US ändere. Ich erhalte folgende Fehlermeldung auf der ersten Seite in Paypal:

Zahlung kann nicht verarbeitet werden. Bitte wenden Sie sich an den Händler, da die vom Händler angegebene Lieferadresse ungültig ist und der Händler beantragt hat, dass Ihre Bestellung an diese Adresse gesendet wird.

Ich fand hier heraus , dass dies für viele ein Problem zu sein scheint. Von hier aus habe ich herausgefunden, dass es etwas mit der address_override- Methode zu tun gibt , und hier wird vorgeschlagen, sie zu deaktivieren .
Gibt es eine Möglichkeit, es in Magento auszuschalten? Ist es sicher, es auszuschalten? Warum ist es überhaupt dort? oder welche anderen lösungen gibt es da draußen? :

Ich fand address_override Methode in Magento an

\ app \ code \ core \ Mage \ Paypal \ Model \ Api \ Standard.php Zeile: 238 $ request ['address_override'] = 1;

Änderte es auf "0" und jetzt funktioniert Paypal Sandbox. Keine Fehler mehr. Aber wie kann ich das tun, ohne die Magento-Kerndateien zu ändern? und ist es sicher?

ruuter
quelle
1
Ich möchte andere, die unter Paypal-Tests leiden, auf etwas mehr hinweisen. Nach dem Deaktivieren von address_override hat es funktioniert, aber dann war der Status "Zahlungsüberprüfung" in Paypal deaktiviert. Es hat sich herausgestellt, dass Sie in den Magento-Einstellungen dieselbe Währung haben müssen wie im Paypal-Sandbox-Konto. Andernfalls löst paypal keine IPN aus, um die Bestellung abzuschließen.
Ruuter

Antworten:

7

Sie können Folgendes tun, wenn Sie die Kerndateien nicht ändern möchten:

  1. Ordner erstellen Mage/Paypal/Model/Apiunter/app/code/local/
  2. Kopieren Sie die Datei Standard.phpvon/app/code/core/Mage/Paypal/Model/Api
  3. Fügen Sie die Datei Standard.phpin ein/app/code/local/Mage/Paypal/Model/Api
  4. Ändern Sie die Zeile 238 von
$ request ['address_override'] = 1;

zu

$ request ['address_override'] = 0;
Omar Faruk Sharif
quelle
7

Der address_overrideParameter dient dazu, die Versandadresse festzulegen, die Ihr Magento-Shop an Paypal als Versandadresse sendet, anstatt die Versandadresse des Kunden, die an der Seite von Paypal gespeichert ist.

Wenn auf gesetzt address_overrideist 1, was in Magento der Fall ist, überprüft Paypal die Lieferadresse. Wenn der Parameter auf gesetzt ist, 0ist dies vermutlich nicht der Fall. Stellen Sie also sicher, dass Sie eine gültige und gut formatierte Adresse an Paypal senden.

Ich bin auf dieses Problem gestoßen, weil ein Statuswert fehlt. Paypal akzeptiert nur staatliche Abkürzungen wie "CA" für "California". In anderen Ländern sind möglicherweise standardmäßig keine Bundesstaaten in Ihrer Magento-Installation verfügbar, z. B. in Mexiko.

Haben Sie Versandadressfelder in Ihrer Kasse angepasst?

mattsches
quelle
2

Sehen Sie sich diese Antworten zum Stapelüberlauf an:
/programming/5978153
/programming/11281543

Grundsätzlich ist es eine schnelle und schmutzige Methode, die gesamte Datei in Ihre app/code/local/MageWelt zu kopieren. Für Upgrades wäre es jedoch noch besser, wenn Sie nur die einzige Funktion überladen könnten.

Falls noch nicht geschehen, verwenden Sie bitte Github für die Versionskontrolle. Es hat mich mehr als einmal gerettet! Sie können alle Änderungen problemlos nachverfolgen, auch wenn Sie fehlerhaft sind und Kerndateien bearbeiten.

Chris K
quelle
Ich bin überrascht, dass es keinen besseren Weg gibt, um dies zu tun, ganz zu schweigen von der Verrücktheit dieses Problems, das in Magento an erster Stelle steht. Es sollte eine Option im Back-End geben, wenn solche Fehler seit einiger Zeit häufig vorkommen. Ich schätze, ich werde den Dirty-Local-File-Ansatz verwenden, da das Schreiben eines neuen Moduls für den Moment ein bisschen zu viel zu sein scheint.
Ruuter
Magento überrascht mich nicht mehr.
Chris K
1
das klingt nicht vielversprechend: /
ruuter