Post by jaragues » Mon May 30, 2011 3:54 am

El problema que tengo es que no encuentro forma de armar las opciones de envío, necesito ofrecer el envío junto con el pago contra reembolso, con una base de importe fija (por ej, $40) + un 6% del sub total, pensaba que el usuario puede elegir un envío configurado como tarifa plana para usar la base fija pero no encuentro la forma de calcular el 6% adicional si elige contra reembolso como forma de pago.

Probé el código que sugeriste en otro post modificando la librería cart.php pero me dio error Undefined index: payment_method in /.../shop/system/library/cart.php on line 224, tengo la última versión traducida al español, desde ya muchas gracias.

PD: el código que agregue en la funcion get subtotal() { fue el siguiente:

Code: Select all

 if ($this->session->data['payment_method']['id'] == 'cod') {
      $total += $total * 6 / 100;
      }

Newbie

Posts

Joined
Tue May 24, 2011 10:04 pm

Post by cofran » Mon May 30, 2011 7:35 am

proba con:

Code: Select all

if (isset($this->session->data['payment_method']['id']) == 'cod') {
      $total += $total * 6 / 100;
      }
y comenta donde aparece el error de undefined

User avatar
Active Member

Posts

Joined
Thu Oct 01, 2009 7:37 am
Location - Córdoba, Argentina

Post by jaragues » Tue May 31, 2011 7:12 am

Con esa modificación funcionó perfecto, muchas gracias por la ayuda!!!

Newbie

Posts

Joined
Tue May 24, 2011 10:04 pm

Post by jaragues » Tue May 31, 2011 10:11 am

Perdón que vuelva a abrir el hilo pero en realidad funcionó bien el calculo del 6% cuando elegí el pago contra reembolso, pero luego de probar con otros medios de pago como transferencia bancaria o cheque resulta que me calcula también el 6% cuando no debería hacerlo, es como que no toma la condición y hace el mismo calculo para todas las formas de pago. Espero que puedas ayudarme, muchas gracias.

Newbie

Posts

Joined
Tue May 24, 2011 10:04 pm

Post by cofran » Tue May 31, 2011 11:56 pm

que raro, a ver, si hace algo como esto:

Code: Select all

if (isset($this->session->data['payment_method']['id']) and $this->session->data['payment_method']['id'] == 'cod') {
      $total += $total * 6 / 100;
      }

User avatar
Active Member

Posts

Joined
Thu Oct 01, 2009 7:37 am
Location - Córdoba, Argentina

Post by jaragues » Wed Jun 01, 2011 11:12 pm

AHora si funciona correctamente, muchas gracias nuevamente!!!

Newbie

Posts

Joined
Tue May 24, 2011 10:04 pm

Post by iago » Mon Jun 06, 2011 5:23 am

Este método sería también válido para Paypal?

New member

Posts

Joined
Fri May 27, 2011 8:21 pm

Post by cofran » Mon Jun 06, 2011 10:16 am

Si también sería válido, pero si lo vas hacer con varios te recomiendo "multiple payment fee" --> http://www.opencart.com/index.php?route ... ion_id=704

Saludos!

User avatar
Active Member

Posts

Joined
Thu Oct 01, 2009 7:37 am
Location - Córdoba, Argentina

Post by iago » Mon Jun 06, 2011 4:22 pm

Es tentador, es posible que lo compre un día de estos.

Gracias.

New member

Posts

Joined
Fri May 27, 2011 8:21 pm

Post by jpa » Fri Jul 20, 2012 12:40 am

Reabro este tema de hace algún tiempo.

Estoy usando la versión 1.5.1.3 y, no sé si es que tengo que hacer algún cambio o que no funciona en esta versión.

No me da ningún error en el código, pero por más que elijo contrareembolso no me aplica la comisión (en mi caso del 3.5%... que se ve que es más barato ahora)

Muchas gracias y un saludo

Jesús
_____________________________________________
Webpage: Café Veracruz
OpenCart Shop: Tienda Online de Veracruz


User avatar
jpa
Newbie

Posts

Joined
Fri Nov 25, 2011 11:30 pm
Location - A Coruña - Spain

Post by marot77 » Wed Sep 25, 2013 2:05 am

Hola, perdonar re-abrir el post, pero me ha sido totalmente imposible encontrar dicha ruta y archivo para modificar.

¿Cual es la ruta y archivo a modificar para dichos cambios?

Mil Gracias. O0

Newbie

Posts

Joined
Tue May 14, 2013 4:58 pm
Who is online

Users browsing this forum: No registered users and 59 guests