Plug in para la integración con gateway de pago Todo Pago
- Consideraciones Generales
- Instalación
- Configuración
- Configuración plug in
- Datos adiccionales para prevención de fraude
- Consulta de transacciones
- Devoluciones
- Tablas de referencia
El plug in de pagos de Todo Pago, provee a las tiendas Magento de un nuevo método de pago, integrando la tienda al gateway de pago. La versión de este plug in esta testeada en PHP 5.4 en adelante y MAGENTO 2
Usando Composer
composer require todopago/magento2-plugin
Manualmente
A. Descomprimir el archivo magento2-plugin-master.zip.
B. Copiar todo su contenido en la carpeta app/code/Prisma/TodoPago
Luego,
- Ejecutar los siguientes comandos de configuración de Magento desde la consola
php bin/magento module:enable Prisma_TodoPago
php bin/magento setup:upgrade
php bin/magento setup:di:compile
php bin/magento setup:static-content:deploy es_AR #idioma instalado de la tienda.
- Refrescar el cache de Magento desde 'System -> Cache Management'
- Luego ir a 'Stores -> Configuration -> Sales -> Payment Methods' y configurar desde la pestaña de Todo Pago.
Observación:
Descomentar: extension=php_curl.dll, extension=php_soap.dll y extension=php_openssl.dll del php.ini, ya que para la conexión al gateway se utiliza la clase SoapClient del API de PHP.
Volver a inicio
configuración plug in. ####Configuración plug in Para llegar al menu de configuración ir a: Stores -> Configuration y seleccionar Paymenth Methods en el menú izquierdo. Entre los medios de pago aparecerá una solapa con el nombre Todo Pago.
####Consideraciones Generales (para todas los verticales, por defecto RETAIL) El plug in, toma valores estándar del framework para validar los datos del comprador. Principalmente se utiliza una instancia de la clase Mage_Sales_Model_Order. Para acceder a los datos del comprador se utiliza el metodo getBillingAddress() que devuelve un objeto ya instanciado del cual se usan los siguientes métodos:
$order = new Mage_Sales_Model_Order ();
$order->load($id);
-- Ciudad de Facturación: $order->getBillingAddress()->getCity();
-- País de facturación: $order->getBillingAddress()->getCountry();
-- Identificador de Usuario: $order->getBillingAddress()->getCustomerId();
-- Email del usuario al que se le emite la factura: $order->getBillingAddress()->getEmail();
-- Nombre de usuario el que se le emite la factura: $order->getBillingAddress()->getFirstname();
-- Apellido del usuario al que se le emite la factura: $order->getBillingAddress()->getLastname();
-- Teléfono del usuario al que se le emite la factura: $order->getBillingAddress()->getTelephone();
-- Provincia de la dirección de facturación: $order->getBillingAddress()->getRegion();
-- Domicilio de facturación: $order->getBillingAddress()->getStreet1();
-- Complemento del domicilio. (piso, departamento): $order->getBillingAddress()->getStreet2();
-- Moneda: $order->getBaseCurrencyCode();
-- Total: $order->getGrandTotal();
-- IP de la pc del comprador: $order->getRemoteIp();
Otros de los modelos utlilizados es Customer del cual a través del método getPasswordHash(), se extrae el password del usuario (comprador) y la tabla sales_flat_invoice_grid, donde se consultan las transacciones facturadas al comprador. ####Consideraciones para vertical RETAIL Las consideración para el caso de empresas del rubro RETAIL son similares a las consideraciones generales con la diferencia de se utiliza el método getShippingAddress() que devuelve un objeto y del cual se utilizan los siguientes métodos;
-- Ciudad de envío de la orden: $order->getShippingAddress()->getCity();
-- País de envío de la orden: $order->getShippingAddress()->getCountry();
-- Mail del destinatario: $order->getShippingAddress()->getEmail();
-- Nombre del destinatario: $order->getShippingAddress()->getFirstname();
-- Apellido del destinatario: $order->getShippingAddress()->getLastname();
-- Número de teléfono del destinatario: $order->getShippingAddress()->getTelephone();
-- Código postal del domicio de envío: $order->getShippingAddress()->getPostcode();
-- Provincia de envío: $order->getShippingAddress()->getRegion();
-- Domicilio de envío: $order->getShippingAddress()->getStreet1();
-- Método de despacho: $order->getShippingDescription();
-- Código de cupón promocional: $order->getCuponCode();
-- Para todo lo referido productos: $order->getItemsCollection();
nota: el valor resultante de $order->getItemsCollection(), se usan como referencias para conseguir información del modelo catalog/producto - a través de los métodos getDescription(), getName(), getSku(), getQtyOrdered(), getPrice()-.
####Muy Importante
Provincias: uno de los datos requeridos para prevención común a todos los verticales es el campo provinicia/state tanto del comprador como del lugar de envío, para tal fin el plug in utiliza el valor del campo región de las tablas de la orden (sales_flat_order_address) a través del getRegion() tanto del billingAddress como del shippingAddress. El formato de estos datos deben ser tal cual la tabla de referencia (tabla provincias). Para simplificar la implementación de la tabla en magento se deja para su implementación la clase Decidir\Decidirpago\Model\System\Config\Source\Csprovincias.php, con el formato requerido. Al final de este documento se muestra un script sql que pude ser tomado de refrencia.
En caso que la tienda decida no implementar este nuevo atributo o que el valor quede vacío el plug in mandara al sistema el mismo número que devuleve el método $order->getBillingAddress()->getTelephone(). Volver a inicio
El plug in crea un nuevo tab para poder consultar on line las características de la transacción en el sistema de Todo Pago. Se puede consultar desde 'Sales -> Orders' y elegir la orden correspondiente, si la misma ha sido pagada con TodoPago aparecerá las pestaña 'TodoPago Status'
Volver a inicio
Es posible realizar devoluciones o reembolsos mediante el procedimiento habitual de Magento. Para ello dirigirse a una orden, y mediante el menú seleccionar "Invoices" para poder generar una nota de crédito (credit memo) sobre la factura. Allí deberá hacerse click en el botón "Refund" para que la devolución sea online y procesada por Todo Pago.
Volver a inicio
######Provincias
Provincias
Provincia | Código |
---|---|
CABA | C |
Buenos Aires | B |
Catamarca | K |
Chaco | H |
Chubut | U |
Córdoba | X |
Corrientes | W |
Entre Ríos | E |
Formosa | P |
Jujuy | Y |
La Pampa | L |
La Rioja | F |
Mendoza | M |
Misiones | N |
Neuquén | Q |
Río Negro | R |
Salta | A |
San Juan | J |
San Luis | D |
Santa Cruz | Z |
Santa Fe | S |
Santiago del Estero | G |
Tierra del Fuego | V |
Tucumán | T |