Πρόσφατα χρησιμοποιήσαμε την έτοιμη επέκταση OpenCart v3.x, για πληρωμές με κάρτα που παρέχει η Revolut.
Κατά την μεταφορά στην επιλογή πληρωμής του checkout, η επέκταση επικοινωνεί μέσω API με τη Revolut και στέλνει κάποια βασικά στοιχεία συμπεριλαμβανομένου και του email του πελάτη.
Σε καταστήματα που χρησιμοποιούν OnePage/Quick checkout, με τον πελάτη ως επισκέπτη, όπου δεν έχει προλάβει να συμπληρωθεί το email του σε προηγούμενο βήμα, όπως γίνεται στο native checkout του OpenCart, η επικοινωνία με το API γίνεται με το που φορτώνει η σελίδα του checkout και σε κάθε refresh του checkout, όπως κατά τη διάρκεια συμπλήρωσης πεδίων και επιλογών.
Αν δεν υπάρχει ένα ορθά μορφοποιημένο email, το API πετάει σφάλμα "Error: Bad Request - Request is invalid! Please try again or contact us for assistance."
Για την επίλυση του προβλήματος στο αρχείο catalog/controller/extension/payment/revolut.php, γραμμή 28
Πριν το:
if ($order_info) {
Προσθέστε αυτό:
if (!filter_var(isset($order_info['email']) ? $order_info['email'] : '', FILTER_VALIDATE_EMAIL)) {
$order_info = array();
}
OpenCart-Hellas.gr - Administrator & Founder
PeoplesCode.com - Επίσημος Αντιπρόσωπος OpenCart | Extensions - Φιλοξενία - Αναβάθμιση - Μεταφορά - Τεχνική Υποστήριξη OpenCart
Ελληνική μετάφραση & Επεκτάσεις OpenCart