# AffiliateOS Help Center > Answers for publishers, advertisers and networks on AffiliateOS: offers paid per install, per in-app event or as a percent of each sale, tracked clicks, signed postbacks. Every article below is also plain Markdown at its .md address. ## Files for AI coding assistants - [Publisher reference](https://www.affiliateos.ai/ai/publisher.md): Keys, the Offer API and Top Offers Feed, tracking links, postbacks and signatures, the Hosted Offerwall. - [Advertiser reference](https://www.affiliateos.ai/ai/advertiser.md): Products, campaigns and events, afos_click_id, server events, test events and every response status. - [Network reference](https://www.affiliateos.ai/ai/network.md): The Network API, paging, tracking links for your publishers, postbacks and verifying them. ## Developer reference - [Developer docs](https://www.affiliateos.ai/help/developers): hosts, keys, request and response samples - [Offer API](https://www.affiliateos.ai/help/developers#offer-api): GET /publisher/offers - [Top Offers Feed](https://www.affiliateos.ai/help/developers#top-offers-feed): GET /publisher/offers?segment=top - [Hosted Offerwall](https://www.affiliateos.ai/help/developers#offerwall): GET offerwall.affiliateos.xyz/w/{appId} - [Postbacks](https://www.affiliateos.ai/help/developers#postbacks): GET your URL - [Advertiser events](https://www.affiliateos.ai/help/developers#advertiser-events): POST /v1/advertiser/events - [Network API](https://www.affiliateos.ai/help/developers#network-api): GET /network-api/offers ## Getting started - [What is AffiliateOS?](https://www.affiliateos.ai/help/getting-started/what-affiliateos-does.md): AffiliateOS is an offer platform. Advertisers pay per install, in-app event or sale. Publishers show the offers. We track, check and pay each conversion. - [Publishers: from invite to your first conversion](https://www.affiliateos.ai/help/getting-started/publisher-first-conversion.md): Set up your postback secret before any traffic, send a test, pick how to show offers, then trace one real user from the tap to your server. - [Advertisers: launch your first campaign](https://www.affiliateos.ai/help/getting-started/advertiser-first-campaign.md): Create an account, list the steps you'll pay for, verify each one with a free test event, add at least $50, then submit your campaign for approval. - [Networks: set up your network and bring your publishers](https://www.affiliateos.ai/help/getting-started/network-first-publishers.md): Sign in with the link from our team, add your postback URL, webhook secret and API key, then create each publisher, pick their offers and send the invite. - [Choose how to show offers](https://www.affiliateos.ai/help/getting-started/choose-how-to-show-offers.md): Run a rewarded app? Start with the Hosted Offerwall. Build your own screen with the Offer API or Top Offers Feed, or have our team send you Offer Links. - [How money moves: click, conversion, postback, payout](https://www.affiliateos.ai/help/getting-started/how-money-moves.md): The advertiser pays for each step it prices. We match the step to the tap, send the publisher a signed postback and the publisher credits its user. - [How to get access](https://www.affiliateos.ai/help/getting-started/get-access.md): Publishers request access and get an invite link from us or from their network. Networks book a demo. Advertisers sign up on their own and start a campaign. ## Account, team and security - [Sign in and reset your password](https://www.affiliateos.ai/help/account/sign-in-reset-password.md): Where publishers, advertisers and networks sign in, what to do when you forget a password, how to change one you know and how teammates get a new one. - [Invite teammates and choose their roles](https://www.affiliateos.ai/help/account/invite-teammates-roles.md): Owners and Admins give each teammate their own login under Team, with a role and a separate switch for earnings. You share the temporary password yourself. - [Create, rotate and revoke API keys](https://www.affiliateos.ai/help/account/create-rotate-revoke-api-keys.md): Publishers manage keys under My Profile, networks under Workspace settings. Each key is shown once. Rotate by adding the new key before revoking the old. - [If an API key leaks](https://www.affiliateos.ai/help/account/api-key-leaked.md): Generate a replacement, revoke the leaked key straight away, then deploy the new one. Publishers should also check their postback URLs, which a key can edit. - [Why an API key stopped working](https://www.affiliateos.ai/help/account/api-key-stopped-working.md): Most often the key expired or was revoked, and both answer 401 Invalid or expired API key. Check the key list, then the header, the key type and your account. - [Add an app or website](https://www.affiliateos.ai/help/account/add-app-or-website.md): Register each app or site as its own asset, or property, so it gets its own tracking link, secret and postbacks, and its reporting stays separate. - [Use one login for several portals](https://www.affiliateos.ai/help/account/one-login-several-portals.md): Have a publisher, advertiser or network account side by side? Ask us to link them, then switch from your account page without signing out and back in. - [Update company, tax and payout details](https://www.affiliateos.ai/help/account/update-company-tax-payout-details.md): Company, tax and payout details aren't edited in the dashboard. Email us from the address on the account with your account ID, and our team makes the change. ## Offers and the feed - [How to fetch offers from the Offer API](https://www.affiliateos.ai/help/offers/fetch-every-offer.md): Call GET /publisher/offers with your pk_ key and walk through the response. Authentication, filters, paging and your first request, step by step. - [Get our top offers in order (Top Offers Feed)](https://www.affiliateos.ai/help/offers/get-top-offers-in-order.md): Add segment=top to the Offer API call to get our picks and the offers that converted best in the last 30 days, at your payouts, in an order we set. - [How we pick which copy of an offer you see](https://www.affiliateos.ai/help/offers/which-copy-you-see.md): When the same app is listed more than once, your list keeps the best install-paid copy and the best event-paid copy for each platform. Here is the rule. - [Filter offers by country, platform and category](https://www.affiliateos.ai/help/offers/filter-by-country-platform-category.md): Narrow the Offer API to what one user can finish, with country, state, platform and OS version, then by kind of offer, such as games, sign-ups or finance. - [Every offer field, explained](https://www.affiliateos.ai/help/offers/every-offer-field.md): Each field on an Offer API row and on its goals, what it means and when it's empty. Amounts are in USD and already priced at your own payout. - [Multi-step offers: which steps pay](https://www.affiliateos.ai/help/offers/multi-step-offers.md): Each step of an offer says what it pays you. A step earns once the advertiser's tracking confirms it, and every step sends its own postback. - [Install offers: paid once, at install](https://www.affiliateos.ai/help/offers/install-offers-paid-once.md): An install-paid offer pays you once, when the user installs and opens the app. Later steps pay you nothing and post back with the player's reward instead. - [Daily caps: why an offer leaves the feed mid-day](https://www.affiliateos.ai/help/offers/daily-caps.md): When an offer's daily cap fills or its budget runs out, it leaves the Offer API list so no one taps a dead end. It returns on its own, usually at the reset. - [Why an offer ended or disappeared](https://www.affiliateos.ai/help/offers/offer-ended-or-disappeared.md): Offers that vanish are often full for today and come back on their own. If one ended for good, its old links say so. How to tell which, and what to do. - [Get an email when an offer changes](https://www.affiliateos.ai/help/offers/email-alerts.md): Get an email when an offer you run changes its payout or stops running. Each teammate sets up their own alerts, under Email alerts in the portal. - [Paging and sorting a large list](https://www.affiliateos.ai/help/offers/paging-and-sorting.md): Paging is off until you send page or per_page. Walk the pages until has_more_pages is false, and pick an order with sort and sort_dir. - [Web, desktop and mobile offers](https://www.affiliateos.ai/help/offers/web-desktop-and-mobile.md): Each offer's platforms say where it runs. Show users only offers for the device they're on, because a tap from the wrong device goes through and can't finish. - [Marketplace or direct: see where an offer came from](https://www.affiliateos.ai/help/offers/marketplace-or-direct.md): Your network dashboard splits Offers into Marketplace and Direct, and the Network API filters the same way with placement. What each kind is and who sees what. ## Hosted Offerwall - [Set up your Hosted Offerwall](https://www.affiliateos.ai/help/offerwall/set-up-wall.md): Your account already has a wall. Copy its snippet from Docs, fill in your user's ID and country, choose your users' share, then open it as a test user. - [Open the wall: simple links and signed links](https://www.affiliateos.ai/help/offerwall/simple-and-signed-links.md): A simple link opens your wall with the user's ID alone. A signed link is made on your server and works once, within 5 minutes. When to use each. - [Embed the offerwall in an iframe on a web page](https://www.affiliateos.ai/help/offerwall/embed-on-web-page.md): Paste the iframe snippet, fill in the signed-in user's ID and country when the page renders, give it room and check which sites may frame your wall. - [Add the wall to an iOS, Android or React Native app](https://www.affiliateos.ai/help/offerwall/add-to-mobile-app.md): Open your wall's link in a browser tab from your app and it works with no other code. Use your own WebView only when you need the wall's events. - [Listen for wall events in your app](https://www.affiliateos.ai/help/offerwall/listen-for-wall-events.md): In an iframe or a WebView the wall posts a message for each thing that happens. Use them to size the frame and close the wall. Credit users from postbacks only. - [Name your currency and set its rate](https://www.affiliateos.ai/help/offerwall/name-currency-set-rate.md): In My Profile, under Offerwall, pick My own currency, name it and say how many make a dollar. The wall shows rewards in it; we still pay you in dollars. - [What your users are paid on the wall](https://www.affiliateos.ai/help/offerwall/what-users-are-paid.md): Each step shows your users' share of what it pays you, rounded down to the cent, unless the advertiser set the reward. Credit the user_payout we send. - [The iPhone install tracking guide your users see](https://www.affiliateos.ai/help/offerwall/iphone-tracking-guide.md): Before a new iPhone user's first app install, the wall shows two short screens about the tracking setting. What they say, who sees them, how to turn them off. - [Test your wall before launch](https://www.affiliateos.ai/help/offerwall/test-before-launch.md): Open the wall as a test user on each device, tap through in test mode, send a test postback, then run one real offer to the end and trace it in Flight Recorder. - [“This offerwall link is invalid or expired”](https://www.affiliateos.ai/help/offerwall/link-invalid-or-expired.md): We refused to open the wall for that link. On signed links it's almost always a reused or late link; on simple links, check the wall ID, uid and source. ## Offer Links and click tracking - [Build a tracking link](https://www.affiliateos.ai/help/links-and-tracking/build-tracking-link.md): Open the offer under Offers, copy the link from its Tracking link card and put each user's own ID in place of {SUB_ID} whenever you show it. - [Pass your user ID and sub IDs on a tracking link](https://www.affiliateos.ai/help/links-and-tracking/pass-user-id-and-sub-ids.md): Put your user's ID in sub_id on every link; it comes back on every postback. Add up to ten values of your own as sub1 to sub10 and they come back too. - [What happens after a user clicks](https://www.affiliateos.ai/help/links-and-tracking/what-happens-after-click.md): We record the tap, run our checks and send the user to the store or the offer with a click ID attached. Then we match the conversion and post it back to you. - [Use your own tracking domain with a CNAME](https://www.affiliateos.ai/help/links-and-tracking/use-own-tracking-domain.md): We can serve your tracking links on a subdomain you own, such as track.pebble.example. You add one CNAME record; we issue the certificate and switch your links. - [Messages your users might see after a click](https://www.affiliateos.ai/help/links-and-tracking/messages-users-see-after-click.md): Six pages can appear instead of the store or the offer after a tap. What each title means, why it showed and what you can do about it. - [Users in states or regions an offer doesn't accept](https://www.affiliateos.ai/help/links-and-tracking/excluded-states-and-regions.md): Send country and state with your Offer API call and offers that turn the user away never reach the screen. At the tap, we refuse states an offer excludes. ## Postbacks and conversions - [How to set up a postback URL](https://www.affiliateos.ai/help/postbacks/set-up-postback-url.md): Create your postback secret, add one Conversion postback for every offer, then send a test before any traffic. Networks use Workspace settings. - [Postback parameters and macros, one by one](https://www.affiliateos.ai/help/postbacks/postback-parameters.md): Every parameter and macro a postback can carry, when each is sent, and which money field is yours on each lane. Network postbacks are listed apart. - [Global or offer-specific postbacks: which one fires](https://www.affiliateos.ai/help/postbacks/global-or-offer-specific.md): For each conversion we pick one active postback row. A row for that offer beats a global one, and a row naming the exact event beats a general one. - [Verify a signed postback with HMAC-SHA256](https://www.affiliateos.ai/help/postbacks/verify-postback-secret.md): Every publisher postback carries a verifier made with your ps_ secret. Strip it, hash the rest of the URL as received, compare, then credit the user. - [Send a test postback](https://www.affiliateos.ai/help/postbacks/send-test-postback.md): Choose Send test postback on a saved row. It's signed like a real postback and carries test=true. It proves your URL answers, not that traffic routes there. - [Conversion statuses: what each one means](https://www.affiliateos.ai/help/postbacks/conversion-statuses.md): A conversion is completed, reversed or rejected. Only the first two post back to you. Here is what each means, where it shows and what your server does. - [One postback per step on multi-step offers](https://www.affiliateos.ai/help/postbacks/multi-step-offers.md): Each step a user completes sends its own postback, with its own action_id, goal_id and amounts. Install-paid games pay you once, at install. - [Why a conversion was reversed](https://www.affiliateos.ai/help/postbacks/why-conversion-reversed.md): A reversal comes from the advertiser's side, our traffic checks or our team. Where to read the reason, what a reversal takes back and what to send us. - [How to answer a postback, timeouts and retries](https://www.affiliateos.ai/help/postbacks/answer-postback-timeouts-retries.md): Answer with a 2xx, then credit the user. We retry publisher postbacks after a timeout, a 5xx or a 429, never after another 4xx, and never resend on our own. - [Pull conversions instead (Reporting API)](https://www.affiliateos.ai/help/postbacks/pull-conversions-reporting-api.md): Call GET /publisher/conversions with your pk_ key to read your conversions under the same action_id your postbacks carry. For reconciling and catching up. ## Fraud Defense and traffic quality - [How Fraud Defense works](https://www.affiliateos.ai/help/fraud-defense/how-fraud-defense-works.md): Every tap is checked before it reaches the advertiser. Refused taps cost nobody anything, and users we reject are listed for the publisher with a plain reason. - [“This offer isn't available for your account”](https://www.affiliateos.ai/help/fraud-defense/offer-not-available-for-account.md): Our traffic checks refused that tap: the user is on your reject list, or the phone, address or browser is blocked. The offer is still live for everyone else. - [Held or rejected traffic: what it means for you](https://www.affiliateos.ai/help/fraud-defense/held-rejected-traffic.md): A rejected user's conversions pay $0 and send no postback for 30 days. A held offer waits for our team. A conversion in review pays nobody until approved. - [Traffic you may and may not send](https://www.affiliateos.ai/help/fraud-defense/traffic-you-may-send.md): Real people who chose to tap, inside the offer's targeting. No bots, no faked devices or places, no one person as many accounts. What each check looks for. - [Where incentivized traffic runs on AffiliateOS](https://www.affiliateos.ai/help/fraud-defense/incentivized-non-incentivized-traffic.md): Incentivized users finish an offer for a reward from the app they found it in; non-incentivized users get none. Where each runs on AffiliateOS, and why. ## Reporting - [Read your dashboard: clicks, conversions and CVR](https://www.affiliateos.ai/help/reporting/read-your-dashboard.md): What each number on the publisher, network and advertiser dashboards counts, how CVR and EPC are worked out and what the Status switch changes. - [Group and break down charts](https://www.affiliateos.ai/help/reporting/group-break-down-charts.md): Pick a date range and an interval, break the chart down by offer, platform or country, add filters and switch the chart type, all on the Dashboard. - [Time zones and when a day closes](https://www.affiliateos.ai/help/reporting/time-zones-day-close.md): Every report counts days in UTC, midnight to midnight. Which day an evening conversion in Texas lands on, and when a closed day can still change. - [Why our numbers and yours differ](https://www.affiliateos.ai/help/reporting/why-numbers-differ.md): UTC days, conversions versus later steps, reversals dated back, postbacks that never arrived and duplicates. The usual reasons two sets of numbers disagree. - [Export data or use the Reporting API](https://www.affiliateos.ai/help/reporting/export-data-reporting-api.md): Download CSV on Conversions or Offer Performance for a spreadsheet, or read the same data with your pk_ key from the Reporting API. What each file holds. ## Payouts, billing and funding - [See what you've earned](https://www.affiliateos.ai/help/payouts/see-what-you-earned.md): Your earnings are in US dollars, per conversion and net of reversals. Where to read them in the portal, what adds to them and what can take them back. - [Payout math: from offer payout to your user's reward](https://www.affiliateos.ai/help/payouts/payout-math-user-reward.md): Your payout is what we pay you for a step. Your user's reward is a second figure we send so you know what to credit. Where each one comes from, with an example. - [Reversals after you've been paid](https://www.affiliateos.ai/help/payouts/reversals-after-payment.md): A reversal takes back what a conversion paid, dated on the day it was earned, even once you've been paid. A person reviews it before anything is deducted. - [Advertisers: add funds and see how spend is drawn](https://www.affiliateos.ai/help/payouts/advertiser-funds-and-spend.md): Add funds by card on Billing, $10 or more a deposit. Each live event that matches a tap is charged its price when we accept it. Test events are never charged. - [Network plans and pricing](https://www.affiliateos.ai/help/payouts/network-plans-pricing.md): The network plan starts at $500 a month, in US dollars, and we confirm your price on the demo call before you start. What the plan covers, and what others pay. - [Invoices and receipts](https://www.affiliateos.ai/help/payouts/invoices-and-receipts.md): The dashboard doesn't create invoices. Here is the record each role has instead, line by line, and what to send us when you need a document. ## Advertiser campaigns - [Create a product and a campaign](https://www.affiliateos.ai/help/campaigns/create-product-and-campaign.md): Choose New campaign, add your app or site as a product, then name the campaign, pick countries and where taps land. Events, tests and funds come next. - [Choose events and what each one pays](https://www.affiliateos.ai/help/campaigns/choose-events-and-prices.md): Add each thing a user does that you'll pay for, with a price per conversion. Each event is charged once per user, and only when a live event matches a tap. - [Capture afos_click_id on your site or app](https://www.affiliateos.ai/help/campaigns/capture-afos-click-id.md): Every tap on your offer carries a click ID. Store it on the user and send it back on every live event, so that event can be charged. Website, Android and iOS. - [Send events server to server (S2S)](https://www.affiliateos.ai/help/campaigns/send-server-events.md): When a user does something you pay for, your server posts one event with your ak_ key and the stored click ID. Every field, every status and safe retries. - [Forward events from AppsFlyer or Adjust](https://www.affiliateos.ai/help/campaigns/forward-appsflyer-adjust-events.md): Your server already gets events from your attribution tool. Forward each one to us with the tool's event name and the user's stored afos_click_id. No new SDK. - [Send test events without being charged](https://www.affiliateos.ai/help/campaigns/send-test-events.md): Press Send test next to an event, or send it from your server with "test" set to true. Tests are never charged, and each one you send turns that event Verified. - [Submit for approval and go live](https://www.affiliateos.ai/help/campaigns/submit-for-approval-go-live.md): What Submit for approval checks, what our team reviews and what you can still change, pause or resume once your campaign is live. - [Website campaigns](https://www.affiliateos.ai/help/campaigns/website-campaigns.md): Send people to an HTTPS page on your site, keep the afos_click_id we add to it and pay for sign-ups or other events your server reports. - [Hand your integration to an AI coding agent](https://www.affiliateos.ai/help/campaigns/hand-integration-ai-coding-agent.md): Copy the AI playbook from your campaign, with its IDs filled in, give it to your developer's coding agent and keep the API key on your server. - [Go-live checklist](https://www.affiliateos.ai/help/campaigns/go-live-checklist.md): The checks to run before you choose Submit for approval and on your first live event, each with how to confirm it in your dashboard. ## Running a network - [What your publishers can and can't see](https://www.affiliateos.ai/help/networks/what-publishers-can-see.md): Publishers see each offer's brand, targeting and what it pays them, plus their own reports. Your revenue, your margin and where an offer comes from stay hidden. - [Daily caps for your publishers](https://www.affiliateos.ai/help/networks/daily-caps-for-publishers.md): Limit how many installs or other base conversions one publisher can deliver on an offer each day, from Assign Offers. Works on offers that support it. - [Network API and postbacks](https://www.affiliateos.ai/help/networks/network-api-and-postbacks.md): Pull every offer your network can run with your network key, send users through each offer's tracking link and verify the postback we send when one converts. ## Developer docs - [API overview, hosts and authentication](https://www.affiliateos.ai/help/developers/api-overview-hosts-authentication.md): Which host each call goes to, which key each role uses and how to send it, and what a missing or wrong key returns. One page before any integration. - [Give your coding assistant our API reference](https://www.affiliateos.ai/help/developers/coding-assistant-api-reference.md): Paste the Markdown reference for your role into your coding assistant before you ask for code, so it builds on our real endpoints and fields. - [Errors and rate limits](https://www.affiliateos.ai/help/developers/errors-and-rate-limits.md): What each HTTP error from our API means, the exact messages for key problems, what to fix before retrying and how we retry the postbacks we send you. ## Troubleshooting - [Postback not firing or never arrives](https://www.affiliateos.ai/help/troubleshooting/postback-never-arrives.md): Usually there's no postback secret, so nothing is sent. Find the conversion in Flight Recorder, read its delivery status, then fix the cause it names. - [An install wasn't tracked](https://www.affiliateos.ai/help/troubleshooting/install-not-tracked.md): An install counts only once it's matched to a tap we recorded. Publishers check the user's link and ID; advertisers check the click ID came back. - [Conversions suddenly stopped](https://www.affiliateos.ai/help/troubleshooting/conversions-stopped.md): First ask whether every offer stopped or one. Every offer points to a key or postback change on your side; one offer is usually capped, paused or ended. - [A user says they weren't paid](https://www.affiliateos.ai/help/troubleshooting/user-not-paid.md): Look the user up by their ID in Flight Recorder. Each row shows whether we recorded the step, what it paid and whether your server got the postback. - [Offer capped or unavailable: what to check](https://www.affiliateos.ai/help/troubleshooting/offer-capped.md): A capped offer reopens on its own at the reset. Paused, ended and access-locked offers don't. How to tell which, and what your users see after a tap. - [Users are blocked or rejected](https://www.affiliateos.ai/help/troubleshooting/users-blocked.md): Blocked means we refused a tap before the store. Rejected means a user's conversions pay $0 for now. Where to see each, why it happens and what to do. - [Reconcile our numbers with yours, step by step](https://www.affiliateos.ai/help/troubleshooting/numbers-differ.md): Export our conversions and join them to your records on action_id, then work down this list to find the rows that differ, and why each one does. - [The wall shows no offers](https://www.affiliateos.ai/help/troubleshooting/wall-no-offers.md): The wall lists only offers that run on the player's platform and in their country. Check the platform and country you launch with, then your account's offers. ## Glossary - [Glossary](https://www.affiliateos.ai/glossary): 41 terms, one line each - [What is App Tracking Transparency?](https://www.affiliateos.ai/glossary/att): App Tracking Transparency is Apple's rule that iPhone apps must ask before tracking users across other companies' apps. What it means for installs and rewards. - [What is mobile attribution?](https://www.affiliateos.ai/glossary/attribution): Mobile attribution works out which click led to an install or in-app event. How matching works, what an attribution window is and what happens with no match. - [What is a click ID?](https://www.affiliateos.ai/glossary/click-id): A click ID is a unique ID for each tap on a tracking link, so a later install or event can be matched back to it. And how it differs from a sub ID. - [CPA meaning: what is cost per action?](https://www.affiliateos.ai/glossary/cpa): CPA means cost per action, what an advertiser pays for one defined action, such as a sign-up or a purchase. The formula, an example and how it differs from CPE. - [What is a CPA network?](https://www.affiliateos.ai/glossary/cpa-network): A CPA network connects advertisers who pay per action with publishers who send traffic. How one works, how it differs from an affiliate network, what to check. - [CPE meaning: cost per event or engagement](https://www.affiliateos.ai/glossary/cpe): CPE means cost per event, often called cost per engagement. How it differs from CPI, CPA and percent of sale, with one table and a worked example. - [CPI meaning: what is cost per install?](https://www.affiliateos.ai/glossary/cpi): CPI means cost per install, what an advertiser pays for each app install. The formula, a worked example and why no single CPI counts as a good one. - [CVR meaning: conversion rate](https://www.affiliateos.ai/glossary/cvr): CVR means conversion rate, the share of clicks that turn into conversions. The formula, a worked example and what to check when yours drops. - [EPC meaning: earnings per click explained](https://www.affiliateos.ai/glossary/epc): EPC means earnings per click, your total earnings divided by your clicks. The formula, a worked example and why no single EPC counts as a good one. - [What is incentivized traffic?](https://www.affiliateos.ai/glossary/incentivized): Incentivized traffic is users who finish an offer for a reward from the app they found it in. How it differs from non-incentivized traffic and what each suits. - [What is install fraud?](https://www.affiliateos.ai/glossary/install-fraud): Install fraud is fake or stolen installs that an advertiser ends up paying for. How device farms and click farms work and what catches them. - [What is the Play install referrer?](https://www.affiliateos.ai/glossary/install-referrer): The Play install referrer is a value Google Play hands an Android app after install, so the app can tell which link sent the user. How to read it. - [What is an MMP?](https://www.affiliateos.ai/glossary/mmp): An MMP, or mobile measurement partner, is the tool an app uses to decide which installs came from which source. What it does and how events get forwarded. - [What is an offerwall?](https://www.affiliateos.ai/glossary/offerwall): An offerwall is a screen in an app or site that lists offers a user can complete for a reward. How it works, who pays whom and what to check on iOS. - [What is a postback URL?](https://www.affiliateos.ai/glossary/postback): A postback URL is an address on your server that gets a request when a conversion happens. How it works, what it carries and how it differs from a pixel. - [What is S2S tracking?](https://www.affiliateos.ai/glossary/s2s-tracking): Server-to-server (S2S) tracking sends conversions from one server to another instead of a browser pixel. How it works, why it holds up and both directions. - [What is a sub ID?](https://www.affiliateos.ai/glossary/sub-id): A sub ID is your own value on a tracking link, usually your user's ID. It comes back on the postback, so you know whom to credit. How it works, with an example. - [What is a tracking link?](https://www.affiliateos.ai/glossary/tracking-link): A tracking link is the URL a user taps to start an offer. It records the click, carries your IDs and credits the conversion to you. How it works. - [What is user acquisition?](https://www.affiliateos.ai/glossary/user-acquisition): User acquisition is how an app pays to win new users, through ad networks, offerwalls and affiliates. How it works, what to measure and where each channel fits.