Security overview
Application architecture
Section titled “Application architecture”MGMCo browser-based applications communicate with our backend services over HTTPS. Browser applications do not connect directly to the production database.
The main MGMCo API manages campaign configuration, participant accounts, sales and rewards. Separate services handle embedded widgets, referral links, participant pages, sales tracking and event processing.
Some API information is publicly available where required for widgets and referral flows. Protected application operations require authentication and are authorised by the API rather than by the browser application.
Authentication and application access
Section titled “Authentication and application access”Campaign Manager and the Participants Dashboard use email-based magic links. Magic links expire and can be redeemed only once. Successful authentication creates a signed, expiring bearer session used for subsequent protected API requests.
Campaign Manager users receive access according to their role and assigned projects. Participants can access information associated with their own account, including sales in which they participated as a Promoter or Referral.
Data storage and transport
Section titled “Data storage and transport”Core campaign, participant, sale and reward data is stored in MongoDB Atlas. MongoDB Atlas requires encrypted TLS connections and encrypts cluster storage at rest.
Event data used for analytics and operational reporting is processed separately from the core application records.
Production application endpoints use HTTPS. Additional HTTP security controls, including HSTS, are applied by the API and participant-facing application.
Public and protected functionality
Section titled “Public and protected functionality”Public endpoints expose only the information needed to operate referral links, embedded widgets and public campaign pages. Public registration endpoints are subject to request rate limiting.
Protected application requests use authenticated sessions and server-side access checks. Additional security options may be configured for individual customer integrations.