Aktiviert, aber dennoch "Die angeforderte Zahlungsmethode ist nicht verfügbar". Nur als registrierter Benutzer
-
16-10-2019 - |
Frage
Ich habe mehrere Zahlungsmethoden aktiviert und diese werden auf der Checkout -Seite angezeigt. Unabhängig davon, welche Option ich magento auswähle, kehrt immer zurück:
Die angeforderte Zahlungsmethode ist nicht verfügbar.
Das Problem tritt nur auf, wenn ich einen registrierten Benutzer verwende. Gast arbeitet gut.
Irgendwelche Ideen?
Lösung
Probieren Sie Folgendes aus (bestellt durch die Anstrengung, die es dauern würde, wenn ein Schritt Ihnen nicht hilft, nehmen Sie die nächste an).
- Überprüfen Sie die erlaubten Länder, die Sie für jede Zahlungsmethode im Administrator -Backend konfigurieren können.
- Überprüfen Sie die Fehlerprotokolle (
system.log
,exception.log
Nachdem Sie sie aktiviert haben) - Debuggen in die
\Mage_Payment_Model_Method_Abstract::isAvailable()
Methode, um zu sehen, was los ist.
Andere Tipps
Es gibt zwei Orte, an denen diese Ausnahme ausgelöst wird:
/app/code/core/Mage/Payment/Model/Info.php:83
und
/app/code/core/Mage/Sales/Model/Quote/Payment.php:151
Ich würde sagen, die Ausnahme stammt aus dem zweiten Teil. Wenn ich es richtig verstehe, ist der erste Teil ein echter Fehler, der zweite ist ein fehlgeschlagener Test.
Wie @alex sagte, überprüfen Sie \Mage_Payment_Model_Method_Abstract::isAvailable()
, Es gibt ein anderes "Problem", das passieren kann: wiederkehrende Profile. Versuchen Sie, ein Abonnement zu kaufen? Vielleicht kann die Methode dafür nicht verwendet werden.
Hast du xdebug? Es ist ein großartiges Werkzeug für solche Probleme, einfach in die isAvailable()
Methoden und prüfen Sie, wo der Rückgabewert auf False eingestellt ist.