Publisher Account Documentation

« Developer Documentation Index

Table Of Contents

Publisher Account Documentation

  1. 1. srpoints.com Publisher Account
  2. 2. Offerwall iframe
  3. 3. Postbacks
  4. 4. Advanced Features
  5. 5. Blocking Offers
  6. 6. Earnings API
  7. 7. Publisher Reporting Console Definitions

Publisher Account Documentation


1. srpoints.com Publisher Account:

A publisher account is required to configure app parameters and currency ratios, place the SuperRewards iframe within your application or website, and respond to postbacks from SuperRewards that let you know when your users have completed offers or made payments.

If you have not already done so, complete the following tasks:

  1. 1. Register for a publisher account at http://www.srpoints.com/signup.
  2. 2. Log in and create a new application for your account. Click on "ADD APP" from the menu.
      • Platform: Select the website where your application appears (if you are using SuperRewards on a standalone website or game, select "Other" and enter your site's name). - Selecting the correct the platform will greatly improve the ad targeting.
      • Application Name: Enter a name for your application. This is used when users interact with our customer support pages, as well as your reports on srpoints.com. - The name of your application is publicly viewable so PLEASE make sure you provide the full name of the application (no initials or internal references).
      • Application URL: The full URL path to your application
      • Your Currency Name (plural): Enter the name of your application's points or currency. Then enter the conversion rate you want us to use when awarding your game's points to your users.
      • SuperRewards Points: By default, 100 SuperRewards points = 100 of your currency, where 100 SuperRewards point is tied as closely as possible to $1 US. You can change this conversion rate later if you are unsure of the optimal value to use for your application.
  3. 3. Set up your app's postback URL.
      • postback url: The url that SuperRewards can ping every time a user has completed an offer or purchase. On your own server, you will need to use these postbacks to reward your users with their points. We will explain the postbacks later in this document.

2. Offerwall iframe

    • This iframe code can be placed within the pages of your application or web site. A full description of the SuperRewards iframe URL can be found in the URL Parameters section later in this document.
    • "h" parameter: The "h" parameter is unique for each application and is used to identify your specific app.
    • "uid" parameter: The "uid" parameter is the unique user id of current user and must be provided by you. Include the numeric id you use to uniquely identify each of your users. For apps on the social network platforms, you must use the social network's user id or the social networks 3rd party user id.
Now drive your users to the page where you place the iframe code so your users can complete offers and buy points in your application. The iframe page should look similar to this:

3. Postbacks

Postback Parameters

Each time a user has completed a payment or offer we will send your server a postback. On this postback we send the following query arguments:

    • id:a unique identifier for this transaction
    • new:points user earned by completing offer
    • total:total number of points accumulated by this user on your application
    • uid:your site's user uid (facebook, myspace, custom, etc)
    • oid:SuperRewards offer identifier
    • sig:security hash used to verify the authenticity of the postback. To verify the postback, you should calculate an md5 hash as follows and then compare it to the sig parameter. These strings should match, otherwise you should not allow the postback.
      • You can get your app's secret key from the App Edit page on srpoints.com.
      • sig = md5(id:new:uid:appsecretkey)
      • In php, this would be:
        $sig = md5($_REQUEST['id'] . ':' . $_REQUEST['new'] . ':' . $_REQUEST['uid'] . ':' . $SECRET);
  1. You must reply with just 1 digit (no xml, no tags, just a 1 byte reply):
    1: if you updated your system successfully
    0: if there is a problem on your end (we'll wait and resend the postback again)
  2. If the postback to your server fails for any reason or you respond with a 0, we will retry the postback again a short time later. We will continue to retry the postback 31 times over the span of 24 hours (with longer delays between each attempt). After the 31st attempt, if the postback failure remains, the postback is placed on hold at srpoints.com under the Postback tab. From there you can choose to delete the errored postback or resend it. For additional assistance, please contact your Account Manager.
  3. Example postback:
    http://www.domain.com/postback.cgi?id=987654321&new=25&total=1000&uid=1234&oid=123
  4. IMPORTANT
    • 'id' is unique per transaction, the postback resends would have the same 'id'.
    • You should use at least two tables for your users and their points. One table should be your user's table with at least two columns: your user's uid and your user's point total. The other table should be a running log of all transactions with their "id" value. Your script should check to see if the 'id' value is new by comparing it to the 'id' values already in your database. If the 'id' value is new, then add the 'new' value to your user's point total.
    • 3. There are cases that the total you have recorded, plus the "new" value on the postback, is less than the postback's "total" value. It is not unusual because we send postbacks in batches, and the user may have completed multiple offers during that period. You should award the points.
    • BE PREPARED FOR MULTIPLE HITS FOR THE SAME POSTBACK STRING
    • In case of duplicate postbacks, please respond with 1 so our system knows that you've processed it, so that our system does not retry. However, do not re-award the points for duplicate postbacks.

Testing Postbacks

You can test postbacks by simulating a transaction to yourself. On the App Edit page, you may add your user id to the Admin User Ids section. After adding your user id, you may visit your offerwall. At the top of the offerwall you will see a new "[ADMIN USER TEST]" box where you can award a transaction to yourself.

You may add as many user ids to the Admin User Ids list as you need, separate each User Id with a comma.

Test postbacks sent to your server will the offer id set to test offer #7212.

Postback Error Management Tool

With our postback error management tool, you're able to log into srpoints.com and check how many postbacks did not go through properly, both across all your applications and individually. You can see which user the postback belongs to, the postback url, and the response. You can reschedule the postbacks for a resend, or choose to delete them.


4. Advanced Features

Custom Postback URL parameters

If you would like to pass any custom parameters through to the SuperRewards iframe and have them included in the postback sent back to you, you may include any number of parameters on the iframe src URL that start with "custom_". So, for example, your may append the following parameters to your iframe src URL like this:

http://www.superrewards-offers.com/super/offers?h=hxkbbt.753768730755&uid=123456&

custom_appname=myapp&custom_info=4432

Then, if the user completes any offers when viewing that iframe, those two custom parameters will be included in your postback as follows:

http://www.domain.com/postback.cgi?new=25&total=1000&uid=123456&oid=123&custom_appname=myapp&custom_info=4432

Custom CSS

In the srpoints.com site, you have the ability to adjust button styles and color palettes using our custom CSS UI.

Payout Min and Max

Using the payout_min and payout_max parameters you can constrain the dollar values of offers shown on the iframe. For security purposes, both of these parameters require special authentication.

To set either payout min or payout max in your iframe url, you must first enable payout control on spoints.com. For more on the specific parameters necessary, see the "˜URL Parameters"™ section below.

Direct Pay Ratio and Amount Scaling

Using the ratios page on srpoints.com, you can adjust the point payout ratios and payout amounts for your direct payment options. Developers often increase the payout ratio values on higher payout amounts to provide incentive for users to complete larger payments.

URL Parameters

There are a number of optional URL parameters that can customize your Super Rewards integration:

    • h (required): the app's identifier
    • uid (required): the unique user id. It is important not to cache the XML feed and use it for multiple users "“ the offers returned for each uid are different and optimized for each uid.
    • gender (optional): Male or Female. Used for improved demographic targeting.
    • age (optional): numeric value (age in years). Used for improved demographic targeting.
    • xml (optional): 0 or 1. 1 turns the normal offers page into an xml response
    • ip (required if using xml option): the IP address of the user so we can do location-based filtering on the offers presented to the user. It is critical that the offers shown to each user are filtered to only show those offers available to their country or location.
    • iphone (optional): lets us know this request will be presented on the iphone so we can filter down to the most appropriate offers for the phone
    • page (optional): 0 - x numeric value to page through offers
    • hoffers=1 (optional): Hides all offers.
    • hdpay=1 (optional): Hides all Direct Payment.
    • mode (optional): defaults to "all". may be set to "all", "free", "paid", or "mobile" to change the type of offers returned
    • payout_min (optional): minimum dollar amount for offers served. Requirements: Payout control must be activated on srpoints.com and a "˜min_srt"™ parameter must appended in conjunction. [see below]
    • min_srt (optional): Used as an authentication parameter for the "˜payout_min"™ parameter above. This value should be an md5 hash of the "˜payout_min"™ parameter and your application"™s secret key (from srpoints.com).
    • payout_max (optional): maximum dollar amount for offers served. Requirements: Payout control must be activated on srpoints.com and a "˜max_srt"™ parameter must appended in conjunction. [see below]
    • max_srt (optional): Used as an authentication parameter for the "˜payout_max"™ parameter above. This value should be an md5 hash of the "˜payout_min"™ parameter and your application"™s secret key (from srpoints.com)
    • page_points (optional): Hardcoded point value for all offers on your offer wall.
    • pp_srt (optional): Used as an authentication parameter for the "˜page_points"™ parameter above. This value should be an md5 hash of the "˜page_points"™ parameter and your application"™s secret key (from srpoints.com)
    • vc (optional): Custom name for your currency. Defaults to the currency name setting on srpoints.com. As an example, this parameter can be used to rename your "˜coins"™ to "˜tokens"™ for a cohort of your userbase.
    • olfixed (optional): When olfixed is 1, modal overlays (like direct payment options) are positioned in relationship to the document, so that when the page is scrolled up or down, the overlay moves along with the document. If olfixed is 0 (the default), the overlay remains in one place while the document is scrolled up or down behind it.

5. Blocking Offers

You may block any offers that you do not want appearing on your application's iframe or XML feed. Go to the "Apps" page on your srpoints.com account and click "Edit: Offers" on any of your applications. You can then search for any of the offers by name and select offers that you want on your block list. You may block any number of offers. We also have a Offer Management Console, which we can activate upon request.


6. Earnings API

You may fetch your earnings data by any date range up to a month. You can either choose to get aggregate data across all your apps by the call 'fetch', or just fetch by an individual application using the call 'fetch_by_app' . The procedures is listed as follows:

1) Log into srpoints.com and you'll see your API Key on the summary page, and also a "salt" value on your Account page.

Fetch the aggregate earnings across your apps over a date range by hitting this URL:

http://www.superrewards-offers.com/publisher_api/fetch?api_key=[API_KEY]&hash=[HASH]&start=[Date]&end=[Date]

  1. <API_KEY> is the one you'll find on srpoints
  2. <Date> is in the format of YYYY-MM-DD. e.g. (2009-06-25)
  3. <HASH> is the md5 hash of the concatenated string: email + salt + start + end
    • "email" is the email address that you registered with on srpoints.com
    • "salt" is the value from your Account page
    • "start" and "end" are the dates you specified
    • The '+' here just means concatenated, there is nothing between the strings.

You will get an XML response which contains all your applications app_ids, your earnings number for each day, and the aggregate earnings over the date range.


Fetch the aggregate earnings of each individual app over a date range by hitting this URL:

http://www.superrewards-offers.com/publisher_api/fetch_by_app?api_key=<API_KEY>&hash=<HASH>&app_id=<app_id>&start=<Date>&end=<Date>

  1. For fetch_by_app, <HASH> is the md5 hash of the concatenated string: email + salt+ app_id + start + end

7. Publisher Reporting Console Definitions

    • Earnings: Daily Net Publisher Earnings for each of your Application(s)
    • Unique Users: # of unique individuals that have viewed the Super Rewards offer wall per day
    • Impressions: # of clicks to the Super Rewards offer wall
    • CPM (Cost Per 1000): Average amount of revenue publisher has earned/1000 users (can you show the specific math formula using the data example below)
      Formula: (Earnings / Unique Users) x 1000 = CPM
    • Clicks: # of clicks from our offer wall to our ad offers
    • CTR (Click-Thru-Rate): The percentage of clicks from the Super Rewards offer wall to an advertising offer
      Formula: Clicks / Unique Users = CTR
    • Leads: Total # of completed ad offers
    • EPL (Earnings Per Lead): Average amount of revenue earned per completed offer
      Formula: Earning / Leads = EPL
    • EPC (Earnings Per Click): Average amount of revenue earned per click-thru to an offer
      Formula: Earnings / Clicks = EPC
    • Top 10 Offers: A list of the top 10 most successful offers within your specific application for that specific reporting time period.
    • Top 10 Countries by Impression: A list of the top 10 countries by number of unique clicks for the specific reporting time period to the Super Rewards offer wall based on the IP address of the  visitor.
    • Top 10 Countries by Leads: A list of the of top 10 countries to your specific application based on the IP address of the unique users completing ad offers.