australopitecu Posted August 11, 2014 Share Posted August 11, 2014 Buenas, tengo problemas de pago con Paypal. Ocurre cuando el cliente intenta pagar con cuenta de paypal, y al introducir su contraseña. Concretamente el error que le da al cliente es: Please try to contact the merchant:PayPal response:TIMESTAMP -> 2014-02-14T08:31:38ZL_ERRORCODE0 -> 10729L_SHORTMESSAGE0 -> Shipping Address State EmptyL_LONGMESSAGE0 -> The field Shipping Address State is requiredL_SEVERITYCODE0 -> Error No da problemas realizando el pago con paypal a través de tarjeta de crédito. Mi versión de Prestashop es: 1.5.4.1 Versión módulo Paypal: 3.5.7 Espero que alguien me pueda ayudar. Saludos, Link to comment Share on other sites More sharing options...
goiko111 Posted August 13, 2014 Share Posted August 13, 2014 Yo tengo el mismo problema. A veces si deja pagar a mis clientes por paypal pero otras veces les da el mismo error 10729 versión de prestashop 1.4.9 versón módulo de paypal 3.5.9 Please try to contact the merchant:PayPal response:TIMESTAMP -> 2014-02-14T08:31:38ZL_ERRORCODE0 -> 10729L_SHORTMESSAGE0 -> Shipping Address State EmptyL_LONGMESSAGE0 -> The field Shipping Address State is requiredL_SEVERITYCODE0 -> Error GRACIAS Link to comment Share on other sites More sharing options...
ventura Posted August 13, 2014 Share Posted August 13, 2014 Has comprobado la procedencia de los clientes, si son de paises que tienen asignados estados o no ¿? Link to comment Share on other sites More sharing options...
goiko111 Posted August 13, 2014 Share Posted August 13, 2014 Hola, gracias por tu respuesta Solo admito compradores de españa y francia El problema es que a veces pueden pagar sin ningun problema y otras veces tienen este error. gracias Link to comment Share on other sites More sharing options...
ivancasasempere Posted August 13, 2014 Share Posted August 13, 2014 Mismo problema... Link to comment Share on other sites More sharing options...
Eduardo Ruiz-Ocaña Posted August 14, 2014 Share Posted August 14, 2014 Nosotros tenemos el mismo problema. Hemos contactado con Paypal y dice que es un problema de Prestashop y que lo está solucionando. Ayer mandamos email a Prestashop y no tenemos respuesta. Hoy después de más de 20 minutos en espera en la linea de Prestashop he colgado porque no me atienden. He mandado otro email. Si obtengo alguna contestación pronto la copio aquí pero la realidad es que ciertos pagos de Paypal están dando error y los clientes no pueden pagar y se están perdiendo ventas. Link to comment Share on other sites More sharing options...
australopitecu Posted August 19, 2014 Author Share Posted August 19, 2014 Hola, he estado indagando un poco por foros extranjeros con el mismo problema. Según he entendido es un problema del módulo de Paypal en cuanto a la transferencia de datos desde Prestashop. Algo así como que cuando el cliente intenta pagar, internamente los datos del cliente (Dirección, etc), no son transferidos al panel de control de Paypal....y origina este error. Otros hablan que dependiendo del navegador que se utilice puede o no dar ese problema. Una persona dice que la solución es esta: change some lines on modules\paypal\express_checkout\process.phpPAYPAL VERSION : 3.4.5LINE 243private function setShippingAddress(&$fields, $id_address){$address = new Address($id_address);$fields['ADDROVERRIDE'] = '1';$fields['PAYMENTREQUEST_0_SHIPTOSTREET'] = $address->address1;$fields['PAYMENTREQUEST_0_SHIPTOSTREET2'] = $address->address2;$fields['PAYMENTREQUEST_0_SHIPTOCITY'] = $address->city;if ($address->id_state){$state = new State((int)$address->id_state);$fields['PAYMENTREQUEST_0_SHIPTOSTATE'] = $state->iso_code;}$country = new Country((int)$address->id_country);$fields['PAYMENTREQUEST_0_SHIPTOCOUNTRYCODE'] = $country->iso_code;$fields['PAYMENTREQUEST_0_SHIPTOZIP'] = $address->postcode;}REPLACE WITHprivate function setShippingAddress(&$fields, $id_address){$address = new Address($id_address);$fields['ADDROVERRIDE'] = '1';$fields['PAYMENTREQUEST_0_SHIPTOSTREET'] = $address->address1;$fields['PAYMENTREQUEST_0_SHIPTOSTREET2'] = $address->address2;$fields['PAYMENTREQUEST_0_SHIPTOCITY'] = $address->city;$country = new Country((int)$address->id_country);$fields['PAYMENTREQUEST_0_SHIPTOCOUNTRYCODE'] = $country->iso_code;if ($address->id_state){$state = new State((int)$address->id_state);$fields['PAYMENTREQUEST_0_SHIPTOSTATE'] = $state->iso_code;} else {$fields['PAYMENTREQUEST_0_SHIPTOSTATE'] = $country->iso_code;}$fields['PAYMENTREQUEST_0_SHIPTOZIP'] = $address->postcode;} Yo no soy informático pero puedo deducir que lo que se intenta es que tome el dato de la población y los transfiera a Paypal, que es en definitiva el causante de todo este follón... También he de decir, que yo no lo he probado y por supuesto no me atrevo a hacerlo. Así que si hay alguien que sea informático que pueda dar credibilidad al código para probarlo sin que el ordenador explote....que lo diga! Saludos, Link to comment Share on other sites More sharing options...
Eduardo Ruiz-Ocaña Posted August 30, 2014 Share Posted August 30, 2014 Hola, he estado indagando un poco por foros extranjeros con el mismo problema. Según he entendido es un problema del módulo de Paypal en cuanto a la transferencia de datos desde Prestashop. Algo así como que cuando el cliente intenta pagar, internamente los datos del cliente (Dirección, etc), no son transferidos al panel de control de Paypal....y origina este error. Otros hablan que dependiendo del navegador que se utilice puede o no dar ese problema. Una persona dice que la solución es esta: change some lines on modules\paypal\express_checkout\process.php PAYPAL VERSION : 3.4.5 LINE 243 private function setShippingAddress(&$fields, $id_address) { $address = new Address($id_address); $fields['ADDROVERRIDE'] = '1'; $fields['PAYMENTREQUEST_0_SHIPTOSTREET'] = $address->address1; $fields['PAYMENTREQUEST_0_SHIPTOSTREET2'] = $address->address2; $fields['PAYMENTREQUEST_0_SHIPTOCITY'] = $address->city; if ($address->id_state) { $state = new State((int)$address->id_state); $fields['PAYMENTREQUEST_0_SHIPTOSTATE'] = $state->iso_code; } $country = new Country((int)$address->id_country); $fields['PAYMENTREQUEST_0_SHIPTOCOUNTRYCODE'] = $country->iso_code; $fields['PAYMENTREQUEST_0_SHIPTOZIP'] = $address->postcode; } REPLACE WITH private function setShippingAddress(&$fields, $id_address) { $address = new Address($id_address); $fields['ADDROVERRIDE'] = '1'; $fields['PAYMENTREQUEST_0_SHIPTOSTREET'] = $address->address1; $fields['PAYMENTREQUEST_0_SHIPTOSTREET2'] = $address->address2; $fields['PAYMENTREQUEST_0_SHIPTOCITY'] = $address->city; $country = new Country((int)$address->id_country); $fields['PAYMENTREQUEST_0_SHIPTOCOUNTRYCODE'] = $country->iso_code; if ($address->id_state) { $state = new State((int)$address->id_state); $fields['PAYMENTREQUEST_0_SHIPTOSTATE'] = $state->iso_code; } else { $fields['PAYMENTREQUEST_0_SHIPTOSTATE'] = $country->iso_code; } $fields['PAYMENTREQUEST_0_SHIPTOZIP'] = $address->postcode; } Yo no soy informático pero puedo deducir que lo que se intenta es que tome el dato de la población y los transfiera a Paypal, que es en definitiva el causante de todo este follón... También he de decir, que yo no lo he probado y por supuesto no me atrevo a hacerlo. Así que si hay alguien que sea informático que pueda dar credibilidad al código para probarlo sin que el ordenador explote....que lo diga! Saludos, No he recibido ninguna respuesta de Prestashop ni nosotros ni la gente que monto la web. Y aun da el problema aunque en menor medida. Me preocupa la falta de respuesta ante un tema grave. Link to comment Share on other sites More sharing options...
josecarlosgalvañ Posted August 30, 2014 Share Posted August 30, 2014 Esta solución no es mía ,la tenia copiada: Este fallo se produce tanto en clientes antiguos, como nuevos, con pagos con tarjeta en Paypal o con aquellos que tienen una cuenta allí, realmente no daba con la excepción que hacía que algunos pudieran finalizar la compra y otros no. Así que tome el carril de en medio y modifiqué el archivo order-address.tpl del tema de mi cliente. Añadí el siguiente código (en rojo) que oculta el botón Siguiente, si detecta que la dirección tienen la provincia (state) con valor 0. {foreach from=$addresses key=k item=address} {if (($address.id_state|intval) != 0)} <input type=”submit” name=”processAddress” value=”{l s=’Next’} »” class=”exclusive” /> {/if} {/foreach} Si queréis avisar al cliente como seguir, debéis añadir debajo de <p class=”address_add submit”>: {foreach from=$addresses key=k item=address} {if (($address.id_state|intval) == 0)} <p class=”address_add submit”> {l s=’LAS DIRECCIONES NO TIENEN PROVINCIA SELECCIONADA,SI CONTINUA NO PODRÁ FINALIZAR LA COMPRA.’}</p> <p class=”address_add submit”> {l s=’TAMPOCO OLVIDE SELECCIONAR LA PROVINCIA EN PAYPAL’}</p> {/if} {/foreach} Link to comment Share on other sites More sharing options...
Recommended Posts