What are Postbacks
Postback is an automatic HTTP request sent from our system (Affiliate TOP) to your performance monitoring tool (e.g. Keitaro, Voluum, RedTrack) or CRM when a user performs an action: registers, makes a deposit, withdraws funds, installs an app, makes a trade, etc.
With postbacks, all conversion data gets to your tracking tool without any manual effort.
Postbacks allow you to:
• Analyze traffic in real-time
• Quickly adjust your ads and strategies to improve campaign results and boost profits
• Find and scale profitable bundles and traffic sources faster
What is Postback URL
It’s a special link to which our system sends conversion data. It contains parameters – "cells" that get filled with values during an event: click ID, deposit amount, trader ID, campaign ID, etc. When an event occurs, our system automatically sends a request to this URL with the data.
Where to find a Postback URL?
Take it from your performance monitoring tool or CRM (Keitaro, Voluum, RedTrack, etc.). Check out their documentation or interface under postback / S2S tracking setup.
Postback URL examples from Top 3 trackers
Find out what they generally look like and get familiar with adding our parameters.
Keitaro
Postback URL example: http://your-keitaro.com/postback?clickid={click_id}&status=approved&payout={sumdep}
- Parameter name clickid comes from Keitaro documentation
- {click_id}, {sumdep} are our placeholders
Voluum
Postback URL example: https://your-voluum.com/postback?cid={click_id}&payout={sumdep}
- Parameter name cid is the standard Click ID name for Voluum tracker
- {click_id}, {sumdep} are our placeholders
RedTrack
Postback URL example:
https://your-redtrack.com/postback?clickid={click_id}&revenue={sumdep}&status=approved
- Parameter names clickid and revenue come from RedTrack documentation
- {click_id}, {sumdep} are our placeholders
Important: Parameter names (clickid, cid, revenue) must exactly match your tracker's requirements. Placeholders in curly braces ({click_id}, {sumdep}) are ours.
How Postback URL and Parameters Work
Each parameter consists of two parts:
- parameter name – what your tracker / CRM expects (taken from their documentation)
- our placeholder in curly braces – what we automatically insert.
Example – visitor_id={click_id}
Where:
- visitor_id – parameter name from tracker documentation. Sent as-is. This is the exact name your tracker expects data under
- {click_id} – our placeholder. Replaced with the real Click ID during the event.
Left side (visitor_id, campaign_id, sub_id) – tracker's requirements.
Right side ({click_id}, {campaign_id}) – AffiliateTop data.
Where to Get Postback URL and Parameter Names
- Log into your performance monitoring tool (tracker or CRM)
- Find Postback / Server-to-Server (S2S) tracking section
- Copy the base Postback URL and parameter names from the interface or documentation
- Paste the URL into our settings and add our placeholders: visitor_id={click_id}, amount={sumdep}, etc.
Full Postback URL Structure Example
Before event (with placeholders) – https://your-tracker.com/postback?visitor_id={click_id}&site_id={site_id}&trader={trader_id}&amount={deposit_amount}&campaign_id={campaign_id}
After event (real values) – https://your-tracker.com/postback?visitor_id=1234567&site_id=4458&trader=902134&amount=23.22&campaign_id=YT_BR_01
Postback Parameters: Format, Examples, and Purpose
1. Click ID
- Our placeholder: {click_id}
- In tracker URL: visitor_id={click_id} → visitor_id=1234567
- Purpose: Links conversion to a specific ad click. Tracker knows which traffic source converted
- Meaning: Unique click number received from your tracker when the click occurred
2. Site ID
- Our placeholder: {site_id}
- In URL: site_id={site_id} → site_id=4458
- Purpose: Shows which site / placement generated converting traffic. Helps optimize traffic purchases
- Meaning: ID of the website or placement in your ad network
3. Trader ID
- Our placeholder: {trader_id}
- In URL: trader={trader_id} → trader=902134
- Purpose: Links all actions of one user (multiple accounts, deposits, trades) into unified stats
- Meaning: Permanent trader identifier issued upon first registration
4. Your account ID
- Our placeholder: {a}
- In URL: account={a} → account=a182haj2nn
- Purpose: Identifies your affiliate link. Useful if managing multiple accounts
- Meaning: Your partner refcode. Usually one per partner
5. Deposit amount
- Our placeholder: {sumdep}
- In URL: amount={sumdep} → amount=23.22
- Purpose: Shows exact deposit amounts (first or recurring). For ROI calculation and LTV analysis
- Meaning: Deposit amount in selected currency ($ or ¢). Only appears in deposit events, like FTD or Redeposit
6. Transaction ID
- Our placeholder: {transaction}
- In URL: tx_id={transaction} → tx_id=81283192873
- Purpose: Uniquely identifies each conversion. Prevents duplicates and enables accurate attribution
- Meaning: Internal ID of the specific event (deposit, withdrawal, etc.)
7. Advertising campaign ID
- Our placeholder: {ac}
- In URL: campaign_id={ac} → campaign_id=YT_BR_01
- Purpose: Separates stats across different campaigns (geo, creatives, landers)
- Meaning: Name or ID of your ad campaign from the referral link
8. Subaccount postback ID
- Our placeholder: {sa}
- In URL: sub_id={sa} → sub_id=teaser_01
- Purpose: Your additional analytics (traffic type, creative, webmaster)
- Meaning: Any value from your referral link (sub1, sub2, etc.)
9. Profit
- Our placeholder: {profit}
- In URL: profit={profit} → profit=15.75
- Purpose: Shows trading profit/loss amount for real trades. Essential for revenue tracking and performance analysis
- Meaning: Net profit (positive or negative) from the user's real trading activity. Available in Real trade events
Trigger Events for Postbacks
Affiliate TOP supports postbacks for user actions listed below. One postback = one event. Decide what event you want to track and type or click on needed parameters to add them to your Postback URL.
- Registration – user completes account registration
- Email confirmation – user verifies email address
- First deposit (FTD) – user's first deposit
- Redeposit – any subsequent deposit (repeat deposits)
- App installed – user installs mobile application
- First demo trade – user's first trade on demo account
- Withdrawal – user completes funds withdrawal
- Real trade – user executes trade on real trading account
Each event carries its own set of available parameters which were mentioned above.
How to set up postback (Interface Guide)
Click “Add” to start the postback setup process and fill out required fields based on your preferences.
- Postback name – enter a clear and unique name to each of your postbacks to avoid confusion. (e.g., "FTD_YT_BR")
- Event – select from dropdown (Registration, First deposit, etc.)
- Postback URL – paste URL from your tracker (check examples above)
- Parameters – click on blue presets below “Postback URL” field ("Click ID", "Deposit amount") to automatically add parameters
- Method – GET (by default)
- Currency – select $ or ¢ for amounts
7. Segmentation filters
This setting lets you decide when the postback should be sent — depending on which campaign or subaccount it relates to. You can fill in one or both of these fields.
Why use segmentation filters?
They help you manage traffic more precisely:
- Optimize different traffic sources independently – if you use more than one performance monitoring tool, you can send basic events to one and events with extra parameters to another.
- Run A/B tests – segmentation helps you see which sources bring more conversions and how different campaigns, creatives, or landing pages perform.
- Test or migrate tools safely – you can start sending postbacks to a new performance monitoring tool in parallel with the old one and compare the numbers before fully switching.
How the system decides when to send the postback:
Neither campaign nor subaccount specified
The postback is sent for the selected trigger event regardless of campaign or subaccount.
Only campaign specified
The postback is sent for the trigger event only if the trader’s tracking link includes this specific campaign.
Only subaccount specified
The postback is sent only if the trader’s tracking link includes this specific subaccount, no matter what campaign it belongs to.
Both campaign and subaccount specified
The postback is sent only when both values in the trader’s link match the campaign and subaccount you entered.
(Activation note: after the postback is activated, it’s sent within 15 seconds whenever the selected event and conditions are met.)
8. Activate if needed and click "Add"
Postback Statuses
Postbacks go through several statuses during their lifecycle. Here's what each means and what triggers status changes:
- Checking (~15 seconds) – we examine your postback for any issues when it first created, edited, or copied
- If postback is correct → it becomes Active.
- If it has errors → postback switches to Inactive status with an error message shown in the interface.
- Postback can’t be edited or paused – only deleted
- Active – postback is working correctly and collecting data.
- If edited → temporarily returns to Checking status.
- If receives 10 consecutive 3xx/4xx HTTP errors → automatically disables, shows error in interface, and sends email notification.
- Inactive – postback is disabled due to validation failure, manual deactivation, or error threshold reached. Must be fixed and revalidated to become Active again.
Key behaviors:
- After 10 failed validation attempts, activation requires manager assistance
- Active postbacks self-monitor and protect against persistent delivery failures
Postback Logs
Here you can find all postbacks made in the last 30 days. It helps you identify setup issues and understand what needs to be fixed, for example.
List of possible errors:
When postbacs fail, check the Logs section for the status code.
Error 3xx – Redirection errors
The server says: "Go to this other address instead."
Result: Your postback gets sent somewhere else.
Top causes:
- Postback URL automatically redirects (HTTP→HTTPS, www/non-www, tracking links)
- Server or tracker forwards requests to another address
- Your server secretly changes the URL along the way
How to fix it?
1. Copy your postback URL
2. Paste it into a browser address bar and hit Enter
3. Wait for it to load (or stop redirecting)
4. Copy what you see in the address bar now — this is your postback URL
Error 4xx – Client errors
The server says: "Something's wrong with your request."
Result: Usually it’s a setup issue.
Top causes:
- 404: Postback URL doesn't exist (typo in path, domain, or parameters)
- 400/422: Missing or invalid parameters (clickid, status, amount)
- 403/401: Server blocks the request (firewall, IP whitelist, auth required)
How to fix it?
- Copy your full postback URL (with all parameters like clickid)
- Check it character by character against your server setup
- Try opening it in a browser — does it show "page not found"?
- Fix the wrong part (domain, path, or missing info) and update it
Comments
0 comments
Article is closed for comments.