Platba sa otvorí v jednom z dvoch režimov.
Panel je vložený panel vykreslený na vašej stránke. Na počítači sa vysunie sprava, pričom jeho šírka je obmedzená hodnotou pane.width; na mobile sa vysunie zdola. Návštevník zostáva na vašom webe a panel sa zatvorí po stlačení klávesu Escape alebo kliknutí na stmavenú oblasť.
Vyskakovacie okno je samostatné okno prehliadača vycentrované na obrazovke návštevníka. Klient sleduje, či sa okno zatvorilo, aby mohol odstrániť prekrytie pozadia.
Vložená platba vyžaduje dôveryhodný zdroj
Režim panela vykresľuje platbu Entase v prvku iframe na vašej doméne, preto je povolený iba pre domény, ktoré ste výslovne autorizovali. Každú doménu, ktorá otvára platbu, pridajte do položky Dôveryhodné zdroje v časti Nastavenia → Integrácie – pozrite si Integrácie a prispôsobenie platby.
Záleží na tom, či je zahrnutá predpona www.. Ak si nie ste istí, ktorú formu váš web používa, pridajte obe.
Ak vaša doména nie je v zozname, platba bude aj naďalej fungovať – jednoducho sa otvorí ako vyskakovacie okno.
Ako sa vyhodnocuje 'auto'
Pri predvolenom nastavení checkoutMode: 'auto' klient rozhoduje v tomto poradí:
- Nie HTTPS → vyskakovacie okno. Vložená platba sa nikdy nepoužije na nezabezpečenej stránke.
localhostalebo127.0.0.1→ panel s upozornením zapísaným do konzoly. Ide o uľahčenie vývoja, aby ste mohli vytvárať vložené rozloženie; nevypovedá nič o tom, či je vaša produkčná doména povolená.- V opačnom prípade → klient sa Entase opýta, či môže tento zdroj používať vloženú platbu, pričom na identifikáciu účtu odošle
pk. Ak odpoveď zahŕňa panel, režim sa nastaví na panel.
Kým táto odpoveď nepríde, režim je vyskakovacie okno. Toto správanie vás s najväčšou pravdepodobnosťou prekvapí: kontrola je asynchrónna, takže volanie book(), ktoré sa spustí okamžite pri načítaní stránky – skôr než návštevník dostane možnosť na čokoľvek kliknúť – môže aj na dokonale nakonfigurovanej doméne stále otvoriť vyskakovacie okno. V praxi skutočné kliknutie vždy nastane dlho po dokončení kontroly. Ak platbu otvárate automaticky, režim vynúťte namiesto spoliehania sa na detekciu.
Vynútenie režimu
Nastavte checkoutMode explicitne, aby sa detekcia úplne preskočila:
const entase = new Entase({ pk: 'YOUR_PUBLISHABLE_KEY', checkoutMode: 'popup' });Alebo ho prepíšte pre jednu rezerváciu:
entase.book('EVENT_ID', { checkoutMode: 'popup' });Vynútenie režimu 'pane' na doméne, ktorá nie je dôveryhodným zdrojom, neudeľuje povolenie – panel sa otvorí, ale platba v ňom nemôže komunikovať s vašou stránkou. Použite 'popup' ako zámernú voľbu a ponechajte 'auto', ak chcete vloženú platbu všade, kde je povolená.
Nerozpoznaná hodnota sa ignoruje a spracuje ako 'auto'.
Zistenie a zmena režimu za behu
entase.getCheckoutMode(); // 'pane' or 'popup' — never 'auto'
entase.setCheckoutMode('popup'); // applies to every later book() callgetCheckoutMode() vracia vyhodnotený režim, takže uvádza, čo sa skutočne stane. Nastavením režimu späť na 'auto' sa detekcia spustí znova.
Blokovanie vyskakovacích okien
Prehliadače povoľujú window.open() iba počas interakcie používateľa. Zavolajte book() priamo v obsluhe kliknutia – nie po await, fetch alebo setTimeout, keď už interakcia vypršala a vyskakovacie okno je zablokované.
// Blocked: the gesture is gone by the time book() runs.
button.addEventListener('click', async () => {
const event = await fetch('/api/current-event').then(r => r.json());
entase.book(event.id);
});
// Fine: resolve the id first, open on the click.
button.addEventListener('click', () => entase.book(button.dataset.eventId));Týka sa to iba režimu vyskakovacieho okna. Režim panela vytvára prvok na stránke a nevzťahuje sa naň toto obmedzenie.