Attribution and rewards
Attribution with sub_id
Append your own attribution values to action.payload.url as query parameters
before opening it: sub_id, plus optional sub_id_2 … sub_id_5. Conversions
come back on your conversion Webhook with the same sub_id
values, so you can credit the right user, and
earning status events carry the same values, so you can credit and reverse per
user; see Crediting users by sub_id.
{action.payload.url}&sub_id={USER_ID}Use ? instead of & if the link has no query string yet.
- The keys are exactly
sub_id,sub_id_2,sub_id_3,sub_id_4, andsub_id_5. They are case-sensitive, and there is nosub_id_1. - URL-encode each value. Values are kept up to 2048 bytes each; longer values are cut.
- AON removes these values before the user reaches the merchant.
- On the hosted page, put them on the hosted link instead; the page passes them on to every offer.
Click link lifetime
Click links have no time-based expiry, and you can cache and reuse them. A link keeps working while your application is serving, the placement is active, and the offer stays selected on the placement. After that, it opens an "unavailable" page instead of the offer.
Offers are matched to the user's resolved location, so refresh the list with their current location context when they next open the wall.
Conversion amounts
goals[].pricing.amount on an offer is its listed payout before the AON
platform fee. What you earn per conversion arrives as amount on the
conversion Webhook: a USD decimal string with exactly six
decimal places, such as "0.010000". Your share is rounded up to the next cent
(minimum 0.01 when above zero), so a sub-cent conversion now arrives as
0.01; if you convert amount into points, sub-cent conversions yield more
points than before. Use decimal arithmetic when calculating rewards from it.
Conversion Webhooks are always delivered on Protocol v1.0, with
AON-Protocol-Version: 1.0.
Crediting users
Credit and reverse rewards by following
Crediting users by sub_id. In short:
key credits by earning_id, use the amount from the event with the largest
sequence rather than adding amounts together, deduplicate by
(application_id, event_id), and on earning_rejected reverse only what you
already credited.