|

Paypal Express Checkout v.2.0.15
Posted 08 June 2010 - 03:32 PM #1
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?
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
Posted 08 June 2010 - 07:07 PM #3
For example my pp account is verified however when I buy something in pp receipt my Shipping address - unconfirmed.
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.
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
Posted 09 June 2010 - 04:32 AM #6
Posted 09 June 2010 - 06:40 AM #7
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
Posted 09 June 2010 - 08:47 AM #8
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.
Posted 09 June 2010 - 09:40 AM #9
Tell me how man working say in USA can send a present to family in Europe?
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
Posted 09 June 2010 - 02:12 PM #11
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!
This fix provided in unified diff format, see: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'] );
}
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.
Posted 10 June 2010 - 02:03 AM #12
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
Posted 10 June 2010 - 07:50 AM #13
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.
Posted 10 June 2010 - 10:39 AM #14
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.
Posted 11 June 2010 - 12:09 PM #15
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.
Posted 21 June 2010 - 04:21 PM #17
I don't see it in the "add-on" or Payment method area.
Version 4.9.2
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.
Posted 21 June 2010 - 04:40 PM #19
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
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).