Server-side events let your backend report conversions directly to the Scanova Tracking API using an API key. Unlike browser events, server events cannot be blocked by ad blockers, are not affected by browser restrictions, and can carry sensitive attribution data securely.Documentation Index
Fetch the complete documentation index at: https://docs.scanova.io/llms.txt
Use this file to discover all available pages before exploring further.
When to use server events
| Use browser events | Use server events |
|---|---|
| Page views and navigation | Purchase confirmations |
| Clicks and scroll depth | Subscription activations |
| Form field interactions | Lead creation in your CRM |
| Any action visible in the browser | Sign-up email verifications |
| — | Any action that happens server-side |
How attribution works server-side
Thescan_session_id is the attribution link between a QR scan and a server event. Here is the typical flow:
scan_session_id from the browser to your server. Common ways to do this:
- Include it in a hidden form field
- Send it in the API request body from your frontend JavaScript
- Store it in the user’s session on your server (read it from the URL parameter when the page loads)
Requirements
- A tracking site created in Integrations → Conversion Tracking
- A site-scoped API key (generated in the tracking site’s API Keys tab)
- Your server can make outbound HTTPS POST requests
- You have a way to receive the
scan_session_idfrom the user’s browser
Security requirements
- Never expose your API key in frontend code or client-side JavaScript
- Store the key in an environment variable or secrets manager
- Rotate keys periodically from the dashboard
Next steps
Generate an API Key
Create a site-scoped API key from the dashboard.
Send Events
Code examples in cURL, Node.js, Python, and PHP.
Idempotency & Retries
How to safely retry failed requests.
Verify Delivery
Confirm your events are being received.