Magento

Acepta pagos para tu e-commerce con Magento

Magento es una plataforma de comercio electrónico de código abierto escrita en PHP. El código fuente de Magento se distribuye bajo Open Software License v3.0.

Por estas razones, Kushki buscó integrar sus métodos de pago mediante la creación de un plugin que permita realizar pagos con tarjeta, el detalle de la instalación y administración lo encontrarás a continuación.

Acepta ✅No acepta ❌
Pagos con tarjeta de débito y créditoSuscripciones
Pagos en efectivo
Transferencias
Autorización y captura
Reembolsos totales

Requisitos

  • Magento 2.X para una óptima compatibilidad.

Instalación y configuración

EL código fuente del plugin puede ser descargado aquí: https://github.com/Kushki/kushki-magento/releases

1. Instalación

Requisitos:

  • Debes tener descargado el módulo de pagos de Kushki en formato .zip.
  • Debes tener Magento instalado y configurado con el tipo de moneda que usarás.
  • Debes tener acceso a la sección de administración de Magento.

Sigue estas instrucciones para instalar el plugin de Kushki en tu tienda Magento:

1.1. Extrae el contenido del archivo .zip.

1.2. En el directorio de instalación de Magento, ve a app>code (en caso de no existir, debes crear la carpeta code) y pega la carpeta extraída del paso 1. La ruta final debería ser app > code > Kushki > Payment.

1.3. Actualizar Magento. Desde una terminal SSH, ejecuta el siguiente comando en el directorio raíz de Magento 2: php bin/magento setup:upgrade.

1.4. Compila la configuración corriendo el siguiente comando: php bin/magento setup:di:compile.

1.5. Despliega el contenido estático. Ejecuta el siguiente comando en el directorio raíz de Magento 2: php bin/magento setup:static-content:deploy.

1.6. Finalmente, remueve el caché ejecutando el comando: php bin/magento cache:flush.

2. Configuración

2.1. Habilita Kushki en tu tienda Magento

2.1.1. Ve a Store > Configuration > Sales > Payment Methods > Kushki Payment, habilita el plugin de pago de Kushki cambiando a Yes en la sección Enabled.

pmto01

Una vez que hayas habilitado el método de pago de Kushki, los campos de credenciales y otras opciones serán visibles.

pmto02

2.1.2 Agrega el título de pago que será mostrado al cliente en el front-end.

2.1.3. Agrega las llaves públicas y privadas. Estas credenciales pueden ser encontradas en la consola de administración de Kushki, en la sección Desarrolladores , opción Credenciales.

2.1.4. Específica el ambiente para que las peticiones se envíen al servidor de Kushki con la opcion Enable Test Mode:

  • Para el ambiente de pruebas selecciona YES
  • Para el ambiente de producción selecciona NO

2.1.5. Permite a los clientes pagar desde cualquier país en la sección Payment from Applicable Countries o restringe la lista de países en la sección Payment from Specific Countries.

2.1.6. Ingresa el valor máximo y mínimo para restringir el pago basado en el monto total. (Opcional)

2.1.7. En la opción ordenar, ajusta la posición del checkout que se mostrará en tu sitio web al momento de realizar un pago. (Opcional)

2.2. Configura tus credenciales de Magento en la Consola de Kushki

Para que los pagos que recibas con transferencia o efectivo puedan funcionar correctamente, es necesario configurar las credenciales que Magento te proporciona en la sección Integrations.

2.2.1. Obtener las credenciales de Magento.

Sigue estas instrucciones para obtener las credenciales de integración en Magento:

2.2.1.1. Desde tu tienda Magento, dirígete a System > integrations.
2.2.1.2. Una vez dentro, haz clic en el botón Add New Integration para generar una nueva integración. Se abrirá una nueva ventana para ingresar la información de la integración.
2.2.1.3. Agrega un nombre de la nueva integración (por ejemplo, Kushki) y haz clic en el botón de Save para guardar la nueva integración. El sistema te regresará a la pantalla con el listado de las integraciones que tienes disponibles.
2.2.1.4. Haz clic en Activate y posteriormente en el botón Allow. Verás en pantalla las credenciales necesarias para configurar dentro de la consola de Kushki.

2.2.2. Ingresa las credenciales de Magento en tu Consola de Kushki

2.2.2.1. Ingresa a tu consola de Kushki.
2.2.2.2. Dirígete a Configuración > Integraciones > Plugins. Se desplegarán los plugins de e-commerce disponibles.
2.2.2.3. Selecciona Magento y procede a configurar el contenido y estilo de tu formulario.
2.2.2.4. En la sección Ingresa tus credenciales, configura las credenciales obtenidas anteriormente en Magento y haz clic en el botón Verificar tokens para verificar que las credenciales sean válidas.
2.2.2.5. Si las credenciales son correctas, puedes dar clic en el botón Guardar formulario en la parte inferior una vez hayas configurado el aspecto de tu formulario de pago.

2.3. Personaliza tu formulario de pago desde la Consola de Kushki

Al enlazar tu tienda Magento con Kushki, se agregará nuestro formulario de pago en versión predeterminada con colores y estilos predefinidos. Para personalizar tu formulario de pago (Kajita) en tu tienda Magento, sigue estos pasos:

2.3.1. Accede a tu Consola de administración y dirígete a la sección de Configuración.
Navega en la página hasta encontrar la sección de Integraciones.
2.3.2. Haz clic en Plugins.
2.3.3. Selecciona Magento. Un aviso se desplegará.
2.3.4. Da clic en el aviso Configura el contenido y estilo de tu formulario. Aparecerá tu Kajita para Magento.
2.3.5. Elige si deseas recibir pagos en pago único o mediante autorización y captura.

2.3.6. Sigue las instrucciones dadas en Personaliza tu formulario de pagos para personalizar el formulario de pagos para tu tienda Magento.

formulario_magento

3. Operación del plugin

Ahora que tienes el plugin instalado y configurado, es momento de ver cómo operar con él.

3.1. Estados de las órdenes en Magento

En Magento podemos tener diferentes estados para una orden. A continuación se detallan los estados posibles de la orden con el plugin:

  • Pending: Es el estado que tienen los nuevos pedidos que aún no han sido procesados.
  • Processing: Significa que el pedido ha sido facturado o enviado, pero no ambos.
  • Complete: Los pedidos marcados como completos se han facturado y enviado en su totalidad.
  • Canceled: No se ha realizado el pago del pedido.
  • Closed: El pago del pedido ha sido reembolsado.

3.2. Procesa pagos únicos con tarjeta

Para procesar pagos únicos con tarjetas de crédito y débito , es necesario que esté seleccionada la opción Pago único en la parte superior y la opción Tarjeta de Crédito y Débito en la sección Opciones de pago>Medios de pago dentro de la consola de Kushki en la siguiente ruta: Configuración > Integraciones > Plugins > Magento > Configura el contenido y estilo de tu formulario.

Una vez se genere una nueva orden, verás la transacción en el listado de órdenes (Sales > Orders) con el estatus Processing, el cuál te indica que el pago ya se llevó a cabo.

Status_magento_ES

Cuando se complete el ship, el estatus de la orden pasará a Complete lo cuál nos indica que tanto el ship como el cobro ya se llevaron a cabo de manera satisfactoria.

3.3. Procesa pagos con transferencia

Para procesar pagos con transferencia, es necesario que esté seleccionado la opción Pago único en la parte superior y la opción Transferencia en la sección Opciones de pago>Medios de pago dentro de la consola de Kushki en la siguiente ruta: Configuración > Integraciones > Plugins > Magento > Configura el contenido y estilo de tu formulario.

Una vez se genere una nueva orden, verás la transacción en el listado de órdenes (Sales > Orders) con el estatus Pending, el cuál nos indica que el pago está en espera de ser procesado. Una vez se haya realizado la transferencia de manera exitosa, el estado de la orden cambiará a Processing, indicando que la transacción fue correctamente pagada.

3.4. Procesa pagos en efectivo

Para procesar pagos con efectivo, es necesario que esté seleccionada la opción Pago único en la parte superior y la opción Efectivo en la sección Opciones de pago>Medios de pago dentro de la consola de Kushki en la siguiente ruta: Configuración > Integraciones > Plugins > Magento > Configura el contenido y estilo de tu formulario.

Una vez se genere una nueva orden, podemos ver la transacción en la tienda Magento en el listado de órdenes (Sales > Orders) con el estatus Pending, el cuál nos indica que el pago está en espera de ser procesado. Una vez se haya realizado el pago de manera exitosa, el estado de la orden cambiará a Processing, indicando que la transacción fue correctamente pagada.

3.5. Procesa pagos con autorización y captura

Para procesar pagos con autorización y captura, es necesario que esté seleccionado la opción Autorización y Captura dentro de la consola de Kushki en la siguiente ruta: Configuración > Integraciones > Plugins > Magento > Configura el contenido y estilo de tu formulario.

Si realizaste la reserva de fondos con Kushki desde tu tienda Magento, Kushki te permitirá realizar la captura de los fondos desde el administrador de tu tienda.

Las transacciones con tarjeta autorizadas quedarán con estado Pending por defecto. Para capturar efectivamente los fondos, es necesario cambiar manualmente el estado a Processing en tu tienda de Magento. Para hacerlo, sigue estos pasos:

  1. Accede a Magento con las credenciales de tu comercio.
  2. Haz clic en la opción Sales > Orders, en el menú lateral izquierdo.
  3. Haz clic en View en la orden autorizada.
  4. En la sección Notes for this Order cambia el estatus de Pending a Processing.
  5. Haz clic en el botón Edit (una nueva orden será creada reemplazando la anterior).
  6. Verifica la información de la orden y selecciona Kushki Payment en la sección Payment & Shipping Information y da clic en Submit Order para realizar la captura del pago.

3.6. Solicitar una devolución

Sigue estas instrucciones para solicitar la devolución de las transacciones aprobadas realizadas con tarjeta de débito y crédito

  1. Accede a Magento con las credenciales de tu comercio.
  2. Haz clic en la opción Sales > Orders, en el menú lateral izquierdo.
  3. Haz clic en View en la orden a realizar el reembolso. La transacción debe estar en estado Processing para poder realizar el reembolso.
  4. Haz clic en la sección Credit Memo en el menú superior.
  5. Haz clic en el botón Refund Offline para realizar el reembolso. El estado de la transacción cambiará a Closed, indicando que el reembolso fue solicitado.

Las devoluciones pueden ser de dos clases, según el día y la hora en que se procese la transacción original y la solicitud de anulación:

  • Anulación (void): Cuando la solicitud de devolución se realiza el mismo día de la transacción antes del horario límite, que varía por país, la cancelación ocurre en el momento.
  • Reembolso (refund): Cuando la solicitud de devolución se realiza después del horario límite. El proceso puede tardar hasta 45 días en verse reflejado como una nota de crédito en la cuenta del cliente.

Estos son los horarios límite previstos por país para realizar anulaciones:

ChileColombiaEcuadorMéxicoPerú
Hasta 3 horas después de aprobada la transacción.20:59 horas del día de la transacción.21:00 horas del día de la transacción.23:59 horas del día de la transacción.20:59 horas del día de la transacción.

4. Desinstalación

3.1. En el directorio de instalación de Magento, ve a app > code y remueve la carpeta que contiene el código fuente de Kushki.

3.2. Busca el módulo llamado Kushki_Payment y remueve la entrada del módulo de la tabla de la base de datos setup_module.

3.3. El módulo Kushki_Payment también debe ser removido de app > etc > config.php.

3.4. Actualiza Magento. Desde una terminal SSH, ejecuta el siguiente comando en la raíz del directorio Magento2: php bin/magento setup:upgrade.

3.5. Realiza la compilación de la instalación ejecutando el siguiente comando: php bin/magento setup:di:compile

3.6. Despliega el contenido estático. Ejecuta el siguiente comando en el directorio raíz de Magento2: php bin/magento setup:static-content:deploy.

3.7. Finalmente, remueve el caché ejecutando el comando: php bin/magento cache:flush.

5. Prueba tu integración

Existen tarjetas de prueba que puedes utilizar en modo prueba para asegurarte que tu integración está lista. Úsalas con cualquier CVC y una fecha de expiración superior a la actual.

  • Transacción aprobada: 5451951574925480
  • Transacción declinada en solicitud de token (front-end): 4574441215190335
  • Transacción declinada en solicitud de cobro (back-end): 4349003000047015