On Checkout with Paypal Standard it doesn't save addresses

strestus - May 23, 2009 - 14:47
Project:Ubercart Addresses
Version:6.x-1.x-dev
Component:Code
Category:bug report
Priority:critical
Assigned:freixas
Status:active
Description

As per title
I am using paypal standard(sandbox) and no address is saved on order submisions.

#1

Scott M. Sanders - May 23, 2009 - 18:56

If you look at your Drupal database and find uc_addresses, do the address fields happen to be prefixed with "delivery_"?

If so, manually edit the structure of these database fields such that all those "delivery_" prefixes are removed, and try again.

I gained them somehow and suspected they appeared while upgrading from Drupal 5 to 6 and the subsequent uc_addresses module but have yet to see this confirmed. Otherwise I have the same configuration as you on two production sites but do not have this issue of which I'm aware.

#2

strestus - May 25, 2009 - 12:21

I have just checked this table and everything seems normal without any prefixes (see image)

AttachmentSize
uc_addresses.JPG 84.79 KB

#3

freixas - May 25, 2009 - 12:41
Assigned to:strestus» freixas

Hi,

I checked my test system and it uses PayPal Website Payments Pro, so I haven't tested with PayPal Standard.

There is a similar issue reported for 5.x-2.1: #467646: After an order is submitted and the user doesn't get the new address saved.

If anyone with PayPal Standard could record the values of $op and $order->order_status during a PayPal Standard transaction, I might be able to help fix this. The idea would be to add this code right before the "if ($op == 'submit' && $order->order_status == 'in_checkout') {" line:

file_put_contents('some filename', "op = $op order->order_status = {$order->order_status}");

Then place an order and follow it through to a successful completion. It might be useful to also place an order and then cancel it, to see how that differs. After performing the transaction, the file whose name you selected will contain the results.

 
 

Drupal is a registered trademark of Dries Buytaert.