Integrar la venta de entradas en su propia web¶
Para la venta de entradas, DiKAS ofrece una vista para clientes ligera y optimizada para móviles. Solo muestra entradas, fecha, cantidad, disponibilidad y carrito. La compra y el pago pasan después por el mismo checkout verificado que en la tienda online normal.
Requisitos¶
- La venta de entradas para eventos está activa en Admin → Configuración → Operación. La tienda online (pedido online) no es necesaria para ello.
- Al menos un artículo de entrada tiene una configuración de entrada y un cupo.
- El horario de la página para clientes y el proveedor de pago están configurados y probados.
- La web del cliente funciona con HTTPS.
- Se conoce el origen exacto de la web del cliente, por ejemplo
https://www.mi-local.es. Una ruta como/ticketsno forma parte del origen.
Habilitar en DiKAS¶
La página de ajustes está rotulada en alemán en todos los sistemas.
- Abra Admin → Online-/QR-Einstellungen → Allgemein (ajustes online/QR → general) y active arriba el modo Experto.
- Active Einbettung als iFrame erlauben (permitir la integración como iFrame).
- En Erlaubte Website-Adressen (direcciones web permitidas) introduzca un origen completo por línea, por ejemplo:
- Guarde.
Las dos direcciones con y sin www son técnicamente distintas y, si hace falta, hay que
introducir ambas. Los comodines y las webs ajenas no están permitidos a propósito. La
administración, la caja, el acceso y el portal de clientes siguen, por principio, bloqueados para
la integración.
Código para la web del cliente¶
Sustituya SU-DIRECCION-DIKAS por la dirección pública del negocio:
<iframe
id="dikas-ticketshop"
title="Comprar entradas"
src="https://SU-DIRECCION-DIKAS/shop/tickets"
loading="lazy"
referrerpolicy="no-referrer"
style="width:100%;min-height:680px;border:0;border-radius:16px"
></iframe>
<script>
window.addEventListener('message', function (event) {
if (event.origin !== 'https://SU-DIRECCION-DIKAS') return;
if (event.data?.type !== 'dikas:ticket-shop:height') return;
const frame = document.getElementById('dikas-ticketshop');
frame.style.height = Math.max(480, Number(event.data.height) || 0) + 'px';
});
</script>
No se debe quitar la comprobación de event.origin. El mensaje de altura no contiene datos de
clientes; solo evita una segunda barra de desplazamiento. Sin el script, la integración también
funciona con la altura mínima fija.
Uso en móviles¶
En pantallas pequeñas, las tarjetas de entradas pasan automáticamente a una sola columna. Fecha,
cantidad, compra y carrito tienen zonas táctiles grandes. La web que integra no debería encajar el
iframe en un contenedor con anchura fija en píxeles ni con overflow:hidden. En la cabecera de la
página debe estar la siguiente entrada de viewport:
Aceptación¶
- Abrir la web del cliente con anchura de iPhone/Android y en escritorio.
- Comprobar que no aparece ningún aviso del navegador de «conexión rechazada».
- Elegir una fecha (si solo hay una, aparece fija); debe aparecer «Quedan N» o «Agotado».
- Poner varias entradas en el carrito y abrir el checkout.
- Pagar por completo una compra de prueba y comprobar PDF/QR.
- Dar acceso una vez a la misma entrada con la pantalla de entrada móvil; el doble escaneo debe fallar.
- En Admin → Tickets comparar la cifra de ventas, las entradas abiertas y el cupo.
Alternativa a la integración¶
Un enlace o botón normal a la tienda de entradas es técnicamente más robusto si la web tiene reglas de cookies, marcos o consentimiento muy estrictas.