Surveywall Callbacks

For Web Surveywalls, you have to manually manage your users' currencies on your own servers.

Adding your Callback URL

You can configure a conversion callback URL in our publisher dashboard. To do so, navigate to Placements / Apps, edit your placement and set the Callback URL to your server's postback URL:

If this is the callback URL you set for your offerwall placement:

https://your-server.com/callback?network=ayetstudios&amount={currency_amount}&external_identifier={external_identifier}&payout_usd={payout_usd}

A typical conversion callback sent by our server will look like this:

https://your-server.com/callback?network=ayetstudios&amount=360&external_identifier=username&payout_usd=0.36

This assumes you set external_identifier to username in the original Offerwall URL for that user, the currency conversion rate in your placement was 1000 per $1 and the user completed an offer with a $0.36 payout.

Important: Your server must always reply with an HTTP 200 status code to our postbacks. Otherwise we will resend the postback 12 times over a span of one hour before giving up.

Enabling & Processing Reversal Callbacks

You can automatically process Reversals made to your account and placements by enabling Reversal Callbacks.

Simply navigate to Placements / Apps, edit your placement and check the box Enable Reversal Callbacks.

Once enabled we will send reversal callbacks directly to the callback URL you set up for your placements.

The unique transaction ID we send for each conversion will carry an "r-" prepended to the ID for each reversal callback.

For chargebacks the original transaction ID of a conversion is prepended with "r-".

Example Transaction IDs:

381f99333613b41392b15183d69a7240308e8461 -> Regular Callback

r-381f99333613b41392b15183d69a7240308e8461 -> Reversal Callback

Below is a list of all relevant parameters to use in order to distinguish reversal callbacks from regular callbacks.

VariableTypeDescription

{transaction_id}

string

Unique transaction ID - use for duplicate checks. For chargebacks the original tid is prepended with "r-".

{is_chargeback}

int

Either 0 or 1. Indicator if the callback is a conversion (0) or a chargeback (1).

{chargeback_reason}

string

Reason why chargeback created. Only available if is_chargeback set to 1.

{chargeback_date}

string

Date of chargeback creation. Only available if is_chargeback set to 1.

Available Macros for Callback URLs

Note: If the parsing capabilities of your callback endpoint are limited, each of the parameters below is also available in a sanitized version. By suffixing any of the parameters below with _sanitized (for example {external_identifier_sanitized}), any character that is not in 0-9 a-z A-Z - _ will be removed. Whitespaces will be replaced by underscores.

Important: To ensure each conversion is granted only once to your users, always use {transaction_id}. Occasional callback resends may occur for various reasons. Utilizing {transaction_id} prevents granting conversions more than once.

VariableTypeDescription

{transaction_id}

string

Unique transaction ID - use for duplicate checks. For chargebacks the original tid is prepended with "r-".

{payout_usd}

float

The actual conversion payout in USD. If chargeback value is negative.

{currency_amount}

float

The amount of currency the user earned (taken from your offerwall currency configuration). If chargeback value is negative.

{external_identifier}

string

The user identifier (EXTERNAL IDENTIFIER) originally passed in the web offerwall link.

{user_id}

integer

Our internal ID for this offerwall user

{placement_identifier}

string

The placement_identifier for which the conversion occured

{survey_id}

int

Survey ID of the completed survey

{loi}

int

Length of interivew - the time it took the user to complete the survey

{adslot_id}

int

The ID of the adslot for which the conversion occured

{sub_id}

string

The ID of the Placement for which the conversion occured [PL-1...n]

{ip}

string

Converting device's IP address if known, 0.0.0.0 otherwise

{offer_id}

int

Offer ID of the converting offer

{offer_name}

string

Name / title of the converting offer

{device_uuid}

string

ayeT-Studios internal device identificator

{device_make}

string

Device manufacturer

{device_model}

string

Device model

{advertising_id}

string

Device advertising id (GAID/IDFA) if known, otherwise empty

{sha1_android_id}

string

Device sha1 hashed android id if known, otherwise empty

{sha1_imei}

string

Device sha1 hashed IMEI, if known, otherwise empty

{is_chargeback}

int

Either 0 or 1. Indicator if the callback is a conversion (0) or a chargeback (1).

{chargeback_reason}

string

Reason why chargeback created. Only available if is_chargeback set to 1.

{chargeback_date}

string

Date of chargeback creation. Only available if is_chargeback set to 1.

{task_name}

string

Only available for CPE campaigns, shows individual task name for that conversion.

{currency_identifier}

string

Shows virtual currency name as set in adslot.

{currency_conversion_rate}

decimal

Shows currency conversion rate used to calculate user currency for the given conversion.

{custom_1}

string

Custom parameter to pass variables to the conversion callbacks.

{custom_2}

string

Custom parameter to pass variables to the conversion callbacks.

{custom_3}

string

Custom parameter to pass variables to the conversion callbacks.

{custom_4}

string

Custom parameter to pass variables to the conversion callbacks.

{custom_5}

string

Custom parameter to pass variables to the conversion callbacks.

Last updated