Paypal Express Checkout v.2.0.15

[!] Paypal Express Checkout: The customer could place an order using an unverified shipping address. Fixed.



Can we get an official explanation from CSC team what does this “fix” really mean? A customer with “unverified shipping address” can’t place the order/pay by PayPal or something else?

[quote name=‘nedd’][!] Paypal Express Checkout: The customer could place an order using an unverified shipping address. Fixed.



Can we get an official explanation from CSC team what does this “fix” really mean? A customer with “unverified shipping address” can’t place the order/pay by PayPal or something else?[/quote]



This could be a big problem as it seems like only a few countries are confirmed…

Account status verified and confirmed shipping address I suppose are two different things…



For example my pp account is verified however when I buy something in pp receipt my Shipping address - unconfirmed.

[quote name=‘Traveler’]This could be a big problem as it seems like only a few countries are confirmed…[/QUOTE]



A few countries or not, that’s not so important in this case. Any such limitations (unverified addresses, unconfirmed accounts) performed through the cart is a complete nonsense. It’s up to you - the seller - to decide which customer/paid order is acceptable. Now, after upgrade to 2.0.15, I have a bunch of open/unpaid and/or failed PayPal orders. I don’t know is it a pure coincidence or is it somehow related to 2.0.15. If it’s the case, I’m losing sales and need to revert back to 2.0.14 or to fix this “fix” asap. Anyway, to avoid any further confusion, official clarification from CSC team is needed and very much appreciated.

[quote name=‘nedd’]A few countries or not, that’s not so important in this case. Any such limitations (unverified addresses, unconfirmed accounts) performed through the cart is a complete nonsense. It’s up to you - the seller - to decide which customer/paid order is acceptable. Now, after upgrade to 2.0.15, I have a bunch of open/unpaid and/or failed PayPal orders. I don’t know is it a pure coincidence or is it somehow related to 2.0.15. If it’s the case, I’m losing sales and need to revert back to 2.0.14 or to fix this “fix” asap. Anyway, to avoid any further confusion, official clarification from CSC team is needed and very much appreciated.[/QUOTE]



I agree with you and if correct this is a serious bug that needs to be fixed today.



Here is the bug report link:



[URL=“http://forum.cs-cart.com/vbugs.php?do=view&vbug_id=1964”]http://forum.cs-cart.com/vbugs.php?do=view&vbug_id=1964[/URL]

Just updated to 2.0.15 and now the paypal button on the checkout just goes to a plain screen and displays the domain…

CS Cart just replied to the bug report and said that they will check.



Hopefully, they will realize how important this is and fix it today.



A workaround is to send your customer an email and ask them to manually send money to your Paypal email address.



A headache I know but it works.

[!] Paypal Express Checkout: The customer could place an order using an unverified shipping address. Fixed.



Hello,



Here is the problem description:



The user adds products to cart and clicks on “Checkout with PayPal”, then on the paypal page the user selects the address and returns to CS-Cart checkout. Now the user is able to change the shipping address and click on ‘‘Place order’’, as a result the order will be saved with the address that was changed by the user but was not yet verified.



To resolve this problem, we added a recurring sending of the address which is performed when the user clicks on “Place order”.



nedd, Traveler

Could you provide an FTP access to your stores in order that we can see the logs of queries to paypal?



Please send me the information to klerik@cs-cart.com.

I got some customers who have billing address other then shipping. PayPal does not allow ship to other country then billing country and having able to specify any shipping address customer wants is great (till version .15, due to this I am not going to upgrade at all).



Tell me how man working say in USA can send a present to family in Europe?

[quote name=‘KleriK’][!] Paypal Express Checkout: The customer could place an order using an unverified shipping address. Fixed.



Hello,



Here is the problem description:



The user adds products to cart and clicks on “Checkout with PayPal”, then on the paypal page the user selects the address and returns to CS-Cart checkout. Now the user is able to change the shipping address and click on ‘‘Place order’’, as a result the order will be saved with the address that was changed by the user but was not yet verified.



To resolve this problem, we added a recurring sending of the address which is performed when the user clicks on “Place order”.


.[/QUOTE]



Klerik,



Spasibo for the same day reply on an urgent issue.



I am not sure if I understand you:



Are you saying that it was allowed in 2.14 for a Paypal express user to change an address and now it is not allowed?



The ability for a user to change an address is a very good one which must not be changed. You will be creating a very large problem.



Now if CS cart users requested this change and you want to make it it must be optional or version 2.15 is a failure.



If you mean something else please try to explain again with an example and screenshots.



As Nedd says very well limitations are a big problem we need the freedom make our own business decisions. Again if you want to give us options which we check a box for in the admin area that is fine.

Our support service received a couple of complaints

where the customers point out that the users could change the address at checkout and it was not secure enough.

This is the reason why we changed it.



As it turned out now, this may cause trouble,

and we decided to add a setting that will define whether it is necessary to send the address for checking at Paypal.



By default, this setting will be disabled, namely, Paypal express will work as in version 2.0.14



I appreciate your understanding and contribution!


[QUOTE]

Index: /branches/2.0.x/skins/base/admin/views/payments/components/cc_processors/paypal_express.tpl

===================================================================

— /branches/2.0.x/skins/base/admin/views/payments/components/cc_processors/paypal_express.tpl

+++ /branches/2.0.x/skins/base/admin/views/payments/components/cc_processors/paypal_express.tpl

@@ -30,4 +30,10 @@



+
+

+ {$lang.send_shipping_address}:
+
+

+

{$lang.currency}:


Index: /branches/2.0.x/payments/paypal_express.php
===================================================================
--- /branches/2.0.x/payments/paypal_express.php
+++ /branches/2.0.x/payments/paypal_express.php
@@ -214,5 +214,5 @@

$_address = '';
- if ($pp_method == 'mf') {
+ if ($pp_method == 'mf' && !empty($processor_data['params']['send_adress']) && $processor_data['params']['send_adress'] == 'Y') {
$_address = << 0
@@ -353,4 +354,17 @@

// finish ExpressCheckout
$_address = '';
+if (!empty($processor_data['params']['send_adress']) && $processor_data['params']['send_adress'] == 'Y') {
+$_address = << +
+ $order_info[s_firstname] $order_info[s_lastname]
+ $order_info[s_address]
+ $order_info[s_address_2]
+ $order_info[s_city]
+ $order_info[s_state]
+ $order_info[s_zipcode]
+ $order_info[s_country]
+
+EOT;
+}

$request =<< @@ -381,13 +394,5 @@
$pp_order_id

-
- $order_info[s_firstname] $order_info[s_lastname]
- $order_info[s_address]
- $order_info[s_address_2]
- $order_info[s_city]
- $order_info[s_state]
- $order_info[s_zipcode]
- $order_info[s_country]
-
+ $_address


@@ -433,4 +438,5 @@
$result['error']['ErrorCode'],
isset($result['error']['Severity'])? ' , Severity:' . $result['error']['Severity'] : '');
+ fn_set_notification('E', fn_get_lang_var('error'), isset($result['error']['LongMessage'])? $result['error']['LongMessage'] : $result['error']['ShortMessage'] );
}
[/QUOTE]
This fix provided in unified diff format, see:
[url]http://www.artima.com/weblogs/viewpost.jsp?thread=164293[/url]
[url]http://www.araxis.com/merge/topic_diff_report_unified.html[/url]

Also, add the "send_shipping_address" language variable with the "Send customer shipping address" value to the “Languages” tab in the admin panel.

Kind Regards.

Thank you for listening and trying to help.



Has this fix been included in the 2.15 update? If not when will it?



Also I do not understand your instructions can you please give us step by step directions.

In order to fix this issue please pass the following steps:

  1. Open the “paypal_express.tpl” file located in the “/skins/base/admin/views/payments/components/cc_processors/” directory of your CS-Cart installation.
  2. Insert this code:

    ```php

    {$lang.send_shipping_address}:


```

After the code:

```php



{$lang.signature}:





```

3) Save the file.

4) Open the “paypal_express.php” file located in the “/branches/2.0.x/payments/” directory of your CS-Cart installation.

5) Replace this part of the code:

```php

if ($pp_method == ‘mf’) {

```

with this one:

```php

if ($pp_method == ‘mf’ && !empty($processor_data[‘params’][‘send_adress’]) && $processor_data[‘params’][‘send_adress’] == ‘Y’) {

```

6) Insert this code:

```php

$_address = ‘’;

if (!empty($processor_data[‘params’][‘send_adress’]) && $processor_data[‘params’][‘send_adress’] == ‘Y’) {

$address = <<


$order_info[s_firstname] $order_info[s_lastname]

$order_info[s_address]

$order_info[s_address_2]

$order_info[s_city]

$order_info[s_state]

$order_info[s_zipcode]

$order_info[s_country]



EOT;

}

```

After the code:

```php

$pp_order_id = $processor_data[‘params’][‘order_prefix’] . (($order_info[‘repaid’]) ? ($order_id . '
’ . $order_info[‘repaid’]) : $order_id);

```

7) Replace this part of the code:

```php



$order_info[s_firstname] $order_info[s_lastname]

$order_info[s_address]

$order_info[s_address_2]

$order_info[s_city]

$order_info[s_state]

$order_info[s_zipcode]

$order_info[s_country]



```

with this one:

```php

$_address

```

8) Insert this code:

```php

fn_set_notification(‘E’, fn_get_lang_var(‘error’), isset($result[‘error’][‘LongMessage’])? $result[‘error’][‘LongMessage’] : $result[‘error’][‘ShortMessage’] );

```

After the code:

```php

isset($result[‘error’][‘Severity’])? ’ , Severity:’ . $result[‘error’][‘Severity’] : ‘’);

```

9) Save the file.

10)Add the “send_shipping_address” language variable with the “Send customer shipping address” value to the “Languages” tab in the admin panel.



Kind Regards.

I’m having trouble with this mod.

Now, when click on View Cart I’m getting: “Parse error: syntax error, unexpected T_SL in /…/…/…/payments/paypal_express.php on line 357”

Please advise.

In order to make it easier for our clients to install this feature, we will make an update.



After the installation, it becomes possible to enable/disable the sending of the address for validation at PayPal Express Checkout.



You can download it from the file area in the Customer Helpdesk account at http://helpdesk.cs-cart.com

This update is located in the Updates folder and is called “PayPal Express Checkout update”.



Kind Regards.

Thank you for listening.

After the update is installed where do you make changes in the admin back-end?



I don’t see it in the “add-on” or Payment method area.

[quote name=‘Traveler’]After the update is installed where do you make changes in the admin back-end?[/QUOTE]



Don’t forget to add this one: “10)Add the “send_shipping_address” language variable with the “Send customer shipping address” value to the “Languages” tab in the admin panel.”



Then go to Administration/Payment methods/PayPal/edit/configure and you should see unchecked “Send customer shipping address” option box.

Thank you.



I added the language and I uploaded the Paypal express patch but still do not see the setting in the configuration area.

[quote name=‘Traveler’]Thank you.



I added the language and I uploaded the Paypal express patch but still do not see the setting in the configuration area.[/QUOTE]



Double check everything. Then you should see something like this one in PayPal Express configure area (see the pic).

paypal-config.jpg