Integration

Get Started

Welcome to the KING-WALL documentation. An account is required to use any of our tools.


Add your Website

To be able to integrate our offerwall, first you have to add your website.
Once you have added your website you will have an API KEY and a SECRET KEY, that you will need to integrate our offerwall.

To register your website into our service, please follow these steps:

  1. Login to your KING-WALL account.
  2. You should now see the Publisher > Sites button at sidebar. Click this button to add your first website.
  3. Set your Website Name, Domain Name and application type (platform) and proceed to next step.
  4. Set your Currency Name in plural form (e.g. Points, Tokens, Coins...),
    Currency rewards as you will pay for your users.
  5. Set your Postback URL. Whenever a user completes an offer,
    we will make a call to this URL by sending all the information
    needed to help you to credit the virtual currency to your users.
  6. Done! You have add your website,
    one of our team members will review it and once it is approved
    you can continue with the integration process.
    You will find more informatons about postback integration in next chapters of this
    documentation.

Integration Offerwall

Our Offerwall enables users to benefit from visiting our website .

Before being able to integrate our offerwall,
you must register your website first.
Once you have registered your website you will have an
API KEY and a SECRET KEY,
that you will need in the following steps.

  1. Click on Publisher > Sites button on sidebar.
  2. From your websites list, you can get your API and Secret keys, anyway if you click Iframe
    button on any of your websites you will be able to get your full integration code of the offerwall.
    You just need to copy the code on your website.
Offerwall Code

    <iframe style="width:100%;height:800px;border:0;padding:0;margin:0;"scrolling="yes" frameborder="0" src="https://king-wall.com/index.php/wall/Public_key/USER_ID"></iframe>

                            
Replace [Public_key] with your website api key and [USER_ID] by the unique
identifier code of the user of your site who is viewing the wall.
Parameter Description Value
[Public_key] Unique API Code provided when you registered your website varchar(32)
[USER_ID] Unique identifier code of the user of your site varchar(32)

Postback Notifications

Whenever a user complete an offer,
we will make a call to the Postback URL
that you indicated in your
app attaching all the information that you will need to credit your users.

Parameter Description Example
subId This is the unique identifier code of the user who completed action on your platform. user123
transId Unique identification code of the transaction made by your user. 12345678
type It will the type of offer wall that site had completed. surf | promo
rewards The amount of your virtual currency to be credited to your user
we will send you the
total of rewards and you then cut your fee .
1.25
signature MD5 hash that can be used to verify that the call has been made from our servers. 17b4e2a70d6efe9796dd4c5507a9f9ab
Postback Security

You should verify the signature received in the postback
to ensure that the call comes from our servers.
Signature parameter should match MD5 of
subId
transactionId
rewards
secret key.
You can find your Secret Key of your website in Publisher > Sites section.

The formula to be checked is as follows:

                                
    <?php
      $secret = ""; // Get your secret key from BitsWall

      $subId = isset($_REQUEST['subId']) ? $_REQUEST['subId'] : null;
      $transId = isset($_REQUEST['transId']) ? $_REQUEST['transId'] : null;
      $type = isset($_REQUEST['type']) ? $_REQUEST['type'] : null;
      $rewards = isset($_REQUEST['reward']) ? $_REQUEST['rewards'] : null;
      $signature = isset($_REQUEST['signature']) ? $_REQUEST['signature'] : null;

      // Validate Signature
      if(md5($subId.$transId.$reward.$secret) != $signature)
      {
       echo "ERROR: Signature doesn't match";
       return;
      }
    ?>
                                    
                                
Responding to Postback

Our servers will expect your website to respond with "ok".
If your postback doesn't return "ok"
as response, postback will be marked as failed (even if postback was successfully called) and you
would be able to resend it manually from our website.

Postback Example

The following example is not a working one but should be enough to
understand how you should implement your postback in your website.

                                    
    <?php
      $secret = ""; // Get your secret key from BitsWall
      $userId = isset($_REQUEST['subId']) ? $_REQUEST['subId'] : null;
      $transId = isset($_REQUEST['transId']) ? $_REQUEST['transId'] : null;
      $type = isset($_REQUEST['type']) ? $_REQUEST['type'] : null;
      $rewards = isset($_REQUEST['rewards']) ? $_REQUEST['reward'] : null;
      $signature = isset($_REQUEST['signature']) ? $_REQUEST['signature'] : null;

      // validate signature
      if(md5($userId.$transId.$reward.$secret) != $signature)
      {
        echo "ERROR: Signature doesn't match";
        return;
      }

       // Check if the transaction is new, use $transId to valiate it
      if(isNewTransaction($transId))
      {
        // Transaction is new, reward your user
        processTransaction($userId, $reward, $transId);
      }

      echo "ok"; // Important!
    ?>