Phase 2 complete: - buildPurchaseDataLayer() called in przelewy24() controller, payload passed to template - dataLayer.push added to templates/tickets/przelewy24.php (fires at order commitment) - dataLayer.push removed from templates/tickets/order-confirm.php - Captures 100% of orders regardless of user returning from payment gateway Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
47 lines
1.8 KiB
Markdown
47 lines
1.8 KiB
Markdown
# Project: bilety.brzezovka.pl
|
|
|
|
## Description
|
|
Aplikacja webowa do sprzedazy biletow online z obsluga zamowien, platnosci i komunikacji potransakcyjnej.
|
|
|
|
## Core Value
|
|
Uzytkownicy moga szybko i bezpiecznie kupic bilety online oraz otrzymac natychmiastowe potwierdzenie zakupu.
|
|
|
|
## Requirements
|
|
|
|
### Must Have
|
|
- [x] Obsluga zakupu biletow end-to-end (wybor, checkout, finalizacja)
|
|
- [x] Poprawne rejestrowanie zamowien i danych transakcyjnych
|
|
- [x] Data layer purchase po finalizacji zakupu (wdrozone w Phase 1)
|
|
- [x] Event purchase capturuje 100% zamowien — fires przy skladaniu, nie przy powrocie z P24 (Phase 2)
|
|
- [ ] Zgodnosc z RODO — baner zgody na cookies z Google Consent Mode v2 (Phase 3)
|
|
|
|
### Should Have
|
|
- [x] Spojny tracking analityczny dla zdarzen ecommerce
|
|
- Walidacja danych telemetrycznych i brak duplikatow eventow
|
|
|
|
### Nice to Have
|
|
- Rozszerzony monitoring jakosci danych analitycznych
|
|
|
|
## Constraints
|
|
- PHP + Medoo + prepared statements bez sklejania SQL
|
|
- Bez logiki biznesowej w widokach
|
|
- Bez zmian poza zakresem ecommerce tracking dla aktualnej pracy
|
|
|
|
## Key Decisions
|
|
|
|
| Decision | Phase | Impact |
|
|
|----------|-------|--------|
|
|
| Event purchase na order-confirm (post-payment) | Phase 1 | Eliminuje falszywe konwersje |
|
|
| ZMIANA: Event purchase na przelewy24 (pre-payment, post-order) | Phase 2 | Capturuje 100% zamowien, beacon transport |
|
|
| Payload ecommerce budowany w backendzie | Phase 1 | Bezpieczenstwo, brak XSS |
|
|
|
|
## Success Criteria
|
|
- Event purchase trafia do data layer po zlozeniu zamowienia (osiagniete — Phase 2)
|
|
- Payload zawiera wszystkie dostepne dane transakcyjne i produktowe
|
|
- Integracja nie wplywa negatywnie na istniejacy checkout
|
|
- Baner cookies zgodny z RODO + Google Consent Mode v2 (cel Phase 3)
|
|
|
|
---
|
|
*Created: 2026-04-19 20:20*
|
|
*Last updated: 2026-04-26 after Phase 2*
|