Server-to-Server
What is Server-to-Server
The Inbound Server-to-Server (S2S) Postback is a server-side tracking method that sends conversion data directly from your server to CJ's tracking servers at the moment a commissionable event occurs. Unlike browser-based tracking, S2S does not rely on a JavaScript tag firing in the user's browser — making it resilient to ad blockers, browser restrictions, and cookie limitations.
When a qualifying conversion happens, your server fires a request to CJ's tracking endpoint with the order details embedded as query string parameters. CJ receives the call, attributes the event to the correct publisher, and records the commission.
Why use Server-to-Server
No Browser Dependency
Tracking originates from your server rather than the user's browser, eliminating exposure to ad blockers, JavaScript errors, and slow page loads that can interrupt or prevent the conversion call.
Cookie-Restriction Proof
Paired with server-side cjevent storage, S2S preserves attribution through Apple ITP, Firefox ETP, tracking-prevention extensions, and user-initiated cookie deletion.
Real-Time Attribution
Fire the postback the moment your server confirms an order — no waiting on page rendering, tag execution, or client-side connectivity to deliver the conversion to CJ.
Concurrent Tracking
Run S2S alongside the Universal Tag, Data File Import, or GraphQL API without disrupting your setup. CJ deduplicates on OID, so you can layer in coverage and validate parity with no double-attribution risk.
Integration Steps
S2S Postback Integration4 steps
01
HTTP CookieCapture CJ's click ID (cjevent) from affiliate link URLs and store it in a HTTP cookie named 'cje' with a 13-month duration.
Step 102Construct Postback URLBuild out postback URL with CJ-provided static values CID and TYPE along with mapping other dynamic conversion parameters.
Step 203
04Automate Postback firesEnsure CJ referred transactions will fire this postback request automatically.
Step 3Testing & QAWork with your CJ Client Integration Engineer to validate that the postback is firing correctly and dynamic values are accurate.
Updated 11 days ago
What’s Next
