Cómo aplicar un recargo al pagar por PayPal en Magento. Descuentos negativos.
20 jul. 2013

Cómo aplicar un recargo al pagar por PayPal en Magento. Descuentos negativos.

¿Por qué aplicar un recargo al pagar por Paypal en Magento? El boom del comercio electrónico ha disparado la competitividad a la hora de verder nuestros productos por internet lo cual obliga a los online managers a ofrecer multitud de opciones y facilidades a nuestros clientes para conseguir cerrar el mayor número de ventas posibles. En cualquier tienda online podremos encontrar varios métodos de envío, diferentes metodos de pago, descuentos y regalos. Pero no todas las opciones que se ofrecen son ventajosas para la tienda online. Las comisiones y costes de algunos de los servicios pueden hacer poco rentable la venta y según sean los márgenes comerciales de nuestra tienda online nos puede interesar no ofrecerlos o aplicar un recargo al elegirlos. Uno de los ejemplos claros es el pago por PayPal.
descuento-negativo-magento

Paypal es un sistema de pago cómodo y seguro, cuyo uso está muy extendido y puede ser un buen reclamo para aumentar nuestra tasa de conversión. Pero tambien puede que las comisiones que asume la tienda online por cada transacción hagan que nos interese más otra vía de pago como la transferencia bancara o el pago por TPV virtual. En cualquier caso, una buena alternativa es dejar elegir al cliente aplicandole, eso sí, un recargo al pagar por Paypal equivalente a las comisiones. Aplicar un recargo al pagar por Paypal en Magento no es posible en el OOTB pero con unas pequeñas modificaciones se puede hacer sin mayores problemas. Hoy vamos a explicar cómo hacerlo. La técnica será crear una regla de carrito donde, al seleccionar el metodo de pago que nos interese, en este caso Paypal, se aplicará un recargo de un x% al precio final de la compra. De inicio esto es imposible porque Magento no permite aplicar descuentos negativos, pero vamos a trucar un poco el código para que esto sí sea posible.

Para acceder al código y tutorial que te permite hacer el recargo al pagar por Paypal, sólo deberás compartir este post en tu red social favorita. ¿Nos ponemos las pilas ya con Paypal y Magento?

Lo primero que tienes que hacer es conectarte por FTP a tu servidor y buscar el archivo app/code/core/Mage/Rule/Model/Rule.php. Una vez allí, descárgalo a tu equipo y con un editor de texto busca la siguiente línea de código:


//check if discount amount > 0 if ((int)$this->getDiscountAmount() < 0) { Mage::throwException(Mage::helper(‘rule’)->__(‘Invalid discount amount.’)); }


Sólo tienes que añadir un par de comentarios // para evitar esta validación de la siguiente manera:


//check if discount amount > 0 //if ((int)$this->getDiscountAmount() < 0) { //Mage::throwException(Mage::helper(‘rule’)->__(‘Invalid discount amount.’)); //}


Ahora, busca el siguiente archivo



 app/code/core/Mage/Adminhtml/Block/Promo/Quote/Edit/Tab/Actions.php



Y, como en el caso anterior, busca la siguiente línea:

$fieldset->addField(‘discount_amount’, ‘text’, array( ‘name’ => ‘discount_amount’, ‘required’ => true, ‘class’ => ‘validate-not-negative-number’, ‘label’ => Mage::helper(’salesrule’)->__(‘Discount amount’),


E, igual que antes, comenta una de estas lineas:

$fieldset->addField(‘discount_amount’, ‘text’, array( ‘name’ => ‘discount_amount’, ‘required’ => true, // ‘class’ => ‘validate-not-negative-number’, ‘label’ => Mage::helper(’salesrule’)->__(‘Discount amount’),


Ahora ya te permitirá añadir reglas de carrito donde el % de descuento sea un numero negativo y por tanto el descuento se convertirá en recargo o lo que es lo mismo, en aplicar un recargo al pagar por PayPal o cualquier otro método de pago.

 Hecho esto, a nivel cosmético, nos puede interesar variar las traducciones para que no indique como "descuento" algo que es un "recargo".

 Para ello tenemos que jugar con los ficheros de traducciones. Suponiendo que tenemos nuestro Magento en español, debemos traducir la palabra "descuento". Para ello, vía FTP localiza y descarga el archivo app/locale/es_ES/Mage_Sales.csv. Dentro de él, busca la línea que indica:


"Discount (%s)","Descuento (%s)"


Y cámbiala por un texto más general que pueda indicar descuentos o recargos, como por ejemplo, "ajuste de precio":


"Discount (%s)","Ajuste de Precio (%s)"


Y ya habrás acabado. ¿Sencillo verdad? Ahora solo queda esperar que ese pequeño recargo no ahuyente a los clientes :) NOTA: este pequeño "fix" ha sido realizado y probado en la versión 1.7.0.2. Nos consta que en versiones anteriores también funciona aunque no podemos asegurarlo al no haberlo probado.

¿Quieres saber los másters y cursos en ecommerce que impartimos?

INFÓRMATE AQUÍ

¡Por fin un curso de AdWords en Alicante!


(También en Modalidad Online)
comments powered by Disqus