A ZPRESTASH
P

Restringir las formas de pago por zonas en Prestashop

Podemos restringuir las formas de pago según las zonas en las que se hagan los pedidos. Pues no es lo mismo pedidos de la península como pedídos en las islas, ceuta o melilla. 

Para solucionar la restricción de las formas de pago según las zonas se puede hacer lo siguiente:

Se debe modificar el código en el archivo .php de cada módulo de método de pago que se quiera restringir. Haría falta incluir en el hook las siguientes líneas:

public function hookPayment($params)
$id_zone = Address::getZoneById((int)$this->context->cart->id_address_delivery);
if ($id_zone == 9)
return;

Este código que exluirá la aparición del módulo, por ejemplo, en la zona con id=9.

Con este codigo accedemos a la función de la clase AddressgetZoneById, que detecta la id de la zona a la que corresponde una dirección en función del parámetro $id_address, parámetro que en este caso se le asigna corresponde a la id de la dirección de entrega, incluida en la clase Cart, en el carrito de compra.

 

Es posible que existan otras soluciones para restringir las formas de pago por zonas, dependiendo de la instalación o configuraciones de su Prestashop. Si desea un mayor asesoramiento para la restricción de formas de pago por zonas en su tienda online no dude en contactar con nosotros para un mejor diagnóstico.


prestashop 1.6.x


¿Te ha gustado?, compártelo:

por AZprestashop

¿Ya tiene una tienda online creada?

Si ya ha pasado la fase de crear su tienda online, podemos ayudarle a mejorar con nuestra auditoría.

Inserta la dirección de su tienda online y datos de envío

¡No te pierdas una!

Descubre los mejores trucos de Pretashop, tutoriales y consejos para optimizar tu tiendao online:

Dónde Estamos

CACERES: C/ Gabino Muriel 3, 1A
Azuaga: Avd. de la Estación 32
SEVILLA: Avd. Eduardo Dato 69, 5º Planta (edif. Galia)

Teléfonos

Cáceres: 927 26 10 71
Azuaga: 924 89 15 94
Sevilla: 954 32 35 66

Horarios

Comercial L-V: 9:00 - 15:00
Soporte L-V: 8:00 y 24:00
Urgencias: 24h los 365 días.