Livezilla

Certified Partner and
PrestaShop Developer for:

תיקון בעיות ב Paypal PrestaShop

תיקון בעיות Paypal

בדף זה נכתב באנגלית, ראה את הגירסה האנגלית את השינויים הקוד הנכון.

העצות הבאות נכתבו עבור PrestaShop 1.2 ו - 1.3, אם אתה משתמש כל גרסה של PrestaShop 1.4, הקפד לקבל את הגירסה האחרונה של המודול paypal (זמין חינם http://addons.prestashop.com/en/payments- gateways/1748-paypal.html)


1) הבעיה הנפוצה ביותר עם ​​הזמנות paypal לא להופיע קורה כאשר paypal לא יכול לגשת לשרת שלך, הקובץ / תיקייה הרשאות אינם נכונים, או אם חשבון PayPal שלך אינו מאומת.


בדוק את התנאים הבאים נכונים:

· החנות שלך אינו במצב תחזוקה (אם אף אחד לא יכול לגשת אל האתר שלך, אתר paypal לא יוכלו גם).

· אין הגנה באמצעות סיסמה על האתר שלך (מאותה סיבה לעיל).

· נסה לפתוח בדף זה מהדפדפן - http://www.yoursite.com/modules/paypal/validation.php,
אם אתה מקבל הודעת שגיאה (שגיאה 500, הדף לא ניתן להציג), מאשר זה אומר שיש לך בעיה רשות הקובץ. סביר להניח, ספריית PayPal או את ספריית מודולים כולה מוגדרת 777 ו המארח שלך אינו מאפשר זאת (זה לא בטוח), נסה לשנות את זה 755. אתה יכול גם לבדוק ביומן שגיאה של השרת (מ cPanel שלך) כדי לקבל את השגיאה המדויקת.

· ודא חשבון PayPal שלך יאומת, אחרת עסקאות לא מקבלים אישור אוטומטי PrestaShop תציג שגיאה תשלום.


2) במצב הנפוץ ביותר Sandbox בעיה עם מודול paypal הוא כי הצווים אינם מופיעים על החנות.

הסיבה לכך היא מודול paypal מוגדר כעת מעלה כדי ליצור פקודות רק אם התשובה שהוא מקבל מאתר paypal הוא "גמר" עם זאת, כאשר פועל במצב ארגז חול, PayPal שולח התגובה של "בהמתנה".

יש לנו לקרוא קצת תיעוד על שינוי חשבון ארגז החול לשלוח תגובה "הושלם", אך גם לאחר שניסה את זה, תשלומי עדיין הופיע בתור הממתינים.


על מנת לתקן את זה, לבצע את השינוי הבא / מודולים / paypal / validation.php שורה # 80.

זה יאפשר צו עם מצב "בהמתנה" לעבור, אבל רק במצב ארגז חול.


elseif ($ _POST ['payment_status']! = 'הושלם')

יש לשנות את

elseif ($ HTTP_POST_VARS ['payment_status'] = 'הושלם' & & (Configuration::! לקבל ("PAYPAL_SANDBOX ') | | $ HTTP_POST_VARS [' payment_status '] =' ממתינים '))


3) בעיה נוספת נפוצה היא כי ההוראות שנמצאות במצב חיים לא להופיע BackOffice, אבל הלקוח עדיין מקבל טעון.


לעתים קרובות זהו המקרה כי התגובה paypal לא "הושלם".

יכול להיות שיש סיבות רבות לכך, אלה העיקריים שמצאנו הם:

א) מטבע ברירת המחדל שלכם PrestaShop אינו תואם את המטבע paypal שלך.

ב) התשלום מתבצע באמצעות Echeck או בשיטות אחרות אשר דורשים זמן רב יותר ברור.

ג) Paypal מחליטה שהם צריכים לחקור את העסקה.


  • באפשרותך לשנות את קוד לשלוח לכם הודעת דוא"ל בכל פעם עסקה כזה קורה, אז אתה יכול לפחות לדעת על זה קשר עם הלקוח כדי ליידע אותם על המצב.


כדי לעשות זאת, לשנות את הקוד / paypal / validation.php (שורה # 80) מ

elseif ($ HTTP_POST_VARS ['payment_status'] = 'הושלם' & & (Configuration::! לקבל ("PAYPAL_SANDBOX ') | | $ HTTP_POST_VARS [' payment_status '] =' ממתינים '))
$ שגיאות .= $ paypal-> getL ("תשלום').$_ POST ['payment_statu
s'].'';

עד

elseif ($ HTTP_POST_VARS ['payment_status'] = 'הושלם' & & (Configuration::! לקבל ("PAYPAL_SANDBOX ') | | $ HTTP_POST_VARS [' payment_status '] =' ממתינים '))

{
$ שגיאות .= $ paypal-> getL ("תשלום').$_ POST ['payment_status'].'';
דואר ("your@address.com", "תשלום error אימייל", "היתה בעיה עם תשלום, מתחת היא לחזור מ paypal" print_r ($ HTTP_POST_VARS, נכון).);
}