Jump to content

[SOLVED] Paypal payment not working - urgent, pls help.


71newyorker

Recommended Posts

We upgraded to prestashop 1.6.0.11 (from 1.4.7)

 

The website worked perfectly including paypal, we received paypal payments and orders so its 100% fine. 

A few days later, our hosting company (hostgator) said our CPU usage went over their limit and they put a restriction on our account for 24 hours, which meant the website would be cached and only updating sometimes (every 6 hours i believe)

 

While in cache mode our website was full of errors and bugs, the most important one being PAYPAL MODULE STOPPED WORKING. 

 

After 3 days (they were busy according to them) they lifted the restrictions on our hosting. But the paypal problem remained. 

 

PAYPAL PROBLEM: the customer can go through the checkout, choose paypal, go to the paypal screen, login, everything is fine EXCEPT when they finalize payment, they go to a blank screen with the url like thi

 

The payment actually goes through though, the payment lands in our paypal account. However in the backoffice there is no sign of the order what so ever.

We contacted paypal and they did a test as a test customer and the payment went through but again they landed on a blank screen with a url similar to the above and the order was NOT generated in the backend. Paypal said there is an issue with the paypal module but i guess thats where their customer service stops :(

 

Can anybody please help us? Our business is almost non operational now because of this.

 

We are also having an issue with address (to be exact ''STATES'') not being sent to paypal. When the customer lands on the paypal payment page their state is missing. However we have had some transactions go through where the state was showing in paypal payment page correctly and we still had the same error so im not sure if thats the issue or not.

If anyone can help it would be HUGELY appreciated. 

 

Many thanks. 

j

 

 

 

 

Edited by 71newyorker (see edit history)
Link to comment
Share on other sites

Update 1: Our web developer is also asking for help in understanding why this code is displaying like this below. The payments are going through but the orders are not being created in back office. 

 

(!$ppec->currentOrder)
   $ppec->logs[] = $ppec->l('Cannot create order');

 

Update 2: Also when we got the module returning a paypal response (the customer placed an order, went to paypal it said this:

 

 

<b>PayPal response:</b>
TIMESTAMP -> 2015-01-22T09:29:41Z
INSURANCEOPTIONSELECTED -> false
SHIPPINGOPTIONISDEFAULT -> false
PAYMENTINFO_0_TRANSACTIONID -> 5UJ33971C13896525
PAYMENTINFO_0_TRANSACTIONTYPE -> cart
PAYMENTINFO_0_PAYMENTTYPE -> instant
PAYMENTINFO_0_ORDERTIME -> 2015-01-22T09:29:40Z
PAYMENTINFO_0_AMT -> 329.00
PAYMENTINFO_0_FEEAMT -> 26.19
PAYMENTINFO_0_SETTLEAMT -> 8.55
PAYMENTINFO_0_TAXAMT -> 0.00
PAYMENTINFO_0_CURRENCYCODE -> PHP
PAYMENTINFO_0_EXCHANGERATE -> 0.0282618
PAYMENTINFO_0_PAYMENTSTATUS -> Completed
PAYMENTINFO_0_PENDINGREASON -> None
PAYMENTINFO_0_REASONCODE -> None
PAYMENTINFO_0_PROTECTIONELIGIBILITY -> Eligible
PAYMENTINFO_0_PROTECTIONELIGIBILITYTYPE -> ItemNotReceivedEligible,UnauthorizedPaymentEligible
PAYMENTINFO_0_SECUREMERCHANTACCOUNTID -> 3FWM58ZE6EEN4
PAYMENTINFO_0_ERRORCODE -> 0
PAYMENTINFO_0_ACK -> Success
Cannot create order
Link to comment
Share on other sites

Hi, thanks for pm'ing me to look.  I am not sure how much help I can be as these are tricky even when we have access to files etc.

 

check that you have correct order statuses, back office-->orders-->status.

 

besides clear 'all' cache you may want to consider just uninstall/delete existing paypal and then install current version of paypal module either us/canada/mex or eu depending on your location.

 

this may also be a good time to upgrade your hosting package and/or company.

Link to comment
Share on other sites

To reinstall PrestaShop, you could use a different database, or, if you only have one, use a different Prefix (Standard "PS_" maybe change to "TMP_" or so.). After installation, we can add the (product) image files and reconnect PS with the old database:

 

Pre-work:

If you have a custom Theme, or made any changes, Re-installing PrestaShop may void the changes. Then either reinstall the custom theme, or make the customisations again where needed in core files.

To backup  (i.e. export) your current theme, see process here

To check if you made any changes to core files, by going to Back Office -> Advanced Parameters -> Configuration Information. Here you see a list of modified files). Print this list for reference and give to Developer.

 

 

 

Process:

1) Backup all your files

2) Backup your current database (Best using your cPanel->phpMyAdmin app). (Check the resulting file if it seems complete)

3) Backup your /img folder separately, (or rename to /img_orig    )

4) Backup your /config folder separately (or rename to /config_orig   )

 

5) Reinstall PrestaShop. use Prefix TMP_

 

After successful installation,

6) rename the newly installed /img folder to /img_new_empty

7) COPY the /img_orig folder back to /img   (By copying the folder, you keep the original backup as well...)

8) rename the newly installed /config folder to /config_new_TMP_prefix  or so.

9) COPY the /config_orig folder back to /config (By copying the folder, you keep the original backup as well...)

10) Login into back office and see if it works. See if you can see the product images etc.

11) Open front page of your shop. See if you see all images etc.

12) Check if PayPal is lates version (3.8.1) Otherwise, update.

13) Try if Paypal works

14) Try if rest works as before.

15) If you had customised any files, install your (exported) custom theme, (and make any needed additional customisations in core files you might have changed)

16) Check if all extra modules are still working.

 

I think that's about it. I hope I didn't forget anything... If It doesn't work, restore your backup and backup of your database and then we have to think further what we can try...

 

 

pascal.

Edited by PascalVG (see edit history)
  • Like 1
Link to comment
Share on other sites

Hi Kris,

 

Glad I could be of help :-)

Thanks for the feedback, and again, happy selling.

 

Just for my knowledge:

- did you update the PayPal to the latest version before you reinstalled it or not?

- Do you use the latest version now?

 

Just curious...

 

thanks,

Pascal.

  • Like 1
Link to comment
Share on other sites

One more update

 

I've noticed when we did the fresh upgrade/install of prestashop and paypal worked perfectly i remember going to modules > positions and clicking LIVE EDIT

 

in the live edit i remember thinking ''hmm interesting, the paypal module is hooked in the homepage and a lot of other pages'''. In fact most pages i viewed in LIVE EDIT mode (i think) had the paypal module hooked into the page

 

When i checked now in LIVE EDIT, i cant see the paypal module hooked anywhere. 

 

However in the backoffice modules paypal module IS installed. 

 

And as i said in my previous post ''One last note, when i go to Back Offoce > Modules > Positions > and click the ''Show'' drop down tab at the top of the lists of modules, paypal is not there?''

Link to comment
Share on other sites

ok maybe too many updates, apologies but i think its worth it. 

 

So in my back office >  modules > Positions > if i selected the drop down at the top ''SHOW'', its suppose to show me every module i have installed. 

 

I stated in my previous post the paypal module doesn't show in the list, even though its installed, also doesnt show in LIVE EDIT in any hooks

 

BUT, in the ''SHOW'' drop down, the drop down options looks like this (the first 4)

 

All Modules

-

 

1 click upgrade

Advertising Block

 

 

Notice on the 3rd line there's a blank space, i clicked the blank space, it goes to the paypal hooks? This seems to be something to do with the issue?

Link to comment
Share on other sites

And last one, i wont update again tonight i promise. 

 

Regarding my above posts. 

 

Back office > Modules > Positions > dropdown box at the top ''SHOW'', paypal module is not showing as ''paypal'' but instead showing as a blank space.

 

When i click the blank space and go to the page where i can see all the hooks/positions for paypal, theres an option at the top, a tick box, next to the drop down, that says ''display non positional hooks''

 

before i click that, the paypal module has 8 hooks, after i click the tick box, paypal module shows in 13 hooks (meaning 5 are non positional)

 

One of the non positional hooks for paypal is ''displayPaymentReturn'' 

 

Considering our problem is that customers after paypal payment are going to blank screen, my non technical brain believes this could be the cause of the problem?

 

Problem now is, if it is the cause, how do we fix it? 

Link to comment
Share on other sites

Also i can confirm in the hooks section, it looks like the hook ''displaypaymentreturn'' has dissapeared, the hook no longer exists. 

 

I wonder if when our developer starts working on the header he is somehow removing by accident this hook or they looks of it several hooks?

 

both times this has happened in the same sequence. 

 

Fresh install of prestashop 1.6.0.11 > paypal works perfectly > then developer starts to work on the frontend header section  (babyoutlet.ph) changing the menu bar colors and design and adding links to the grey bar at the very top of the website and somewhere during the 1 day process paypal stops working and several HOOKS completely dissapear from our website, including the ''displaypaymentreturn'' hook. This exact sequence has happened twice now. 

Link to comment
Share on other sites

Kris,

try two things:

1) Compare the current header with the (hopefully) backed up file just after reinstalling (i.e. fully working version) and see if there's any tiny piece of code missing or added which makes the file stop being processed (fully). Maybe a ';' or something else, anything that creates an error. N.B. To compare the files easily, you could use some site like quickdiff.com. It will show in red and green the lines that are different.

 

2) Did you try to Uninstall/reinstall (or reset) the PayPal module? Did that do anything useful?

 

To be honest, I expect some problem similar to option 1...

 

Let me know.

 

My 2 cents,

Pascal.

Link to comment
Share on other sites

Also, maybe check the timestamps of the files your developer touched and see which files he touched AFTER the last incoming PayPal payment (hopefully you had quite some coming in over the day...). This may narrow down the 'quest for our answers'...

 

pascal

Link to comment
Share on other sites

Hi Pascal, 

 

interesting, on the day he was working and everything went wrong i remember turning on the cache to make sure its performing nicely with the smarty cache turned on and i noticed the whole website was pushed down 1 line because at the very top of the website there was a blank white row with a few characters in the top left of the website, something like '&-:'

 

Our developer starts work in a few hours so i'll ask him to compare the code of the headers with quickdiff.com and check the timestamps. 

 

Many thanks for the recommendations, will update the forums shortly. Cheers, kris.

Link to comment
Share on other sites

Thank you El Patron for the screenshot.

 

PASCAL - Thank you for the tips again :) :) it worked! (with a few catches explained below)

 

 

Our developer did what you advised, 

 

1) He installed our old header files to our live website. (from when paypal was working)

 

2) The site didn't work for a few minutes, he mentioned something about left column too? But we have a bit of a communication barrier with different languages etc so im not sure what he meant but in summary after a few minutes of installing the old header paypal worked again! When we went to modules > positions ..... the drop down menu at the top no longer displayed paypal as a empty blank space, but instead actually said ''paypal'' in the drop down like it is suppose to. So it was clear something had gone wrong before and was no fixed. 

 

3) then he started going through each change to the header that he had made before, checking after each change that paypal was working still

 

NOTE: Our developer (as your suppose to i believe?) always works with the ''SMARTY CACHE'' turned OFF. 

 

4) after 30 minutes or so he had put back piece by piece the header to its current design and paypal still worked, never stopped working through the whole process of rebuilding the header to our current design. 

 

5) so we thought ''great!!, its working now!'', we couldn't quite identify why it stopped working but re-installing the old header and then building our design again fixed paypal. So it now worked again :)

 

6) when it was all fixed and i said bye to our developer and informed him  ''ill turn back on the smarty cache''. When i turned it on, i did a test order, and paypal was once again broken. Customer would be presented with a blank screen after payment and suprisingly our OTHER payment module ''universal payment'' which has always worked perfectly was now ALSO doing the exact same thing, eg after completing payment it would present the customer with a blank screen, in the back office the order appeared but had no products inside the order and had no STATUS.

 

7) So we turned SMARTY cache OFF again and paypal worked again (and universal payment module). So for us, i can confirm SMARTY cache is breaking our paypal and checkout. 

 

Ill post our cache set up below, Thanks for your Pascal its good its working again :) As this is fixed technically, i'm going to post a new thread about why smarty is breaking paypal and checkout. 

 

Cheers, Kris. 

 

our current cache set up (this set up = working paypal, working site)

 

Smart Cache

 

template compilation  = Recompile templates if the files have been updated

 

Cache = NO (off)     (when this was on we used caching type: Mysql)

 

 

 

CCC (combine, compress and cache)

 

Everything is set to ''YES'' except ''compress inline javascript in HTML'' which is set to no.

 

 

 

Caching

 

Use cache = YES

Caching System = File system

Edited by kayb100 (see edit history)
Link to comment
Share on other sites

Hi Guys,

 

It's kind of not working again :( sigh.

 

There seems to be an issue with cache.

 

As of now, paypal module is working sometimes, and sometimes not? Weird! We can fix it almost instantly by simply turning off cache (the top cache) and turning on force compile for a few minutes. Then when we try to do a paypal order with sandbox or live account paypal works perfectly again.

 

When paypal doesn't work correctly it actually does create the order in the back office (which is better than what was happening before) but the order has no status attached to it and has no products in the order.

 

Really confused as to how it can be working sometimes and other times not and also by the fact that turning on force compile and turning off cache for a few minutes fixes the problem. We dont actually make the order with force compile on, we just leave it on for a few minutes, refresh our browser our few times (clear our browser cache), then we put all the cache and force compile settings back to the way they should be and then do the order again and it works.

 

Any ideas what this could be?

Link to comment
Share on other sites

UPDATE:

 

I think i have found the problem. i just studied the 3 paypal orders we had this morning.

 

1 paypal order/payment performed perfectly, everything went perfect (lets call this order A

 

2 paypal order/payment performed wrong, (lets call this order B and C) these ones that went wrong eg, customer went to blank screen, order and payment went through but had no status attached to them and no products inside them.

 

 

A quick brief - when im doing test orders using my own customer account we have been having this issue (ever since we upgraded prestashop) where if i set my STATE as New York, it will save, but when i come back to it later it will have gone back to CHICAGO. Lots of accounts are stuck on the STATE Chicago (im just using these cities as example)

 

There is something wrong with one of the states that making lots of customers accounts STICK to the state chicago. Even as i check now, my customer account address has gone back to showing state as CHICAGO (even though i have changed it 20 times to other states)

 

The cause/problem -

 

When i checked the 1 paypal order that is perfect, the customers address and state look correct, they match and everything looks right.

 

When i checked the 2 paypal orders that went wrong, BOTH customers address show STATE as Chicago. Even though i can see from their address they are in California, or Los Angeles, they clearly never put their state to Chicago (as they dont live in Chicago) but our system is somehow changing addresses (changing the state) to Chicago.

 

We had this problem before, we removed the state that it seemed to be stuck on and then created the state again, which worked except it ddnt really work because no it just gets stuck on a different state instead.

 

If some one can please help me fix this STATE issue i think this problem is over for us :)

 

Thank you

Edited by kayb100 (see edit history)
Link to comment
Share on other sites

When i checked the 2 paypal orders that went wrong, BOTH customers address show STATE as Chicago. Even though i can see from their address they are in California, or Los Angeles, they clearly never put their state to Chicago (as they dont live in Chicago) but our system is somehow changing addresses (changing the state) to Chicago.

 

Isn't Chicago a City located in Illinois, not a State?

 

1 paypal order/payment performed perfectly, everything went perfect (lets call this order A

 

2 paypal order/payment performed wrong, (lets call this order B and C) these ones that went wrong eg, customer went to blank screen, order and payment went through but had no status attached to them and no products inside them.

 

Not sure if this is a coincidence, but order "A" is standard checkout, and orders B and C are express checkout. 

 

Express Checkout is typically performed when the customer clicks 'pay with paypal' from a product page.

Standard Checkout is when the customer adds 1 or more products to the cart, and then clicks on the checkout button, and selects Paypal as the payment method.

 

It might be nothing, but i noticed the url location is different (module and modules)

/module/paypal

/modules/paypal

 

/module/paypal is correct, this is because you are using Friendly URL.

  • Like 1
Link to comment
Share on other sites

Hi Bellini,

 

I guess my US Geography is not so good lol :)

 

Let me clarify  I was just using US states in the hope that it would be easier for people to understand my issue of the orders that go wrong seem to be when a customer is in some state but our website changes their state to a specific state, and this happens several time from customers around the country but their state is put to this specific state. Ive done it myself with my own orders, checked out with one state, and then my state shows as another state in the back office.When orders go wrong ive noticed this is quite frequently one of the traits of the order that went wrong.

 

We dont use express checkout buttons and its turned off in the module so im not too sure why it would be using the express checkout url.

 

As of now we have 12 orders in a row successfully and then the 13th order (had to be 13 lol) was broken again (order went through but no status or products attached to the order)

 

Im pretty sure our developer is about to throw in the towel, we're all out of ideas.

Edited by 71newyorker (see edit history)
Link to comment
Share on other sites

Hi EVeryone, 

 

We fixed it... AGAIN. This time i think its properly fixed rather than just using temporary fixes (eg restoring old files, re-iinstalling prestashop etc) 

 

After fixing the paypal module issue again yesterday (re-installed the header and undone some of his previous tasks), this morning he went to work on the EXACT same changes we've been trying to make for weeks, this set of changes is what everytime break the paypal module. they're simple changes like change the color of the left panels, changing the width, change the name CATALOG to NARROW BY. etc etc. During the changes it broke again, as we expected and our developer was able to locate when it broke.

 

In the left column, where it says ''catalog'', we were changing this to ''Narrow By'' using the back office translations (localization>>translation). (this might mean any translation change you make, not just changing ''catalog'').  

 

According to our developer, changing the translation is causing this to happen and therefore breaking paypal module. Our developer said the following....

 

''Changing the translation creates translation folder for paypal in theme/modules, which overwrites the paypal text content to blank. Due to this paypal module stops working''
 
Hope this helps some one and hopefully i wont be back for at least a few days lol :)
  • Like 1
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...