Skip to content

How to set up advertiser postback tracking (S2S) in Rastro

Send conversions from the advertiser's server to Rastro with a postback URL: parameters, statuses, goals, coupons, testing and the pixel and API alternatives.

Updated on 20 Oct 2026

A postback (server-to-server or S2S tracking) is the most reliable way to record conversions. When a sale or lead happens, the advertiser's server calls a Rastro URL with the identifier of the click that brought the customer. There are no cookies or scripts in the browser, so ad blockers and privacy settings don't get in the way.

How it works

  1. The visitor clicks an affiliate's tracking link.
  2. Rastro records the click and sends the visitor to the offer's destination URL, replacing {click_id} with a unique identifier.
  3. The advertiser's website saves that click_id (for example with the order or the user account).
  4. When the conversion happens, the advertiser's server calls the postback URL with the same click_id.
  5. Rastro links the conversion to the click, calculates the affiliate's payout and notifies the affiliate.

1. Pass the click_id to the advertiser

In the offer's destination URL, add the {click_id} macro where the advertiser expects it:

https://shop.example/landing?clickid={click_id}

The parameter name (clickid, aff_sub, transaction_id…) is whatever the advertiser's system reads. Other macros are available too, such as {affiliate_id} and {sub1} to {sub5}.

2. Give the advertiser the postback URL

Each advertiser has their own URL with a secret token. Find it on the advertiser's page (or, if they have panel access, on their Integration page):

https://track.rastroaff.com/postback?token=ADVERTISER_TOKEN&click_id={clickid}&txn_id={order_id}&amount={order_total}&status=approved

The advertiser replaces the values in braces with their own placeholders. The address starts with your network's tracking domain; if you use your own domain (for example track.yourcompany.com), it starts with that.

Parameters

Parameter Required What it does
token yes Identifies the advertiser. Keep it secret; regenerate it if it leaks.
click_id yes* The identifier received in the destination URL.
txn_id recommended The advertiser's order or lead ID. Without it, each click can only produce one conversion.
amount for CPS Sale value, used to calculate percentage payouts.
status no approved, pending, rejected or reversed.
goal no A campaign goal with its own payout (for example goal=first_deposit).
coupon no Attributes the conversion by coupon code instead of click_id (txn_id then required).
country no The customer's country (2-letter code). Helps detect fraud when it doesn't match the click's country.

* Not needed when the conversion is attributed by coupon.

Changing a conversion's status

Send the postback again with the same click_id and txn_id and the new status. This is how refunds and chargebacks work: status=reversed removes the amount from the affiliate's balance and notifies them.

Testing

Open the postback URL in a browser with a real click_id from a test click. The conversion appears in Conversions within seconds. If not, the Postback log shows each request and why it was rejected, for example an unknown click_id, a wrong token or a click outside the attribution window.

When the advertiser can't send a postback

  • Pixel: an image or iframe on the confirmation page. Simpler, but less reliable: ad blockers can stop it, and the click_id has to travel from the landing page to the confirmation page.
  • API: POST /conversions with the token in the Authorization: Bearer header and a JSON body (click_id, txn_id, status, amount).

Both use the same rules as the postback. The URLs and ready-to-copy examples are on the advertiser's integration page.