Overview
EWAACM (Audience Activation & Campaign Management) is an EWWD product and reference architecture designed for film production houses, theatrical distributors, and consumer brands running nationwide promotional ticket drops and audience loyalty programs in Indonesia.
High-demand entertainment campaigns require more than a static landing page: when thousands of moviegoers attempt to claim promotional cinema vouchers or submit ticket stubs simultaneously, the platform must prevent race conditions, block automated bots, and give marketing operations an auditable ledger of every rupiah or point distributed.
Business Problem
Promotional campaigns and audience activation programs in Indonesia typically break down across five operational bottlenecks:
| Problem | Operational Impact |
|---|---|
| Flash-drop race conditions | Simultaneous claims during promotional windows over-allocate daily campaign budgets when handled by naive database queries. |
| Duplicate receipt & ticket fraud | Participants submit the same cinema ticket photo across multiple accounts or chat channels when there is no centralized verification queue. |
| Fragmented cinema & showtime data | Campaign managers manually maintain city, cinema chain, and screening schedules across disconnected spreadsheets. |
| Unaudited reward adjustments | Points and vouchers issued manually via WhatsApp or spreadsheets leave finance teams without an immutable audit trail. |
| Multi-agency access collisions | Production houses, promotional agencies, and review moderators lack tenant-scoped role isolation across separate film titles. |
Implemented Solution
- Concurrency-Safe Ticket Drop Engine: Enforces daily campaign quotas and atomic inventory reservation using MariaDB transactional locks (`FOR UPDATE SKIP LOCKED`) and Redis rate-limiting.
- OTP-Verified Audience Onboarding: Frictionless mobile-first participant registration with WhatsApp/SMS OTP verification and device fingerprinting to deter multi-account abuse.
- Structured Film, Cinema & Showtime Catalog: Centralized directory of active film titles, Indonesian provinces/cities, cinema locations, and screening schedules.
- Supervised Proof-of-Attendance Workflow: Participants upload ticket or purchase evidence; moderators review submissions through a fast Filament 5 queue with structured approval/rejection reasons.
- Immutable Points & Reward Ledger: Double-entry-inspired points accounting where every earn, expire, manual adjustment, and reward redemption event is permanently logged.
- Multi-Tenant Organization Scoping: Campaign data, budgets, moderators, and analytics are strictly isolated per production house or brand tenant via Spatie Permission and Laravel policies.
Current Evidence Status
EWAACM is an EWWD Product/Demo backed by a complete Laravel 13, Filament 5, React 19, and Inertia 3 codebase, automated Pest 4 test suites, and static analysis at PHPStan level 5. It is presented as an adaptable reference platform for client pilots rather than a public commercial metric report.
Technical Implementation Logic
| Layer | Technical Choice | Architectural Rationale |
|---|---|---|
| Audience Frontend | React 19 + Inertia 3 + TypeScript | Delivers SPA-speed mobile responsiveness for promotional drops without the complexity of maintaining a separate client state store. |
| Core Application | Laravel 13 Modular Monolith | Domain-driven module structure (`Identity`, `Organizations`, `Catalog`, `Campaigns`, `Ledger`) keeps business rules isolated and testable. |
| Operations Back Office | Filament 5 Admin Panel | Provides campaign managers, finance auditors, and ticket moderators with high-speed review queues, bulk actions, and real-time quota widgets. |
| Concurrency & Locking | MariaDB 11.7 (`SKIP LOCKED`) + Redis | Prevents double-claiming of limited daily promotional slots during traffic spikes without blocking concurrent transactions. |
| Quality & Verification | Pest 4 + PHPStan Level 5 | Automated feature tests verify quota exhaustion, concurrent claim locking, and tenant isolation before any release. |
Frequently Asked Questions
How does EWAACM prevent over-claiming during high-traffic promotional drops?
Instead of relying on application-level counters that fail under concurrent requests, EWAACM combines Redis rate-limiting at the edge with MariaDB row-level locking (`FOR UPDATE SKIP LOCKED`) inside database transactions so daily campaign allocations cannot be exceeded.
Can the platform be adapted for retail or FMCG brand activations outside the film industry?
Yes. While the catalog module includes cinema and showtime primitives for theatrical releases, the core campaign quota engine, OTP onboarding, receipt/ticket verification queue, and points ledger can be adapted for FMCG receipt-upload promotions, mall activations, and event reward programs.
Can multiple campaigns or agencies run on the same deployment?
Yes. EWAACM uses tenant-scoped organization boundaries so a studio or marketing group can run multiple concurrent film or brand campaigns while restricting moderators and finance staff to their assigned organization.
Next Step
Planning a high-volume promotional campaign, ticket drop, or customer reward activation? Schedule a discovery session to adapt EWAACM's quota and verification engine to your brand workflow.