Jump to content

  • You cannot start a new topic
  • You cannot reply to this topic

Paypal Express Checkout v.2.0.15 Rate Topic   - - - - -

 
  • nedd
  • Senior Member
  • Members
  • Join Date: 13-Jan 08
  • 125 posts

Posted 08 June 2010 - 03:32 PM #1

[!] 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?

 
  • Traveler
  • Senior Member
  • Members
  • Join Date: 02-Feb 07
  • 901 posts

Posted 08 June 2010 - 05:27 PM #2

[!] 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?


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

Version 4.9.2


 
  • Darius
  • Douchebag
  • Members
  • Join Date: 20-Apr 08
  • 3311 posts

Posted 08 June 2010 - 07:07 PM #3

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.

 
  • nedd
  • Senior Member
  • Members
  • Join Date: 13-Jan 08
  • 125 posts

Posted 08 June 2010 - 08:06 PM #4

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


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.

 
  • Traveler
  • Senior Member
  • Members
  • Join Date: 02-Feb 07
  • 901 posts

Posted 09 June 2010 - 01:16 AM #5

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.


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

Here is the bug report link:

http://forum.cs-cart...ew&vbug_id=1964

Version 4.9.2


 
  • xrussx
  • Junior Member
  • Members
  • Join Date: 31-May 10
  • 7 posts

Posted 09 June 2010 - 04:32 AM #6

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

 
  • Traveler
  • Senior Member
  • Members
  • Join Date: 02-Feb 07
  • 901 posts

Posted 09 June 2010 - 06:40 AM #7

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.

Version 4.9.2


 
  • KleriK
  • Architect
  • CS-Cart Architects
  • Join Date: 11-Jan 10
  • 39 posts

Posted 09 June 2010 - 08:47 AM #8

[!] 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.
Dmitry Sukhonosov,
CS-Cart Architect Team
Suggest and vote for new features | Report a bug

 
  • Darius
  • Douchebag
  • Members
  • Join Date: 20-Apr 08
  • 3311 posts

Posted 09 June 2010 - 09:40 AM #9

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?

 
  • Traveler
  • Senior Member
  • Members
  • Join Date: 02-Feb 07
  • 901 posts

Posted 09 June 2010 - 09:58 AM #10

[!] 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".

.


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.

Version 4.9.2


 
  • KleriK
  • Architect
  • CS-Cart Architects
  • Join Date: 11-Jan 10
  • 39 posts

Posted 09 June 2010 - 02:12 PM #11

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!

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 @@
<input type="text" name="payment_data[processor_params][signature]" id="signature" value="{$processor_params.signature}" class="input-text" />
</div>
+
+<div class="form-field">
+ <label for="send_adress">{$lang.send_shipping_address}:</label>
+ <input type="checkbox" name="payment_data[processor_params][send_adress]" {if $processor_params.send_adress == "Y"}checked="checked"{/if} id="send_adress" value="Y" />
+</div>
+
<div class="form-field">
<label for="currency">{$lang.currency}:</label>


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 = <<<EOT
<ReqConfirmShipping>0</ReqConfirmShipping>
@@ -353,4 +354,17 @@

// finish ExpressCheckout
$_address = '';
+if (!empty($processor_data['params']['send_adress']) && $processor_data['params']['send_adress'] == 'Y') {
+$_address = <<<EOT
+ <ShipToAddress>
+ <Name>$order_info[s_firstname] $order_info[s_lastname]</Name>
+ <Street1>$order_info[s_address]</Street1>
+ <Street2>$order_info[s_address_2]</Street2>
+ <CityName>$order_info[s_city]</CityName>
+ <StateOrProvince>$order_info[s_state]</StateOrProvince>
+ <PostalCode>$order_info[s_zipcode]</PostalCode>
+ <Country>$order_info[s_country]</Country>
+ </ShipToAddress>
+EOT;
+}

$request =<<<EOT
@@ -381,13 +394,5 @@
<InvoiceID>$pp_order_id</InvoiceID>
<Custom></Custom>
- <ShipToAddress>
- <Name>$order_info[s_firstname] $order_info[s_lastname]</Name>
- <Street1>$order_info[s_address]</Street1>
- <Street2>$order_info[s_address_2]</Street2>
- <CityName>$order_info[s_city]</CityName>
- <StateOrProvince>$order_info[s_state]</StateOrProvince>
- <PostalCode>$order_info[s_zipcode]</PostalCode>
- <Country>$order_info[s_country]</Country>
- </ShipToAddress>
+ $_address
</PaymentDetails>
</DoExpressCheckoutPaymentRequestDetails>
@@ -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'] );
}

This fix provided in unified diff format, see:
http://www.artima.co...p?thread=164293
http://www.araxis.co...rt_unified.html

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.
Dmitry Sukhonosov,
CS-Cart Architect Team
Suggest and vote for new features | Report a bug

 
  • Traveler
  • Senior Member
  • Members
  • Join Date: 02-Feb 07
  • 901 posts

Posted 10 June 2010 - 02:03 AM #12

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.

Version 4.9.2


 
  • KleriK
  • Architect
  • CS-Cart Architects
  • Join Date: 11-Jan 10
  • 39 posts

Posted 10 June 2010 - 07:50 AM #13

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:

<div class="form-field">
<label for="send_adress">{$lang.send_shipping_address}:</label>
<input type="checkbox" name="payment_data[processor_params][send_adress]" {if $processor_params.send_adress == "Y"}checked="checked"{/if} id="send_adress" value="Y" />
</div>

After the code:

<div class="form-field">
<label for="signature">{$lang.signature}:</label>
<input type="text" name="payment_data[processor_params][signature]" id="signature" value="{$processor_params.signature}" class="input-text" />
</div>

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:

if ($pp_method == 'mf') {

with this one:

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

6) Insert this code:

$_address = '';
if (!empty($processor_data['params']['send_adress']) && $processor_data['params']['send_adress'] == 'Y') {
$_address = <<<EOT
<ShipToAddress>
<Name>$order_info[s_firstname] $order_info[s_lastname]</Name>
<Street1>$order_info[s_address]</Street1>
<Street2>$order_info[s_address_2]</Street2>
<CityName>$order_info[s_city]</CityName>
<StateOrProvince>$order_info[s_state]</StateOrProvince>
<PostalCode>$order_info[s_zipcode]</PostalCode>
<Country>$order_info[s_country]</Country>
</ShipToAddress>
EOT;
}

After the code:

$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:

<ShipToAddress>
<Name>$order_info[s_firstname] $order_info[s_lastname]</Name>
<Street1>$order_info[s_address]</Street1>
<Street2>$order_info[s_address_2]</Street2>
<CityName>$order_info[s_city]</CityName>
<StateOrProvince>$order_info[s_state]</StateOrProvince>
<PostalCode>$order_info[s_zipcode]</PostalCode>
<Country>$order_info[s_country]</Country>
</ShipToAddress>

with this one:

$_address

8) Insert this code:

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

After the code:

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.
Dmitry Sukhonosov,
CS-Cart Architect Team
Suggest and vote for new features | Report a bug

 
  • nedd
  • Senior Member
  • Members
  • Join Date: 13-Jan 08
  • 125 posts

Posted 10 June 2010 - 10:39 AM #14

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.

 
  • KleriK
  • Architect
  • CS-Cart Architects
  • Join Date: 11-Jan 10
  • 39 posts

Posted 11 June 2010 - 12:09 PM #15

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.
Dmitry Sukhonosov,
CS-Cart Architect Team
Suggest and vote for new features | Report a bug

 
  • Traveler
  • Senior Member
  • Members
  • Join Date: 02-Feb 07
  • 901 posts

Posted 11 June 2010 - 12:30 PM #16

Thank you for listening.

Version 4.9.2


 
  • Traveler
  • Senior Member
  • Members
  • Join Date: 02-Feb 07
  • 901 posts

Posted 21 June 2010 - 04:21 PM #17

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.

Version 4.9.2


 
  • nedd
  • Senior Member
  • Members
  • Join Date: 13-Jan 08
  • 125 posts

Posted 21 June 2010 - 04:31 PM #18

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


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.

 
  • Traveler
  • Senior Member
  • Members
  • Join Date: 02-Feb 07
  • 901 posts

Posted 21 June 2010 - 04:40 PM #19

Thank you.

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

Version 4.9.2


 
  • nedd
  • Senior Member
  • Members
  • Join Date: 13-Jan 08
  • 125 posts

Posted 21 June 2010 - 04:54 PM #20

Thank you.

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


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

Attached Thumbnails

  • paypal-config.jpg