Hola amigos (siguiendo la sugerencia de Damian Culotta posteo aquí),
Implementé en mi ecommerce MercadoPagos sin problemas, pero, cuando instalé el modulo de MercadoEnvios me encontré con un problema o bug el cual aún no pude resolver:
- He configurado un producto simple con su variables: altura, anchura, largo, peso. A estas variables les he otorgado un valor aceptado por MercadoEnvios..
- Luego en la configuración de MercadoEnvios, he asociado esas variables a las que solicita MercadoEnvios
- Luego en el frontend pruebo a agregar ese producto a mi carrito de compras "mochila jansport 1"
- Voy al proceso de checkout, completo con los datos de la direccion postal donde será recibido en envío, y abajo, donde dice metodo de envío.. NO HAY FORMA HASTA EL MOMENTO.. MercadoEnvios siempre me dice "metodo de envío no disponible"
Si alguien puede darme una mano estaré agradecidos.. puedo darles si quieren por privado el user y clave de admin de mi magento, ftp, ssh.. total todo está a pruebas aún.
Les dejo unas capturas:
Hola @ezequiel_cattaneo,
Creo que probaría en depurar cuando el módulo hace collectRates para ver qué devuelve (o en el addRate): https://github.com/mercadopago/cart-magento2/blob/master/src/MercadoPago/MercadoEnvios/Model/Carrier...
Sólo como un segundo control, ¿revisaste si la configuración te quedó bien? https://github.com/mercadopago/cart-magento2/wiki/Configurando-o-Mercado-Envios
Revisaría qué devuelve $result, y si en el foreach tenés methodId.
Si hasta ahí avanza, me metería en _getRate para ver qué pasa ahi y qué devuelve.
Entiendo que en algún momento te tiene que pasar que no tengas método habilitados o que _getErrorRate te devuelva algo también.
¿Tu cuenta de MercadoPago tiene MercadoEnvíos habilitado? (digo, del lado de la cuenta está todo ok?)
Damian,
Si, mi cuenta mercadopago tiene habilitado mercadoenvios..
Te pregunto algo.. donde deberia logear los errores el modulo de mercadoenvios?
Porque en var/log solo está el de mercadopagos.. que entro ahi y solo veo dos lineas:
[2018-02-07 20:50:08] mercadoenvios.log.ALERT: REQUEST SHIPMENT ME: - {"cost":0} [] []
[2018-02-07 20:51:36] mercadoenvios.log.ALERT: REQUEST SHIPMENT ME: - {"cost":0} [] []
No son de hoy...
Por otro lado entro a exception.log.. pero nada veo solo mensajes de error de escritura en tmp:
[2018-02-09 11:04:04] main.CRITICAL: Warning: realpath(): open_basedir restriction in effect. File(/tmp) is not within the allowed path(s): (/home/admin/web/qlindomoda.com.ar/public_html:/home/admin/tmp) in /home/admin/web/qlindomoda.com.ar/public_html/vendor/magento/framework/Filesystem/DirectoryList.php on line 99 {"exception":"[object] (Exception(code: 0): Warning: realpath(): open_basedir restriction in effect. File(/tmp) is not within the allowed path(s): (/home/admin/web/qlindomoda.com.ar/public_html:/home/admin/tmp) in /home/admin/web/qlindomoda.com.ar/public_html/vendor/magento/framework/Filesystem/DirectoryList.php on line 99 at /home/admin/web/qlindomoda.com.ar/public_html/vendor/magento/framework/App/ErrorHandler.php:61)"} []
Hola @ezequiel_cattaneo,
Entiendo que aquí https://github.com/mercadopago/cart-magento2/blob/master/src/MercadoPago/MercadoEnvios/Model/Carrier...
¿Podés validar si la validación de ese IF da true o false?
Damian,
Te refieres a si entra en este if?
if ($methodId == self::INVALID_METHOD) {
?><script languaje='javascript'>alert('entro');</script><?
exit();
return $this->_getErrorRate();
}
La verdad es que no supe otra manera de saber si entraba o no.. pero igual no salta ningun popup de alerta.. pero, fijate lo que hace en el checkout.. te envío un prtscr
Hola @ezequiel_cattaneo,
En esos métodos todos te dan 0, por eso no los muestra.
¿Podrías depurar https://github.com/mercadopago/cart-magento2/blob/master/src/MercadoPago/MercadoEnvios/Model/Carrier... ?
Para ver qué info viene en el request.
Por otra parte, te sugiero, cómo mínimo, usar el logger de Magento para registrar eventos o mensajes ( https://www.damianculotta.com.ar/magento/como-usar-el-logger-en-magento2/ ).
O si pudieras usar Xdebug sería aún mejor.
hola ezequiel_cattaneo que versión de magento estas utilizando?
te sugiero que elimines el modulo de MercadoPago / Mercado Envios y lo instales via composer
Este proceso explicará la instalación del módulo Mercado Pago vía Composer:
Instalación vía Composer
"repositories": [ { "type": "vcs", "url": "https://github.com/mercadopago/cart-magento2" } ]
composer require mercadopago/magento2-plugin
bin/magento setup:upgrade
Se que es un tema viejo, pero lo lograste resolver?