Draw the route of the event
List all sources: site code, GTM, CMS plugin, CRM connector and server handler. For each, record the name of the event, the moment of activation and the person responsible. Check if the purchase or request is not resubmitted after updating the thank you page.
Continue with: Google Ads conversions: are genuine enquiries counted?.
Match the IDs
The browser and server copy of the same action must have the same event_name and event ID: eventID in the corresponding Pixel call and event_id in the server payload. A new ID is required for a new action. Do not create independent random values for the two copies or use the same ID for all purchases.
Continue with: Laravel API retries: prevent duplicate operations.
Run a test scenario
Create one test activity and test it in the available Events Manager tools. Match name, ID, time, amount and currency. Then retry the delivery and check the deduplication diagnostics. Separately control the requirements for consent and the data transferred: the server channel does not override the rules for their use.
Does the same amount automatically eliminate duplicates?
No. Two different purchases can have the same amount. What is required is the identity of the event, not the comparison of its value alone.