Jump to content

Paypal 5.1.5 - Refunds not working - PS1.7.6.7


technocracy

Recommended Posts

Well I've tried raised a job through the official support channels and after initial promise of assisting that has disappeared and now I am being told somehow "it's a Prestashop issue", hence why I am posting this here!¬†ūüėě

I fixed the original issues I had with the payments being received but the order sitting in "Awaiting Payment" by performing a uninstall, clearing all possible caches, renaming the /var/cache folder AND deleting the module/paypal folder - then reinstalled, it still gave an error about not being installed but it installed and works fine other than Refunds are not working.

When I set an order to Refunded - it does nothing (well other than change the status) - I have even gone into the PayPal module configuration page and set under the Advanced Options that Refunded status should trigger a refund even though that is supposedly the default. 

Can anyone assist what could be causing this?  I wish they had just left the Refund button that is in the 1.6 version.  

This is the only annoyance I have left following my 1.7 upgrade - I have to say¬†I wish I had upgraded sooner 1.7 is far¬†superior to 1.6!¬†ūüėÉ

Edited by technocracy
added details/correct grammar. (see edit history)
Link to comment
Share on other sites

Ok - after a bit of debugging and looking around I have identified that the underlying issue is related to the paypal_order table.  

First up - I have noticed that no new records have been written to the table since the upgrade.

When I enable debugging on the shop I get the following error whenever I do anything with an order or order status: 

Unknown column 'id_paypal_order' in 'field list'SELECT id_paypal_order FROM `fqc_paypal_order` WHERE (id_order = 1151) LIMIT 1
at line 769 in file classes/db/Db.php

I posted this issue previously but at that time did not know what it was impacting since when you disable debugging the error does not reappear - so could this be an access/rights issue to the table?  It seems to be something relating to that as the above error is the same regardless as whether the order in the query exists or not - in the above order no 1151 is not in the table however if I try access a record I know exists I get the same error. 

Anyone have any pointers on what right/permissions could be possibly missing to cause this?  

I have attached a full screen capture of the full error output. 

 

Thanks

Screen Shot 2020-08-26 at 9.50.05 am.png

Link to comment
Share on other sites

Well finally!  It's fixed!

If anyone else comes across this issue - you need to create a new column name id_paypal_order in the ???_paypal_order table and it need to be Integer length 11, auto-incremental (tick the A_I box for those using phpmyadimin) and be a Primary Key for the table.

If your issues is the same as mine then order_id would be the current primary key so your need to drop that primary key BEFORE you add the new column, which will allow the new column to be the primary key for the table. 

ūüĎĆ

Link to comment
Share on other sites

  • 1 month later...

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...