Setting Up Server-to-Server Tracking

JVZoo

Last Update 9 days ago

 
Why Use Server-to-Server Tracking?

Server-to-Server (S2S) tracking allows you to send conversion data directly to your tracking platforms or ad platforms for better campaign optimisation. This automated data flow helps you scale successful campaigns, identify profitable traffic sources, and make data-driven decisions to improve your ROI — all without manual reporting or guesswork.


Introduction

Server-to-Server tracking is a postback system that automatically sends event data from JVZoo to your external tracking platform. You can track two types of events:

  • Purchase — fires when a transaction is completed
  • Initiated — fires when an affiliate's visitor lands on a checkout page

You can set up multiple postback configurations, each with its own URL, type, filters, and product scope. This gives you precise control over what gets tracked and where.


    Setting Up Your First Postback

    Step 1: Access S2S Postback Settings
    1. Log in to your JVZoo account
    2. Click My Account > Account Details
    3. Scroll down to Affiliate Settings
    4. Click Manage S2S Postbacks

    You'll see your existing postback configurations here (if any), along with their name, URL, type, status, product scope, filters, and last call status.


      Step 2: Add a New Postback

      Click Add New Postback to open the configuration form.

      Step 3: Configure Your Postback URL 

      Name

      Give this postback a clear, descriptive name so you can identify it later — for example, RedTrack - Purchase or Google Ads - Checkout Visit.


      Type
      Choose what event this postback should fire on:
      TypeWhen It Fires
      PurchaseAfter a successful transaction is completed
      InitiatedWhen a visitor lands on the checkout page

      Each type has its own set of available placeholders — see the full reference below.


      Postback URL

      This is the URL JVZoo will call when the event fires. Use placeholders (e.g. {tid}, {affiliate_amount}) to pass dynamic data through to your tracking platform.
      Purchase — Base Example:
      https://tracking.yourplatform.com/track?clickid={tid}&sum={affiliate_amount}¤cy={currency}&transactionid={transaction_id}&transactiontype={transaction_type}
      Initiated — Base Example:
      https://tracking.yourplatform.com/visit?tid={tid}&product_id={product_id}&affiliate_id={affiliate_id}

      For a full list of available placeholders for each type, see the Placeholder Reference below.

      Tip: Always use HTTPS URLs. Include {random} to prevent URL caching issues.
      Status
      Set the postback to Active or Inactive. Only active postbacks will fire.

      Product Scope

      Choose which products this postback applies to:


      • All Products — fires for every product you promote
      • Specific Products — select individual products to limit the scope

            Notification Filters (Purchase type only)

            Filters let you exclude certain transactions from triggering the postback:

            • Exclude refunded transactions — postback won't fire on refunds
            • Exclude zero-commission conversions — postback won't fire if your commission is $0

            Note: The Initiated type has no filters — it fires on every checkout page visit that matches your product scope.

            Step 4: Save and Test

            Once saved, your postback will appear in the list. You can:
            • Click the log icon to view the full call history for that postback
            • Check the Last Call Status column at a glance (Success, Failed, Skipped)
            • Edit or deactivate it at any time from the Actions column

              Placeholder Reference


              Purchase Placeholders

              Use these in your postback URL when the type is set to Purchase.


              Required Transaction Data
              PlaceholderDescriptionExample
              {currency}ISO currency codeUSD, EUR, GBP
              {transaction_id}Unique transaction IDTXN_123456789
              {transaction_amount}Full transaction value99.99
              {transaction_type}Transaction typeSALE for purchases, RFND for refunds

              Product Information

              PlaceholderDescription
              {product_id}Internal product identifier
              {product_name}Human-readable product name
              Customer Data
              PlaceholderDescriptionExample
              {customer_email} Customer email address
              {customer_name}Customer full nameJohn Smith
              {customer_country} ISO country code US, GB, DE
              Payment & Vendor Details
              PlaceholderDescription
              {vendor_id} Vendor identifier
              {payment_method} Payment method used (e.g. credit_card, paypal)
              {transaction_time} Unix timestamp of the transaction
              {vendthru} Vendor Thru custom field
              Affiliate Tracking
              PlaceholderDescriptionExample
              {affiliate_id}Affiliate partner identifier10956
              {affiliate_amount}Commission amount15.99
              {commission_type} Commission modelCPA or REV_SHARE
              {tid} Primary click tracking ID passed by the affiliate click_abc123xyz789
              UTM Parameters
              PlaceholderDescription
              {utm_source} Traffic source (e.g. google, facebook)
              {utm_medium} Marketing channel (e.g. cpc, email)
              {utm_campaign} Campaign identifier
              {utm_content} Ad content variation
              {utm_term} Paid search keywords
              Sub IDs (Custom Tracking)
              PlaceholderDescription
              {sub_id1}Custom tracking field 1
              {sub_id2} 
              Custom tracking field 2
              {sub_id3} Custom tracking field 3
              {sub_id4} Custom tracking field 4
              {sub_id5} Custom tracking field 5
              Platform Click IDs
              PlaceholderDescription
              {gclid}
              Google Click ID
              {fbclid}Facebook Click ID
              {msclkid}Microsoft (Bing) Click ID
              {ttclid}TikTok Click ID
              {li_fat_id}LinkedIn First-Party Ad Tracking ID
              {twclid}Twitter/X Click ID
              {yclid}Yahoo Click ID
              System Parameters
              PlaceholderDescription
              {random} 
              Random 32-character string to prevent URL caching
              {other_params} Additional custom parameters in URL format

              Initiated Placeholders

              Use these in your postback URL when the type is set to Initiated. These are visitor-level placeholders — transaction data is not available for this type.

              Product Information
              PlaceholderDescription
              {product_id} JVZoo product identifier
              {funnel_id} Funnel ID; empty if the visitor did not arrive via a funnel
              Affiliate Tracking
              PlaceholderDescription
              {affiliate_id}Affiliate partner identifier
              {tid} Primary click tracking ID passed by the affiliate
              {click_id} JVZoo click ID; populated when the visitor arrived via a tracked affiliate link, otherwise empty
              {session_id} 6-character visitor session identifier, unique per visit
              UTM Parameters
              PlaceholderDescription
              {utm_source}Traffic source
              {utm_medium}Marketing channel
              {utm_campaign}Campaign identifier
              {utm_term} Paid search keywords
              {utm_content} Ad content variation
              Sub IDs (Custom Tracking)
              PlaceholderDescription
              {sub_id1} 
              Custom tracking field 1
              {sub_id2}Custom tracking field 2
              {sub_id3} Custom tracking field 3
              {sub_id4}Custom tracking field 4
              {sub_id5} Custom tracking field 5
              Platform Click IDs
              PlaceholderDescription
              {gclid} 
              {fbclid} Facebook Click ID
              {msclkid} Microsoft (Bing) Click ID
              {ttclid} TikTok Click ID
              Visitor Data
              PlaceholderDescription
              {country} 
              Visitor's 2-letter country code (e.g. US, GB)
              {ip} Visitor IP address
              System Parameters
              PlaceholderDescription
              {random} 
              Random 32-character string to prevent URL caching
              {datetime_unix} Current Unix timestamp
              {datetime_full}Current datetime in Y-m-d H:i:s format
              {datetime_utc} Current datetime in ISO 8601 UTC format

              Advanced URL Examples

              Purchase — Full Attribution Example:
              https://tracking.yourplatform.com/track?currency={currency}&transaction_id={transaction_id}&transaction_amount={transaction_amount}&transaction_type={transaction_type}&product_id={product_id}&product_name={product_name}&customer_email={customer_email}&customer_name={customer_name}&customer_country={customer_country}&vendor_id={vendor_id}&payment_method={payment_method}&affiliate_id={affiliate_id}&affiliate_amount={affiliate_amount}&commission_type={commission_type}&tid={tid}&utm_source={utm_source}&utm_medium={utm_medium}&utm_campaign={utm_campaign}&gclid={gclid}&sub_id1={sub_id1}&sub_id2={sub_id2}&random={random}
              Initiated — Full Checkout Visit Example:
              https://tracking.yourplatform.com/visit?tid={tid}&click_id={click_id}&session_id={session_id}&product_id={product_id}&affiliate_id={affiliate_id}&funnel_id={funnel_id}&country={country}&ip={ip}&utm_source={utm_source}&utm_medium={utm_medium}&utm_campaign={utm_campaign}&gclid={gclid}&sub_id1={sub_id1}&sub_id2={sub_id2}&random={random}

              Important Notes

              • Postbacks are account-wide by default — a single configuration covers all campaigns unless you restrict it to specific products
              • If your click IDs are longer than 26 characters, pass them via Sub IDs instead ({sub_id1} through {sub_id5} support up to 512 characters)
              • CPA campaigns do not fire refund postbacks
              • RevShare campaigns can track refunds and status changes via the {transaction_type} placeholder (SALE for purchases, RFND for refunds)

              Common Tracking Platforms

              JVZoo S2S postbacks are compatible with any platform that supports postback URLs, including:
              • RedTrack - Be sure to add: type=initiatedcheckout
              • Voluum
              • ClickFlare
              • BeMob
              • And any other platform with postback/pixel URL support

              Viewing Postback Logs

              Each postback configuration has a call history log. To view it:
              1. Go to My Account > Account Details > Affiliate Settings > Manage S2S Postbacks
              2. Click the log icon next to the postback you want to inspect
              The log shows each call with its timestamp, type, transaction ID (where applicable), HTTP response code, status (Success / Failed / Skipped), and the full URL that was called.

              Need Help?

              • Use live chat for fast technical assistance - most issues are resolved in minutes
              • Contact the Support team for platform-specific configuration help
               

              Was this article helpful?

              9 out of 11 liked this article

              Still need help? Message Us