Avisos
Vaciar todo

Problema con Paypal y cupon descuento  

 
Tania
 Tania
Usuario activo

Estoy teniendo problemas con los pagos en Paypal, hay un pequeño desajuste en el total que me acarrea problemas en la facturación. Pero este desajuste sólo se produce cuando el cliente utiliza un cupon descuento, si no lo utiliza no hay problema alguno en el total. Adjunto mensaje que me manda Paypal, este es un pedido dónde el total es 52.73.

"During a paypal transaction on your site the received amount didn't match the order total.
Order ID: 38.
Order Number: 86_e87c0bebce3d92e243414c49fdc44.
The amount received was: 52.12 EUR.
It should be: 52.73 EUR."

Me imagino que el error estará en la aplicación del IVA en algún apartado, pero no consigo dar con la tecla.
Perdonar si este tema ha sido posteado, pero no lo he encontrado en la búsqueda.
Gracias

(edito: la web es esta por si os hace falta: www.vaporyvida.es)

Citar
Respondido : 16/11/2011 1:26 pm
Jordi Sala
 Jordi Sala
Miembro Admin

Hola Tania,

¿Que versión de Virtuemart tienes instalada? ¿Estás usando el sistema de cupones que lleva Virtuemart, o el de algún componente de terceros como puede se AWOcoupon.

Comentan en el foro de Virtuemart este tema:
http://forum.virtuemart.net/index.php?topic=82808.0
http://forum.virtuemart.net/index.php?topic=58724.0

Saludos,

ResponderCitar
Respondido : 17/11/2011 8:58 am

Tania
 Tania
Usuario activo

Hola Jordi, la version de virtuemart es 1.1.8 y el sistema de cupones es el que viene por defecto en virtuemart.

ResponderCitar
Respondido : 17/11/2011 7:06 pm
Pablo Velasco
 Pablo Velasco
Illustrious Member

Hola,

Es posible que se trate de un problema con los impuestos de los portes de envío. Para comprobar esto edita tus portes de envío y quita el impuesto. Después comprueba si entonces los importes coinciden.

ResponderCitar
Respondido : 18/11/2011 10:16 am

Gestor de Contraseñas - VPN Conexión Segura - Gestor 2FA (Segundo Factor de Autenticación

Tania
 Tania
Usuario activo

Hola Jordi, ya miré esos hilos pero no encontré cómo solucionarlo.
Pablo, he probado quitando los impuestos del envío y tampoco.

Os detallo a continuación, un ejemplo de lo que me va saliendo, primero sin aplicar cupón de descuento:

Pantalla de pedido:
.- Artículo 6,50 €
.- Subtotal: 6,50 €
--------------------------------------------------------------------------------
Total: 6,50 €
Impuesto Total: 0,99 €

Pantalla terminar pedido:
.- Artículo 6,50 €
.- Subtotal: 6,50 €
.-Porte : 3.50€
--------------------------------------------------------------------------------
Total: 10,00 €
Impuesto Total: 1,52 €

Pantalla primera de Paypal:Resumen de su pedido
Número de Pedido: 48
Precio del artículo: €7,03
Cantidad:1
Importe total €7,03
Envío y manejo €2,97
Total €10,00 EUR

2º APLICANDO CUPÓN DESCUENTO (7%) SOBRE EL MISMO PEDIDO:

Pantalla de pedido:
.- Artículo 6,50 €
.- Subtotal: 6,50 €
--------------------------------------------------------------------------------
Total: 6,50 €
Impuesto Total: 0,99 €

Pantalla terminar pedido:
.- Artículo 6,50 €
.- Subtotal: 6,50 €
.- Descuento de cupon: -0.46€
.- Porte : 3.50€
--------------------------------------------------------------------------------
Total: 9,46 €
Impuesto Total: 1,45 €

Pantalla primera de Paypal:Resumen de su pedido
Número de Pedido: 48
Precio del artículo: €6,50
Cantidad:1
Importe total €6,50
Envío y manejo €2,97
Total €9,47 EUR

Los impuestos del envio, los tengo marcados al 18%. Probé a quitar los impuestos y no funcionó.
En la configuración de virtuemart, en el apartado de impuestos tengo marcado: impuestos virtual, impuesto basado en la dirección del vendedor, permitir múltiples tarifas de impuesto, y restar el descuento del pago antes del IVA/envío. (esta última opción la desmarqué, pero tampoco funcionó).

Saludos

ResponderCitar
Respondido : 19/11/2011 10:52 pm
Pablo Velasco
 Pablo Velasco
Illustrious Member

Hola,

Una posible solución podría pasar por modificar el código que se envía desde Virtuemart a Paypal, de forma que se pueda simplificar y solo se le indique el total a pagar, sin hacer el desglose de portes de los portes.

Péganos en este post el código que se está usando ahora para tu pago con Paypal. Para ello, vete a la administración de Virtuemart y en el menú lateral de administración vete a Tienda->Listar formas de Pago. Se mostrará el listado de formas de pago. Edita el pago Paypal pulsando sobre él. Después, vete a la pestaña Configuración y péganos el código que viene en Información de pago extra.

ResponderCitar
Respondido : 21/11/2011 11:25 am

Cursos Gratuitos WordPress

Tania
 Tania
Usuario activo

Gracia Jordi y Pablo por vuestra ayuda..vamos a ver si lo conseguimos.

Pego la configuración de Paypal:

country."' ORDER BY country_2_code ASC";
$db1->query($q);

$url = "https://www.paypal.com/cgi-bin/webscr";
$tax_total = $db->f("order_tax") + $db->f("order_shipping_tax");
$discount_total = $db->f("coupon_discount") + $db->f("order_discount");
$post_variables = Array(
"cmd" => "_ext-enter",
"redirect_cmd" => "_xclick",
"upload" => "1",
"business" => PAYPAL_EMAIL,
"receiver_email" => PAYPAL_EMAIL,
"item_name" => $VM_LANG->_('PHPSHOP_ORDER_PRINT_PO_NUMBER').": ". $db->f("order_id"),
"order_id" => $db->f("order_id"),
"invoice" => $db->f("order_number"),
"amount" => round( $db->f("order_subtotal")+$tax_total-$discount_total, 2),
"shipping" => sprintf("%.2f", $db->f("order_shipping")),
"currency_code" => $_SESSION['vendor_currency'],

"address_override" => "1",
"first_name" => $dbbt->f('first_name'),
"last_name" => $dbbt->f('last_name'),
"address1" => $dbbt->f('address_1'),
"address2" => $dbbt->f('address_2'),
"zip" => $dbbt->f('zip'),
"city" => $dbbt->f('city'),
"state" => $dbbt->f('state'),
"country" => $db1->f('country_2_code'),
"email" => $dbbt->f('user_email'),
"night_phone_b" => $dbbt->f('phone_1'),
"cpp_header_image" => $vendor_image_url,

"return" => SECUREURL ."index.php?option=com_virtuemart&page=checkout.result&order_id=".$db->f("order_id"),
"notify_url" => SECUREURL ."administrator/components/com_virtuemart/notify.php",
"cancel_return" => SECUREURL ."index.php",
"undefined_quantity" => "0",

"test_ipn" => PAYPAL_DEBUG,
"pal" => "NRUBJXESJTY24",
"no_shipping" => "1",
"no_note" => "1"
);
if( $page == "checkout.thankyou" ) {
$query_string = "?";
foreach( $post_variables as $name => $value ) {
$query_string .= $name. "=" . urlencode($value) ."&";
}
vmRedirect( $url . $query_string );
} else {
echo '';
echo '';

foreach( $post_variables as $name => $value ) {
echo '';
}
echo '';

}
?>
ResponderCitar
Respondido : 21/11/2011 12:16 pm
Pablo Velasco
 Pablo Velasco
Illustrious Member

Hola,

Prueba con el siguiente código:

country."' ORDER BY country_2_code ASC";
$db1->query($q);

$url = "https://www.paypal.com/cgi-bin/webscr";
$post_variables = Array(
"cmd" => "_ext-enter",
"redirect_cmd" => "_xclick",
"upload" => "1",
"business" => PAYPAL_EMAIL,
"receiver_email" => PAYPAL_EMAIL,
"item_name" => $VM_LANG->_('PHPSHOP_ORDER_PRINT_PO_NUMBER').": ". $db->f("order_id"),
"order_id" => $db->f("order_id"),
"invoice" => $db->f("order_number"),
"amount" => round( $db->f("order_total"), 2),
"currency_code" => $_SESSION['vendor_currency'],

"address_override" => "1",
"first_name" => $dbbt->f('first_name'),
"last_name" => $dbbt->f('last_name'),
"address1" => $dbbt->f('address_1'),
"address2" => $dbbt->f('address_2'),
"zip" => $dbbt->f('zip'),
"city" => $dbbt->f('city'),
"state" => $dbbt->f('state'),
"country" => $db1->f('country_2_code'),
"email" => $dbbt->f('user_email'),
"night_phone_b" => $dbbt->f('phone_1'),
"cpp_header_image" => $vendor_image_url,

"return" => SECUREURL ."index.php?option=com_virtuemart&page=checkout.result&order_id=".$db->f("order_id"),
"notify_url" => SECUREURL ."administrator/components/com_virtuemart/notify.php",
"cancel_return" => SECUREURL ."index.php",
"undefined_quantity" => "0",

"test_ipn" => PAYPAL_DEBUG,
"pal" => "NRUBJXESJTY24",
"no_shipping" => "1",
"no_note" => "1"
);
if( $page == "checkout.thankyou" ) {
$query_string = "?";
foreach( $post_variables as $name => $value ) {
$query_string .= $name. "=" . urlencode($value) ."&";
}
vmRedirect( $url . $query_string );
} else {
echo '';
echo '';

foreach( $post_variables as $name => $value ) {
echo '';
}
echo '';

}
?>

Lo que he hecho es cambiar los datos que se pasan a Paypal para enviar el total de la compra y nada más, quitando importe de los portes de envío, descuentos o impuestos. Estos datos ya los ve el usuario y en el resumen del pedido antes de la finalización y el mail de confirmación que recibe una vez completado el pedido.

Comprueba si con este nuevo código todo cuadra. Guarda una copia del que tenías por si acaso.

ResponderCitar
Respondido : 21/11/2011 5:26 pm

wpdoctor-revisa-la-salud-de-tu-wordpress

Tania
 Tania
Usuario activo

SOS, al seleccionar Paypal y terminar proceso de pedido me sale la página de error 404:componente no encontrado...
He vuelto a poner el código que tenía anteriormente, y el mismo error...socorro!

ResponderCitar
Respondido : 21/11/2011 5:55 pm
Jordi Sala
 Jordi Sala
Miembro Admin

Hola Tania,

Si habías realizado una copia del fichero original, sustituye por el modificado para hacer que todo funcione como al principio.

Saludos,

ResponderCitar
Respondido : 22/11/2011 8:29 am

optimiza-automaticamente-todas-las-imagenes-de-tu-wordpress

Tania
 Tania
Usuario activo

Hola; perdonar por tardar en contestar para cerrar este hilo. Al final contraté vuestros servicios, y aproveché para arreglar algunas problemillas que tenía pendientes de configuración.
Desde entonces todo funciona perfectamente. Muchas gracias por vuestra atención y vuestros servicios.

ResponderCitar
Respondido : 17/12/2011 11:54 pm