¿Cómo calcular el envío gratuito en función del precio total final en Prestashop?

Después de leer este blog, podremos calcular el envío gratuito en función del precio total final del carrito.

Planteamiento del problema

Actualmente, cuando agregamos productos al carrito y pasamos a la sección de pago para aprovechar el descuento y el envío, vemos que el descuento se aplica después del envío. digamos,

  • El monto total del carrito es de $ 100 que aprovechan el envío gratuito y también se agrega un descuento del 5%
  • Luego, después de que el monto total del descuento del carrito se establece por debajo de $ 100, pero aún así, se aplica el envío gratuito, lo que no debería suceder. El envío gratuito debe aplicarse al monto total final del carrito después del descuento.
  • Este es el proceso predeterminado de Prestashop. Consulte la captura de pantalla a continuación donde el envío debe ser gratuito si el total del pedido es> 50 pero se ha aplicado el envío gratuito mientras que el total del pedido es <50 después del descuento:

Lectura recomendada: Estrategias de envío gratis: ¿Por qué ofrecer? ¿Cómo ofrecer? ¿Cuándo ofrecer?

¿Por qué el problema actual está ahí?

El problema actual está ahí porque el monto del envío se calcula sobre el monto total del pedido que se establece en el carrito antes de aplicar el descuento. Puede verificar las líneas de código a continuación donde se usa el total del pedido sin el monto del descuento para calcular el envío:

$shipping_cost += $carrier->getDeliveryPriceByPrice($the_total_price, $id_zone, (int)$this->id_currency);

Requisito

Necesitamos modificar el archivo mencionado a continuación para arreglar lo mismo. Anularemos las líneas correspondientes del archivo de clase para evitar cualquier cambio en los archivos Core.

A continuación se muestra la lista de archivos de clase que se anularán-

1. Directorio raíz\clases\Cart.PHP

Procedimiento para resolver el problema-

Siga los pasos mencionados a continuación:

1. Función de reescritura�getPackageShippingCost

2. Después de la línea dada a continuación –

// Total del pedido en la moneda predeterminada sin cargos $order_total = $this->getOrderTotal(true, Cart::BOTH_WITHOUT_SHIPPING, $product_list);

3. Agregue la siguiente declaración:

$listeDescuentos = $this->getCartRules(); $descuentos_totales = 0; if (is_array($listeDiscounts)) { if (isset($listeDiscounts[0]['value_real'])) $total_discounts = $listeDiscounts[0]['value_real']; } $price_to_apply_shipment = floatval($order_total) - floatval($total_descuentos); Lectura recomendada: La mejor extensión de administrador de envío gratuito para la tienda OpenCart

4. Reemplace las líneas mencionadas a continuación:

Reemplazar esta línea

$check_delivery_price_by_price = Carrier::checkDeliveryPriceByPrice($row['id_carrier'], $total_order, (int)$id_zone, (int)$this->id_currency);

Con

$check_delivery_price_by_price = Carrier::checkDeliveryPriceByPrice($row['id_carrier'], $price_to_apply_shipment, (int)$id_zone, (int)$this->id_currency);

————Y—————–

Reemplazar esta línea

$shipping_cost += $carrier->getDeliveryPriceByPrice($the_total_price, $id_zone, (int)$this->id_currency);

Con

$shipping_cost += $carrier->getDeliveryPriceByPrice($price_to_apply_shipment, $id_zone, (int)$this->id_currency);

5. Limpia la caché y ejecuta.

Consulte la captura de pantalla a continuación después de aplicar los cambios al código:

Después de seguir el procedimiento anterior, podrá calcular el Envío sobre el monto Total Final del Carrito.

Conclusión

Cuando se trata de compras en línea, toda la estructura de precios juega un papel crucial para los clientes. Uno de los factores que pueden hacer o deshacer sus conversiones es la disponibilidad de envío gratuito. Un método para determinar las opciones y costos de envío en un sitio web de comercio electrónico es el Complemento de administrador de envío gratuito de Knowband. Uno de los requisitos más importantes para aumentar las ventas promedio es brindar apertura en la transacción.

Las tiendas que utilizaron este módulo de envío gratuito aumentaron el tráfico del sitio, los ingresos y las tasas de conversión. Con la ayuda de este complemento de envío gratuito, los administradores de la tienda pueden definir las pautas y condiciones para los costos de envío. Aún mejor, el administrador de la tienda puede agregar o eliminar esta función del sitio web.

Los minoristas en línea pueden establecer el umbral sobre el cual se ofrece el envío gratuito. Como resultado, incluso alienta a los clientes a realizar compras más grandes para calificar para el envío gratuito. Para obtener más información sobre la funcionalidad del Módulo de envío gratuito, no dude en contactarnos en support@knowband.com

¿Cómo obtener el ID de cliente y la clave secreta de PayPal?

Para integrar Express Checkout con la API REST, a ID de cliente de PayPal que autentifica la cuenta de un comerciante con PayPal es necesaria. Solo el titular de la cuenta puede crear una identificación de cliente. Pídale al comerciante que comparta su ID de cliente con usted si es un desarrollador que integra Express Checkout en nombre del cliente. Si el comerciante aún no lo ha hecho, debe crear una identificación de cliente.

Pasos para encontrar el ID de PayPal y la clave secreta del cliente de PayPal:

1. Ve a Sitio web de desarrolladores de PayPal página de inicio.

2. Luego inicie sesión en el tablero.

Puede iniciar sesión con su número de teléfono móvil usando OTP y configure su perfil agregando detalles básicos.

3. Dirígete a[Tu nombre]“, luego ve a “Panel De Control” en la esquina superior derecha. Obtendrá una opción para “Crear aplicación“. Crea tu nueva aplicación.

4. Complete los detalles de la nueva aplicación y cree una nueva aplicación. Se abrirá una nueva pantalla.


5. En la página siguiente, podrá ver su ID de cliente de PayPal y Secreto del cliente de PayPal.

Nota: Encontrará la configuración y las credenciales de la aplicación Sandbox en la misma página.


6. Tienes el ID de cliente de PayPal y el secreto.

Necesita una cuenta de desarrollador, personal o comercial para acceder al panel de desarrollador, obtener credenciales y crear cuentas de espacio aislado. Hay diferentes niveles de acceso a la funcionalidad de PayPal disponibles con cada cuenta. En la página Mi cuenta en el panel del desarrollador, puede actualizar su cuenta si necesita acceder a una función que no tiene actualmente.

Capacidades Cuenta de desarrollador Cuenta personal cuenta de Negocios
Acceder a la zona de pruebas x x x
Envía y recibe dinero x x
Ir a vivir x

Puede utilizar el ID de cliente de Paypal con nuestro Módulo Prestashop de superpago de una página e integrar la pasarela de pago de Paypal y transformar el pago estándar en un pago exprés de una página optimizado, fluido y rico en funciones.

Complemento Supercheckout de una página de Prestashop

El complemento Prestashop One Page Supercheckout de Knowband hace que el pago sea más rápido y sencillo al colocar todo en una sola página, lo que ayuda a reducir el abandono del carrito.

Compra ahora

Además junto con Prestashop ofrecemos Módulos de pago de una página para Opencart y plataformas de comercio electrónico Magento 2. El complemento One Page SuperCheckout tiene más de 15,000 descargas en la tienda oficial de complementos y es una de las extensiones más vendidas. Además de eso, el módulo admite todas las pasarelas de pago y métodos de envío populares, lo que abre la puerta a infinitas personalizaciones para el administrador de la tienda de comercio electrónico.

Si tiene consultas sobre la integración de la pasarela de pago de PayPal, póngase en contacto con nuestro equipo de soporte a nuestra dirección de correo electrónico. support@knowband.com.

También puede consultar nuestro Módulo más vendido Aplicación móvil para PrestaShop