2017 © Pedro Pel√°ez
 

magento2-module magento2-plugin

Plugin de integracion de TodoPago para Magento 2

image

todopago/magento2-plugin

Plugin de integracion de TodoPago para Magento 2

  • Tuesday, July 24, 2018
  • by damianwajser
  • Repository
  • 33 Watchers
  • 4 Stars
  • 1,584 Installations
  • HTML
  • 0 Dependents
  • 0 Suggesters
  • 5 Forks
  • 11 Open issues
  • 6 Versions
  • 25 % Grown

The README.md

, (*1)

Magento 2 - Módulo Todo Pago

Plug in para la integración con gateway de pago Todo Pago + Consideraciones Generales + Instalación + Configuración + Configuración plug in + Formulario Híbrido + Obtener datos de configuración + Configuración de Maximo de Cuotas + Nuevas columnas y tablas + Prevencion de Fraude + Consideraciones generales + Consideraciones para vertical retail + Características + Consulta de transacciones + Devoluciones + Tablas de referencia + Tabla de errores + Versiones disponibles, (*2)

, (*3)

Consideraciones Generales

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, (*4)

, (*5)

Instalación

Usando Composer, (*6)

composer require todopago/magento2-plugin

Manualmente, (*7)

A. Descomprimir el archivo magento2-plugin-master.zip., (*8)

B. Copiar todo su contenido en la carpeta app/code/Prisma/TodoPago, (*9)

Luego,, (*10)

  1. 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.
  1. Refrescar el cache de Magento desde 'System -> Cache Management'
  2. 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., (*11)

Volver a inicio, (*12)

, (*13)

Configuración

, (*14)

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. El Plug-in esta separado en configuarci√≥n general y 2 sub-menues m√°s., (*15)

Men√ļ principalimagen de configuracion, (*16)

Men√ļ ambienteimagen de ambientes, (*17)

Men√ļ estadosimagen de estados, (*18)

, (*19)

Volver a inicio, (*20)

, (*21)

Formulario Híbrido

En la configuracion del plugin tambien estara la posibilidad de mostrarle al cliente el formulario de pago de TodoPago integrada en el sitio. Para esto , en la configuracion se debe seleccionar YES en el campo Utilizar formulario híbrido: imagen de configuracion de formulario hibridoDel lado del cliente el formulario se vera asi:imagen de formulario hibrido del lado del cliente, (*22)

Volver a inicio, (*23)

, (*24)

Obtener datos de configuracion

Se puede obtener los datos de configuracion del plugin con solo loguearte con tus credenciales de Todopago. a. Ir a la opción Autocompletar con Login en TodoPago > imagen de obtener credenciales b. En el popup loguearse con el mail y password de Todopago. imagen de obtener credenciales, (*25)

c. Los datos se cargaran automaticamente en los campos Merchant ID y Security code en el ambiente correspondiente (Desarrollo o produccion ) y solo hay que hacer click en el boton guardar datos y listo. imagen de credencialesVolver a inicio, (*26)

, (*27)

Configuración de Maximo de Cuotas

Se puede configurar la cantidad máxima de cuotas que ofrecerá el formulario de TodoPago con el campo cantidad máxima de cuotas. Para que se tenga en cuenta este valor se debe habilitar el campo Activar máximo de cuotas y tomará el valor fijado para máximo de cuotas. En caso que esté habilitado el campo y no haya un valor puesto para las cuotas se tomará el valor 12 por defecto., (*28)

imagen de configuracion de m√°ximo de cuotas, (*29)

Volver a inicio, (*30)

, (*31)

Nuevas columnas y tablas

El plug in para lograr las nuevas funcionalidades y su persistencia dentro del framework crear√° nuevas tablas y columnas:, (*32)

Nuevas Columnas:
  1. en la tabla sales_order: todopagocostofinanciero.
Nuevas tablas:
  1. tabla todopago_transacciones

Volver a inicio, (*33)

, (*34)

Prevención de Fraude

, (*35)

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:, (*36)

   $objectManager = \Magento\Framework\App\ObjectManager::getInstance();
   $order = $objectManager->create('Magento\Sales\Model\Order')->load($id); 
-- Ciudad de Facturación: $order->getBillingAddress()->getCity();
-- País de facturación: $order->getBillingAddress()->getCountryId();
-- Código postal de facturación: $order->getBillingAddress()->getPostcode();
-- 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()->getStreet();
-- 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();
-- 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., (*37)

, (*38)

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;, (*39)

   $objectManager = \Magento\Framework\App\ObjectManager::getInstance();
   $order = $objectManager->create('Magento\Sales\Model\Order')->load($id); 
-- 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();
-- Método de despacho: $order->getShippingDescription();
-- 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()-., (*40)

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., (*41)

, (*42)

Características

, (*43)

Consulta de Transacciones

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., (*44)

Estado
, (*45)

Volver a inicio, (*46)

, (*47)

Devoluciones

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. imagen devoluciones, (*48)

Volver a inicio, (*49)

, (*50)

Tablas de Referencia

Provincias

, (*51)

Provincias, (*52)

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

, (*53)

Tabla de errores operativos

Id mensaje Mensaje
-1 Aprobada.
1100 El monto ingresado es menor al mínimo permitido
1101 El monto ingresado supera el m√°ximo permitido.
1102 Tu tarjeta no corresponde con el banco seleccionado. Inici√° nuevamente la compra.
1104 El precio ingresado supera al m√°ximo permitido.
1105 El precio ingresado es menor al mínimo permitido.
1070 El plazo para realizar esta devolución caducó.
1081 El saldo de tu cuenta es insuficiente para realizar esta devolución.
2010 En este momento la operación no pudo ser realizada. Por favor intentá más tarde. Volver a Resumen.
2031 En este momento la validación no pudo ser realizada, por favor intentá más tarde.
2050 Tu compra no puede ser realizada. Comunicate con tu vendedor.
2051 Tu compra no pudo ser procesada. Comunicate con tu vendedor.
2052 Tu compra no pudo ser procesada. Comunicate con tu vendedor. 
2053 Tu compra no pudo ser procesada. Comunicate con tu vendedor.
2054 El producto que querés comprar se encuentra agotado. Por favor contactate con tu vendedor.
2056 Tu compra no pudo ser procesada.
2057 La operación no pudo ser procesada. Por favor intentá más tarde.
2058 La operación fué rechazada. Comunicate con el 0800 333 0010.
2059 La operación no pudo ser procesada. Por favor intentá más tarde.
2062 Tu compra no puede ser realizada. Comunicate con tu vendedor.
2064 Tu compra no puede ser realizada. Comunicate con tu vendedor.
2074 Tu compra no pudo ser procesada. Iniciala nuevamente utilizando otro medio de pago.
2075 Tu compra no pudo ser procesada. Iniciala nuevamente utilizando otro medio de pago.
2076 Tu compra no pudo ser procesada. Iniciala nuevamente utilizando otro medio de pago.
90000 La cuenta destino de los fondos es inválida. Verificá la información ingresada en Mi Perfil.
90001 La cuenta ingresada no pertenece al CUIT/ CUIL registrado.
90002 No pudimos validar tu CUIT/CUIL. Comunicate con nosotros acá para más información.
99900 Tu compra fue exitosa.
99901 Tu Billetera Virtual no tiene medios de pago adheridos. Ingres√° a tu cuenta de Todo Pago y carg√° tus tarjetas.
99902 Tu compra no pudo ser procesada. Iniciala nuevamente utilizando otro medio de pago.
99903 Lo sentimos, hubo un error al procesar la operación. Por favor reintentá más tarde.
99904 El saldo de tu tarjeta no te permite realizar esta compra. Iniciala nuevamente utilizando otro medio de pago.
99905 En este momento la operación no pudo ser procesada. Intentá nuevamente.
99907 Tu compra no pudo ser procesada. Comunicate con tu vendedor. 
99910 Tu compra no pudo ser procesada. Iniciala nuevamente utilizando otro medio de pago.
99911 Lo sentimos, se terminó el tiempo para confirmar esta compra. Por favor iniciá nuevamente el proceso de pago.
99950 Tu compra no pudo ser procesada.
99960 Esta¬†compra requiere autorizaci√≥n de VISA. Comunicate al n√ļmero que se encuentra al dorso de tu tarjeta.
99961 Esta¬†compra requiere autorizaci√≥n de AMEX. Comunicate al n√ļmero que se encuentra al dorso de tu tarjeta.
99970 Lo sentimos, no pudimos procesar la operación. Por favor reintentá más tarde.
99971 Lo sentimos, no pudimos procesar la operación. Por favor reintentá más tarde.
99972 Tu compra no pudo realizarse. Iniciala nuevamente utilizando otro medio de pago. 
99974 Tu compra no pudo realizarse. Iniciala nuevamente utilizando otro medio de pago. 
99975 Tu compra no pudo realizarse. Iniciala nuevamente utilizando otro medio de pago. 
99977 Tu compra no pudo realizarse. Iniciala nuevamente utilizando otro medio de pago. 
99979 Tu compra no pudo realizarse. Iniciala nuevamente utilizando otro medio de pago. 
99978 Lo sentimos, no pudimos procesar la operación. Por favor reintentá más tarde.
99979 Lo sentimos, el pago no pudo ser procesado.
99980 Ya realizaste una compra por el mismo importe. Iniciala nuevamente en unos minutos.
99982 Tu compra no pudo ser procesada. Iniciala nuevamente utilizando.
99983 Tu compra no pudo ser procesada. Iniciala nuevamente utilizando otro medio de pago.
99984 Tu compra no pudo ser procesada. Iniciala nuevamente utilizando otro medio de pago.
99985 Tu compra no pudo ser procesada. Iniciala nuevamente utilizando otro medio de pago.
99986 Tu compra no pudo ser procesada. Iniciala nuevamente utilizando otro medio de pago.
99987 Tu compra no pudo ser procesada. Iniciala nuevamente utilizando otro medio de pago.
99988 Tu compra no pudo ser procesada. Iniciala nuevamente utilizando otro medio de pago.
99989 Tu tarjeta no autorizó tu compra. Iniciala nuevamente utilizando otro medio de pago.
99990 Tu tarjeta est√° vencida. Inici√° nuevamente la compra utilizando otro medio de pago.
99991 Los datos informados son incorrectos. Por favor ingresalos nuevamente.
99992 El saldo de tu tarjeta no te permite realizar esta compra. Iniciala nuevamente utilizando otro medio de pago.
99993 Tu tarjeta no autorizó el pago. Iniciá nuevamente la compra utilizando otro medio de pago.
99994 El saldo de tu tarjeta no te permite realizar esta operacion.
99995 Tu tarjeta no autorizó tu compra. Iniciala nuevamente utilizando otro medio de pago.
99996 La operación fué rechazada por el medio de pago porque el monto ingresado es inválido.
99997 Lo sentimos, en este momento la operación no puede ser realizada. Por favor intentá más tarde.
99998 Tu tarjeta no autorizó tu compra. Iniciala nuevamente utilizando otro medio de pago.
99999 Tu compra no pudo realizarse. Iniciala nuevamente utilizando otro medio de pago.

Volver a inicio, (*54)

, (*55)

Tabla de errores de integración

**Id mensaje** **Descripción**
98001 ERROR: El campo CSBTCITY es requerido
98002 ERROR: El campo CSBTCOUNTRY es requerido
98003 ERROR: El campo CSBTCUSTOMERID es requerido
98004 ERROR: El campo CSBTIPADDRESS es requerido
98005 ERROR: El campo CSBTEMAIL es requerido
98006 ERROR: El campo CSBTFIRSTNAME es requerido
98007 ERROR: El campo CSBTLASTNAME es requerido
98008 ERROR: El campo CSBTPHONENUMBER es requerido
98009 ERROR: El campo CSBTPOSTALCODE es requerido
98010 ERROR: El campo CSBTSTATE es requerido
98011 ERROR: El campo CSBTSTREET1 es requerido
98012 ERROR: El campo CSBTSTREET2 es requerido
98013 ERROR: El campo CSPTCURRENCY es requerido
98014 ERROR: El campo CSPTGRANDTOTALAMOUNT es requerido
98015 ERROR: El campo CSMDD7 es requerido
98016 ERROR: El campo CSMDD8 es requerido
98017 ERROR: El campo CSMDD9 es requerido
98018 ERROR: El campo CSMDD10 es requerido
98019 ERROR: El campo CSMDD11 es requerido
98020 ERROR: El campo CSSTCITY es requerido
98021 ERROR: El campo CSSTCOUNTRY es requerido
98022 ERROR: El campo CSSTEMAIL es requerido
98023 ERROR: El campo CSSTFIRSTNAME es requerido
98024 ERROR: El campo CSSTLASTNAME es requerido
98025 ERROR: El campo CSSTPHONENUMBER es requerido
98026 ERROR: El campo CSSTPOSTALCODE es requerido
98027 ERROR: El campo CSSTSTATE es requerido
98028 ERROR: El campo CSSTSTREET1 es requerido
98029 ERROR: El campo CSMDD12 es requerido
98030 ERROR: El campo CSMDD13 es requerido
98031 ERROR: El campo CSMDD14 es requerido
98032 ERROR: El campo CSMDD15 es requerido
98033 ERROR: El campo CSMDD16 es requerido
98034 ERROR: El campo CSITPRODUCTCODE es requerido
98035 ERROR: El campo CSITPRODUCTDESCRIPTION es requerido
98036 ERROR: El campo CSITPRODUCTNAME es requerido
98037 ERROR: El campo CSITPRODUCTSKU es requerido
98038 ERROR: El campo CSITTOTALAMOUNT es requerido
98039 ERROR: El campo CSITQUANTITY es requerido
98040 ERROR: El campo CSITUNITPRICE es requerido
98101 ERROR: El formato del campo CSBTCITY es incorrecto
98102 ERROR: El formato del campo CSBTCOUNTRY es incorrecto
98103 ERROR: El formato del campo CSBTCUSTOMERID es incorrecto
98104 ERROR: El formato del campo CSBTIPADDRESS es incorrecto
98105 ERROR: El formato del campo CSBTEMAIL es incorrecto
98106 ERROR: El formato del campo CSBTFIRSTNAME es incorrecto
98107 ERROR: El formato del campo CSBTLASTNAME es incorrecto
98108 ERROR: El formato del campo CSBTPHONENUMBER es incorrecto
98109 ERROR: El formato del campo CSBTPOSTALCODE es incorrecto
98110 ERROR: El formato del campo CSBTSTATE es incorrecto
98111 ERROR: El formato del campo CSBTSTREET1 es incorrecto
98112 ERROR: El formato del campo CSBTSTREET2 es incorrecto
98113 ERROR: El formato del campo CSPTCURRENCY es incorrecto
98114 ERROR: El formato del campo CSPTGRANDTOTALAMOUNT es incorrecto
98115 ERROR: El formato del campo CSMDD7 es incorrecto
98116 ERROR: El formato del campo CSMDD8 es incorrecto
98117 ERROR: El formato del campo CSMDD9 es incorrecto
98118 ERROR: El formato del campo CSMDD10 es incorrecto
98119 ERROR: El formato del campo CSMDD11 es incorrecto
98120 ERROR: El formato del campo CSSTCITY es incorrecto
98121 ERROR: El formato del campo CSSTCOUNTRY es incorrecto
98122 ERROR: El formato del campo CSSTEMAIL es incorrecto
98123 ERROR: El formato del campo CSSTFIRSTNAME es incorrecto
98124 ERROR: El formato del campo CSSTLASTNAME es incorrecto
98125 ERROR: El formato del campo CSSTPHONENUMBER es incorrecto
98126 ERROR: El formato del campo CSSTPOSTALCODE es incorrecto
98127 ERROR: El formato del campo CSSTSTATE es incorrecto
98128 ERROR: El formato del campo CSSTSTREET1 es incorrecto
98129 ERROR: El formato del campo CSMDD12 es incorrecto
98130 ERROR: El formato del campo CSMDD13 es incorrecto
98131 ERROR: El formato del campo CSMDD14 es incorrecto
98132 ERROR: El formato del campo CSMDD15 es incorrecto
98133 ERROR: El formato del campo CSMDD16 es incorrecto
98134 ERROR: El formato del campo CSITPRODUCTCODE es incorrecto
98135 ERROR: El formato del campo CSITPRODUCTDESCRIPTION es incorrecto
98136 ERROR: El formato del campo CSITPRODUCTNAME es incorrecto
98137 ERROR: El formato del campo CSITPRODUCTSKU es incorrecto
98138 ERROR: El formato del campo CSITTOTALAMOUNT es incorrecto
98139 ERROR: El formato del campo CSITQUANTITY es incorrecto
98140 ERROR: El formato del campo CSITUNITPRICE es incorrecto
98201 ERROR: Existen errores en la información de los productos
98202 ERROR: Existen errores en la información de CSITPRODUCTDESCRIPTION los productos
98203 ERROR: Existen errores en la información de CSITPRODUCTNAME los productos
98204 ERROR: Existen errores en la información de CSITPRODUCTSKU los productos
98205 ERROR: Existen errores en la información de CSITTOTALAMOUNT los productos
98206 ERROR: Existen errores en la información de CSITQUANTITY los productos
98207 ERROR: Existen errores en la información de CSITUNITPRICE de los productos

Volver a inicio, (*56)

, (*57)

Versiones Disponibles

Version del Plugin Estado Versiones Compatibles
v1.3.x Stable (Current version) Community Edition 2.0.x - 2.1.x
Enterprise Edition 2.0.x - 2.1.x

Click on the links above for instructions on installing and configuring the module., (*58)

Volver a inicio, (*59)

The Versions

24/07 2018

dev-master

9999999-dev

Plugin de integracion de TodoPago para Magento 2

  Sources   Download

The Requires

 

09/08 2017

1.5.0

1.5.0.0

Plugin de integracion de TodoPago para Magento 2

  Sources   Download

The Requires

 

16/03 2017

1.3.0

1.3.0.0

Plugin de integracion de TodoPago para Magento 2

  Sources   Download

The Requires

 

21/02 2017

1.2.3

1.2.3.0

Plugin de integracion de TodoPago para Magento 2

  Sources   Download

The Requires

 

23/01 2017

1.2.1

1.2.1.0

Plugin de integracion de TodoPago para Magento 2

  Sources   Download

The Requires

 

15/06 2016

1.0.0

1.0.0.0

Plugin de integracion de TodoPago para Magento 2

  Sources   Download

The Requires