Sylius
Acepta pagos a través de MONEI en tu tienda Sylius usando el plugin oficial de pago de MONEI. El plugin admite tarjetas (Visa, Mastercard, Amex), Bizum, Apple Pay y Google Pay, con dos modos de integración: página de pago alojada o componente de pago integrado.
Características
- Dos modos de integración — Página de pago alojada (redirección) o componente MONEI integrado (widget JS), configurable por pasarela en el admin de Sylius
- Todos los métodos de pago de MONEI — Tarjetas, Bizum, Apple Pay, Google Pay
- Ciclo de vida completo — , reembolso (total y parcial), cancelación y sincronización de estado
- Basado en webhooks — Actualizaciones asíncronas del estado del pago mediante webhooks firmados de MONEI
- Listo para / — 3D Secure gestionado automáticamente por MONEI
Requisitos
| Dependencia | Versión |
|---|---|
| PHP | 8.2+ |
| Sylius | 2.1+ |
| Symfony | 6.4 o 7.x |
Antes de empezar
Para probar tu integración:
- Usa tu clave de API en modo de prueba. La encuentras en MONEI Dashboard → Configuración → Acceso a la API.
- Puedes consultar el estado de un pago de prueba en MONEI Dashboard → Pagos (en modo de prueba).
- Consulta las tarjetas de prueba de MONEI para ver números de tarjeta y teléfonos de Bizum de prueba.
Instalación
Paso 1: Instalar vía Composer
composer require monei/sylius-monei-plugin
Paso 2: Registrar el bundle
Si tu proyecto Sylius no usa Symfony Flex, añade el bundle manualmente:
// config/bundles.php
return [
// ...
Monei\SyliusPlugin\MoneiSyliusPlugin::class => ['all' => true],
];
Paso 3: Importar las rutas del plugin
# config/routes/monei.yaml
monei_sylius:
resource: '@MoneiSyliusPlugin/config/routes.xml'
prefix: /monei
Payum gestiona la ruta de notificación del webhook automáticamente — no se necesita configuración de rutas adicional para el funcionamiento básico.
Configuración
- En tu admin de Sylius, ve a Configuration → Payment methods
- Haz clic en Create y elige MONEI como pasarela
- Introduce tu API Key y tu Account ID — los encuentras en MONEI Dashboard → Configuración → Acceso a la API
- Selecciona tu tipo de integración preferido:
- Redirect — El cliente es redirigido a la página de pago alojada de MONEI, conforme a PCI
- Component — Se renderiza un formulario de pago en la página con MONEI.js (campo de tarjeta, botones de Bizum, Apple Pay y Google Pay)
- Activa el modo Sandbox para pruebas
- Asigna el método de pago a los canales que quieras
Referencia de configuración
| Campo | Descripción |
|---|---|
api_key | Tu clave de API de MONEI (pk_test_... para sandbox, pk_live_... para producción) |
account_id | Tu identificador de cuenta de MONEI |
integration_type | redirect (página alojada) o component (widget MONEI.js integrado) |
sandbox | Activa el modo de prueba — no se procesan cargos reales |
Cómo funciona
Flujo de redirección (página de pago alojada)
- El cliente hace clic en "Pagar" → Sylius crea un pago en MONEI vía la API
- El cliente es redirigido a la página alojada de MONEI
- El cliente completa el pago (tarjeta, Bizum, Apple Pay, Google Pay)
- MONEI redirige de vuelta a la URL de finalización de tu tienda
- MONEI envía un webhook para confirmar el estado final de forma asíncrona
Flujo de componente (MONEI.js integrado)
- El cliente hace clic en "Pagar" → Sylius crea un pago en MONEI vía la API
- Se renderiza un formulario de pago en la página con campo de tarjeta, Bizum, Apple Pay y Google Pay
- El cliente completa el pago sin salir de la página
- El cliente es redirigido a la página de confirmación del pedido
- MONEI envía un webhook para confirmar el estado final de forma asíncrona
Webhooks
MONEI usa webhooks para notificar a tu tienda los cambios de estado del pago. El plugin verifica automáticamente la cabecera MONEI-Signature (-SHA256) y vuelve a consultar el pago en la API de MONEI para evitar suplantaciones.
Asegúrate de que tu servidor sea accesible desde internet para que MONEI pueda alcanzar la .
Antes de pasar a producción
- Asegúrate de usar tu clave de API en modo producción (live).
- Asegúrate de tener al menos un método de pago activo.