VibeFox EveryPay for PrestaShop — Ayuda
Requisitos
PrestaShop: 8.0 a 9.x.
PHP: 8.0 o posterior. El módulo no se instala en versiones anteriores de PHP.
Cuenta de EveryPay: necesitas el nombre de usuario de la API, el secreto de la API y el nombre de la cuenta de procesamiento de tu tienda. Están en el Merchant Portal de EveryPay, en la configuración de tu tienda: el portal de demostración para el modo de prueba y el portal de producción para los pagos reales. Los entornos de prueba y de producción tienen credenciales independientes. También debes configurar la URL de callback de tu tienda en ambos portales (véase Configuración).
Moneda de la tienda: la cuenta de procesamiento define la moneda de cobro; por ejemplo, EUR3D1 cobra en EUR. El método de pago solo se ofrece para carritos en esa moneda.
Clave de licencia de VibeFox: se compra en vibefox.net. Una clave funciona en un solo dominio.
Instalación
1. En el back office, ve a Modules > Module Manager y haz clic en Upload a module. Elige el archivo ZIP del módulo.
2. Cuando termine la subida, haz clic en Configure, o busca más tarde VibeFox EveryPay Payment en la lista de módulos y haz clic en Configure.
3. Introduce tu clave de licencia de VibeFox en License key, en el bloque de licencia de la parte superior de la página Configure, y haz clic en Activate (véase Clave de licencia).
4. Introduce el nombre de usuario de la API de prueba, el secreto de la API de prueba y el nombre de la cuenta de procesamiento del Merchant Portal de demostración. Deja Test Mode activado.
5. Copia la URL de callback que aparece en la página de configuración en Callback notification URL de tu tienda en el Merchant Portal.
6. Activa Enable/Disable, haz clic en Save y realiza un pedido de prueba. Cuando todo funcione, introduce las credenciales de producción, configura también la URL de callback en el portal de producción y desactiva Test Mode.
Al instalarse, el módulo crea el estado de pedido EveryPay payment on hold. PrestaShop ofrece un nuevo módulo de pago para todas las monedas, países y grupos de clientes. Puedes limitarlo en Payment > Preferences.
Configuración
Todos los ajustes están en la página del módulo: Modules > Module Manager > VibeFox EveryPay Payment > Configure. Cada sección tiene su propio botón Save, que guarda toda la página. Encima de los campos, la página muestra Modo de prueba activado: los pagos se envían al entorno de demostración de EveryPay y no se cobra dinero real. mientras el modo de prueba está activado. La página avisa cuando el método de pago está activado pero falta el nombre de usuario de la API, el secreto de la API o la cuenta de procesamiento del modo actual (en ese caso el método de pago se oculta en el checkout), y cuando la cuenta de procesamiento cobra en una moneda distinta de la moneda predeterminada de la tienda. Los espacios y los saltos de línea pegados junto con las credenciales se eliminan al guardar.
EveryPay
Enable/Disable: Enable EveryPay payment gateway activa o desactiva el método de pago. Por defecto: off.
Title: el nombre del método de pago que ven los clientes en el checkout. También es el nombre del método de pago guardado en el pedido. Por defecto: EveryPay.
Description: el texto que se muestra debajo del método de pago en el checkout. Por defecto: Pay securely by card or bank link on the EveryPay payment page.
Cuenta de EveryPay
El nombre de usuario de la API, el secreto de la API y el nombre de la cuenta de procesamiento se muestran en el Merchant Portal de EveryPay (configuración de la tienda): el portal de demostración para el modo de prueba y el portal de producción para los pagos reales. La sección incluye enlaces a ambos portales.
Test Mode: cuando está activado, los pagos se envían al entorno de demostración de EveryPay con las credenciales de prueba. No se cobra dinero real. Por defecto: on. Mientras está activado, los clientes ven MODO DE PRUEBA: entorno de demostración de EveryPay, no se cobra dinero real. debajo del método de pago.
Test API Username: el nombre de usuario de la API del entorno de demostración.
Test API Secret: el secreto de la API del entorno de demostración.
Live API Username: el nombre de usuario de la API del entorno de producción.
Live API Secret: el secreto de la API del entorno de producción.
Los secretos guardados nunca se vuelven a mostrar. El campo queda vacío y muestra Guardado: deja el campo vacío para conservarlo. Escribe un valor nuevo solo si quieres cambiarlo.
Clear saved API secrets: marca un secreto y haz clic en Save para eliminarlo. Un campo vacío conserva el valor guardado.
Processing Account Name: la cuenta de procesamiento de EveryPay, por ejemplo EUR3D1. La cuenta define la moneda de cobro: el método de pago solo se ofrece para carritos en esa moneda. Se usa el mismo nombre de cuenta en ambos modos.
Notificaciones de pago (callback)
El callback indica a tu tienda que un pago se ha finalizado, de modo que los pedidos se crean incluso si el cliente cierra el navegador. Copia la URL que se muestra en Callback notification URL en el campo Callback notification URL de tu tienda en el Merchant Portal de EveryPay, tanto de demostración como de producción. Con URL amigables tiene este aspecto: https://your-shop/module/wcp_everypay_payment/callback. Copia la URL exactamente como aparece en la configuración. La solicitud de pago no incluye una URL de callback, por lo que debe configurarse en el portal.
El callback solo transporta referencias de pago. Cuando llega, el módulo consulta a la API de EveryPay el estado del pago con las credenciales del entorno donde se creó el pago y comprueba que la respuesta pertenece a este carrito. Los callbacks de un pago que tu tienda no creó se rechazan sin hacer ninguna solicitud a EveryPay. Sin el callback, el pedido se crea cuando el cliente vuelve a la tienda tras pagar, o cuando EveryPay reintenta el callback.
Avanzado
Debug log: registra los eventos de pago en logs/wc_evp_debug.log.php, dentro de la carpeta del módulo. El archivo no se puede abrir desde la web. Los errores y las advertencias siempre se registran, incluso cuando esta opción está desactivada. Los secretos de la API, los datos de la tarjeta y los correos electrónicos de los clientes nunca se registran. Por defecto: off.
Log: muestra el tamaño y las entradas más recientes del registro. Haz clic en Clear log para vaciarlo.
Uninstall: elimina la configuración de la pasarela y los registros cuando se desinstala el módulo. Los datos de pago de EveryPay de los pedidos siempre se conservan. Por defecto: off.
Finalizar compra
En el paso de pago, el cliente elige el método de pago (por defecto EveryPay) y confirma. El módulo crea un pago único de EveryPay por el total del carrito en la moneda del carrito, con el correo electrónico y la dirección de facturación del cliente, y envía al cliente a la página de pago de EveryPay. El idioma de la página sigue el idioma de la tienda (inglés, estonio, ruso, letón, lituano, finlandés o alemán; en otro caso, inglés). Allí el cliente paga con uno de los métodos activados para tu cuenta de EveryPay. En este punto todavía no existe ningún pedido.
Después de pagar, el cliente vuelve a tu tienda. El pedido se marca como pagado solo cuando EveryPay lo confirma: el módulo consulta a la API de EveryPay el estado del pago al volver y en el callback. Entonces se crea el pedido y el cliente ve la página estándar de confirmación del pedido. Si EveryPay todavía está procesando el pago, o si su API no responde en ese momento, aparece la página Payment confirmation con el mensaje Tu pago está siendo confirmado por EveryPay. Recibirás un correo electrónico en cuanto se confirme el pedido. y un botón Check again; el callback crea el pedido en cuanto EveryPay confirma el pago.
Si el pago falló, el cliente vuelve al checkout con el mensaje El pago con EveryPay no se ha realizado correctamente. Inténtalo de nuevo o elige otro método de pago. Si el cliente salió de la página de pago sin pagar, el mensaje es El pago con EveryPay no se ha completado. Puedes intentarlo de nuevo o elegir otro método de pago. El carrito se conserva. Cada nuevo intento crea un nuevo pago de EveryPay; los intentos anteriores quedan registrados, de modo que un pago hecho con un enlace anterior sigue siendo reconocido.
Si EveryPay no puede iniciar el pago, el cliente permanece en el checkout con un mensaje breve, por ejemplo EveryPay no está disponible temporalmente. Inténtalo de nuevo en unos instantes o elige otro método de pago. Los detalles están en el registro.
El callback funciona aunque la tienda esté en modo de mantenimiento y no se ve bloqueado por la restricción de países de tu tienda.
El módulo solo admite pagos únicos. No ofrece reembolsos ni capturas desde PrestaShop, ni tarjetas guardadas o pagos con un clic, ni suscripciones o pagos recurrentes, ni campos de tarjeta integrados, y no admite varias monedas.
Pedidos
Estados del pedido
No order yet: el cliente fue enviado a EveryPay y no ha pagado, el pago falló o se abandonó, o EveryPay todavía no ha confirmado el pago. Solo existe el carrito.
Payment accepted: EveryPay informó de que el pago está liquidado o autorizado. El pago se registra con la referencia de pago de EveryPay como ID de transacción, y una nota muestra el importe, la moneda y la referencia. En un pago autorizado, la nota indica que los fondos están reservados: si tu cuenta no captura automáticamente, captura el pago en el Merchant Portal de EveryPay. Cuando el pago se liquide más tarde, otra nota lo indica.
EveryPay payment on hold: el pago necesita revisión manual. El importe o la moneda pagados no coinciden con el carrito (por ejemplo, el carrito se modificó después de iniciar el pago), el pedido se había cancelado antes de que llegara el pago, o el pedido utiliza ahora otro método de pago. La nota lo explica e indica que el pedido no se marcó como pagado. Revisa el pago en el Merchant Portal y procesa o reembolsa el pago manualmente. Los callbacks posteriores de este pago no completan el pedido automáticamente.
Si se completa un segundo pago para un pedido que ya está pagado, el pedido no cambia. Una nota pide que reembolses el pago duplicado en el Merchant Portal de EveryPay.
Bloque de pago de EveryPay
La página del pedido muestra un bloque EveryPay payment con todos los intentos de pago de EveryPay del pedido: fecha, referencia de pago (con una insignia Test mode para los pagos de prueba), referencia del pedido, importe, estado de EveryPay y resultado. Debajo aparecen las EveryPay notes del pedido, de la más reciente a la más antigua.
Check EveryPay payment status: el botón del bloque comprueba con la API cada pago de EveryPay del pedido, del más reciente al más antiguo, aplica el resultado como se ha descrito y añade una nota con el estado de cada pago. El resultado se muestra en el bloque. Necesitas el permiso para editar pedidos; no hace falta acceso a las páginas de Módulos. Úsalo cuando un callback nunca haya llegado, por ejemplo para ver una captura o un reembolso posterior.
Reembolsos
Los reembolsos desde PrestaShop no son compatibles. Haz el reembolso en el Merchant Portal de EveryPay y después actualiza el estado del pedido en PrestaShop. Cuando EveryPay informa de que un pago ha sido reembolsado o contracargado, el módulo solo añade una nota al pedido; el estado del pedido no cambia. Los botones de reembolso estándar de PrestaShop de la página del pedido no devuelven dinero a través de EveryPay.
Clave de licencia
El módulo funciona con una clave de licencia de VibeFox de vibefox.net. El bloque de licencia License — VibeFox EveryPay Payment es el primer bloque de Modules > Module Manager > VibeFox EveryPay Payment > Configure, por encima de los ajustes. Introduce la clave en License key y haz clic en Activate. Después, el bloque muestra la clave enmascarada, el estado (por ejemplo, la fecha hasta la que la licencia está activa y tu dominio) y los botones Check now para volver a comprobar el estado, Change key para introducir otra clave y Remove key para eliminar la clave de esta tienda. Debajo aparecen la línea Product: presta-payment-everypay y el enlace Manage licenses and domains in your account, que abre tu cuenta de vibefox.net. Solo los empleados con el permiso Configure para el módulo pueden cambiar la clave. Los textos del bloque siguen el idioma del back office (se incluyen inglés y ruso).
Si la clave no es aceptada, el bloque indica el motivo, por ejemplo Key not found, This key belongs to another product, Domain limit reached o License expired on seguido de una fecha. Después de cambiar la dirección de la tienda, o después de liberar una plaza de dominio en tu cuenta, haz clic en Check now. Si no se puede contactar con el servidor de licencias, el módulo sigue funcionando con el último estado conocido.
Una clave funciona en un solo dominio: el dominio de la tienda principal, también en una configuración multitienda. Quitar la clave de la tienda no libera su plaza de dominio. Libera la plaza en tu cuenta de vibefox.net.
Sin una clave activa, EveryPay no se muestra a los clientes en el checkout. Si aun así se inicia un pago, el cliente ve Este método de pago no está disponible. Por favor, elige otro. La tienda de PrestaShop no sabe que has iniciado sesión en el back office, así que el método de pago también se oculta para ti: puedes configurar el módulo antes de comprar una clave, pero no probarlo en el checkout. Aparece un recordatorio en Modules > Module Manager, en la pestaña Alerts. Los pedidos existentes no se ven afectados: los pagos ya iniciados siguen confirmándose y la comprobación de estado funciona.
Cuando una licencia caduca, el módulo sigue funcionando, pero las actualizaciones y el soporte necesitan una renovación. El estado se vuelve a comprobar automáticamente mientras trabajas en el back office: una vez al día durante los primeros 14 días después de introducir la clave, y después una vez a la semana. No hace falta ninguna tarea cron. Desinstalar o restablecer el módulo elimina siempre la clave de licencia y el estado de la licencia.
Solución de problemas
EveryPay no aparece en el checkout: comprueba que la licencia esté activa, que Enable/Disable esté activado, que el nombre de usuario de la API, el secreto de la API y el Processing Account Name del modo actual estén configurados, y que la moneda del carrito sea la moneda de la cuenta de procesamiento. En estos casos, la página de configuración muestra un aviso. En Payment > Preferences comprueba que el módulo esté permitido para la moneda del carrito, el país del cliente y el grupo del cliente.
El pago se realizó, pero no se creó ningún pedido: el callback no funciona. Comprueba que la URL de callback de la configuración esté introducida como Callback notification URL en el Merchant Portal del modo que usas (demostración o producción). El pedido también se crea cuando el cliente vuelve a la tienda después de pagar. Revisa el campo Log de la página del módulo: los errores siempre se registran.
Callback answers Unknown payment, Unknown payment reference o Payment does not belong to this order: el pago no lo creó esta tienda o este carrito, o la respuesta de EveryPay no coincide con él. No se cambia nada.
Callback answers Not configured: faltan las credenciales del entorno donde se creó el pago, por ejemplo un pago de prueba después de eliminar las credenciales de prueba. Introdúcelas de nuevo; EveryPay reintenta el callback.
Callback answers Payment status unavailable, Busy, please retry o Order could not be created: no se pudo contactar con la API de EveryPay, otra solicitud estaba creando el pedido en ese mismo momento o el pedido no se pudo crear (por ejemplo, porque el módulo está desactivado). EveryPay reintenta el callback. El motivo está en el registro.
El cliente ve «EveryPay no está disponible temporalmente»: EveryPay rechazó las credenciales o no se pudo contactar con él. Comprueba el nombre de usuario y el secreto de la API del modo actual.
El cliente ve «Este método de pago no admite la moneda del pedido»: la moneda del carrito es distinta de la moneda de la cuenta de procesamiento.
El cliente permanece en la página Payment confirmation: EveryPay todavía no ha finalizado el pago. El pedido lo crea el callback o cuando el cliente hace clic en Check again después de que EveryPay confirme el pago.
Order is EveryPay payment on hold: lee las EveryPay notes en el bloque del pedido. El importe o la moneda eran distintos, o el pedido se había cancelado antes de que llegara el pago. Revisa el pago en el Merchant Portal y procesa o reembolsa el pago manualmente.
Para los desarrolladores, el README del módulo enumera los hooks actionWcpEverypayOneoffRequest (modificar la solicitud de pago) y actionWcpEverypayLocale (modificar el idioma de la página de pago).
Desinstalación
Ve a Modules > Module Manager, abre el menú junto a VibeFox EveryPay Payment y elige Uninstall. La clave de licencia y el estado de la licencia de este módulo siempre se eliminan. Si Uninstall (eliminar la configuración de la pasarela y los registros) está activado en la configuración, se eliminan la configuración de la pasarela y el registro. Si está desactivado, todos los ajustes se conservan para una reinstalación posterior. Los datos de pago de EveryPay de los pedidos y el estado de pedido EveryPay payment on hold siempre se conservan. Los pedidos existentes conservan sus notas de pago e ID de transacción.
EveryPay es una marca comercial de su respectivo titular. Este módulo no está afiliado a EveryPay ni cuenta con su aprobación.
