SplitGrid Integration Guide
Everything you need to integrate our offerwall, APIs, and S2S postback into your website or mobile app — in just a few minutes.
Before integrating, make sure you have a registered account on SplitGrid. An account is required to generate your API Key, Secret Key, and Bearer Token.
To integrate our offerwall, you first need to register your website. Once done, you will receive an API Key and a Secret Key required for all integrations.
Login to your SplitGrid account.
Click the Add New App button in the sidebar to register your first website or app.
Set your App Name, URL, and select your application platform type.
Configure your Currency Name (e.g. Points, Tokens, Coins), Currency Round (up to 2 decimals), and Exchange Rate (units earned per $1 USD).
Set your Postback URL. This endpoint will receive a call whenever a user completes an offer, allowing you to credit rewards automatically.
Once submitted, our team reviews and approves your app. Upon approval, you will automatically receive a detailed onboarding email containing your pre-filled HTML <iframe> placement snippet, API Key, Secret Key, and postback configuration details so you can start monetizing immediately!
Available vs. Pending Balance Tiers
To protect both SplitGrid and our publishing partners from upstream advertiser chargebacks, emulator farms, and VPN abuse, rewards are divided into two distinct balance tiers:
Micro-rewards under $1.00 USD, Paid-To-Click (PTC) ad views, shortlinks, faucets, and direct-link traffic are credited immediately to your Available Balance. These funds are ready for instant cashout once you reach the minimum withdrawal threshold.
High-value CPA, Survey, and Offerwall completions equal to or greater than $1.00 USD are placed into a temporary 7-day holding period. This maturation window ensures the conversion is validated upstream by advertisers.
Our offerwall is segmented, auto-translated, and fully responsive. It adapts to any screen size and serves targeted offers to your users. Before proceeding, make sure you have your API Key, Secret Key, and Bearer Token from your app's edit page.
Embed the offerwall via HTML iFrame or JavaScript popup — replace [API_KEY] and [USER_ID] with your actual values.
iFrame Embed (Recommended)
JavaScript (New Tab / Direct URL)
[USER_ID] dynamically with your member's unique database ID or username (e.g. in PHP: <?php echo $user_id; ?>). This parameter identifies which member completed the task so our server-to-server postback credits the correct account on your site.
Fetch PTC campaign data directly and render it with your own UI. Useful when you want a fully custom look and feel.
JSON Response
{
"success": true,
"data": [
{
"id": "12",
"title": "Crypto Faucet - Earn Free BTC",
"description": "Claim free satoshis every 5 minutes!",
"duration": "10",
"reward": "15.00",
"currency_name": "Coins",
"url": "https://splitgrid.net/iframe.php?api_key=[API_KEY]&sub_id=[USER_ID]&view=ptc_surf&ad_id=12"
}
]
}
Query active shortlink campaigns available for your user.
Fetch available sponsored read-article campaigns for user engagement.
Open the offerwall in Chrome or embed it in a WebView inside your Android app.
WebView myWebView = new WebView(activityContext);
setContentView(myWebView);
WebSettings webSettings = myWebView.getSettings();
webSettings.setJavaScriptEnabled(true);
myWebView.loadUrl("https://splitgrid.net/iframe.php?api_key=[API_KEY]&sub_id=[USER_ID]");
Open the offerwall in Safari or use WKWebView inside your iOS app.
import UIKit
import WebKit
class ViewController: UIViewController, WKUIDelegate {
var webView: WKWebView!
override func loadView() {
let webConfiguration = WKWebViewConfiguration()
webView = WKWebView(frame: .zero, configuration: webConfiguration)
webView.uiDelegate = self
view = webView
}
override func viewDidLoad() {
super.viewDidLoad()
let myURL = URL(string: "https://splitgrid.net/iframe.php?api_key=[API_KEY]&sub_id=[USER_ID]")
webView.load(URLRequest(url: myURL!))
}
}
Use the Linking API to open in the system browser, or embed with react-native-webview.
import { Linking } from 'react-native';
Linking.openURL('https://splitgrid.net/iframe.php?api_key=[API_KEY]&sub_id=[USER_ID]');
| Parameter | Description | Type |
|---|---|---|
| [API_KEY] | Unique API code provided when you registered your website | varchar(32) |
| [USER_ID] | Unique identifier of the user viewing the wall on your site | varchar(32) |
| [USER_IP] | IP address of the user (for API endpoints) | string |
| [BEARER_TOKEN] | Authorization token for API access | string |
A dependency-free, vanilla JavaScript SDK for building a fully custom offerwall UI on your own website. Every function returns raw data; there's no built-in HTML/CSS, so you have complete control over the look and feel.
<script src="https://splitgrid.net/sdk/SplitGrid-offerwall-sdk-v1.js"></script>
const wall = new SplitGridOfferwall({
apiKey: '[API_KEY]', // required
subId: '[USER_ID]', // required
pagination: { enabled: true, pageSize: 10 }
});
wall.getOffers('surveys').then(result => {
result.items.forEach(item => {
console.log(item.title, '+' + item.reward);
});
});
We provide ready-made integration guides for the most popular faucet scripts.
Step 1 — Open application/controllers/wh.php and add this before the last closing bracket }:
public function SplitGrid() {
$secret = "YOUR_SECRET_KEY"; // YOUR SECRET KEY
$userId = isset($_REQUEST['subId']) ? $this->db->escape_str($_REQUEST['subId']) : null;
$transactionId = isset($_REQUEST['transId']) ? $this->db->escape_str($_REQUEST['transId']) : null;
$reward = isset($_REQUEST['reward']) ? $this->db->escape_str($_REQUEST['reward']) : null;
$signature = isset($_REQUEST['signature']) ? $this->db->escape_str($_REQUEST['signature']) : null;
if (md5($userId . $transactionId . $reward . $secret) != $signature) {
echo "ERROR: Signature doesn't match"; return;
}
// ... complete processing code as per original documentation ...
echo "ok";
}
Step 2 — Open application/controllers/offerwall.php and add the iframe view.
Step 3 — Add a menu link in application/views/user_template/template.php.
🔗 Set your Postback URL in SplitGrid dashboard to: https://yourdomain.com/wh/SplitGrid
Integration for VieFaucet 4.4 follows the same steps as 4.3 with a minor difference in the notification helper function name (uses currencyDisplay() instead of currency()). Postback URL is the same: https://yourdomain.com/wh/SplitGrid
Create the file system/gateways/SplitGrid.php:
<?php
define('BASEPATH', true);
require('../init.php');
$secret = "YOUR_SECRET_KEY";
$userId = $_REQUEST['subId'] ?? null;
$transId = $_REQUEST['transId'] ?? null;
$reward = $_REQUEST['reward'] ?? null;
$signature = $_REQUEST['signature'] ?? null;
if (md5($userId . $transId . $reward . $secret) != $signature) {
echo "ERROR: Signature doesn't match"; exit;
}
// Credit user logic here
echo "ok";
📌 Currency must be set to credits. Postback URL: http://yourdomain.com/system/gateways/SplitGrid.php
Whenever a user completes an offer, SplitGrid sends an HTTP POST request to your Postback URL with all the information needed to credit your users automatically.
| Parameter | Description | Example |
|---|---|---|
| subId | Unique identifier of the user on your platform | user123 |
| transId | Unique transaction ID — use to prevent double-crediting | XX-12345678 |
| reward | Amount of virtual currency to credit | 1.25 |
| status | 1 = credit, 2 = chargeback | 1 |
| signature | MD5 hash for verification | 17b4e2a... |
Always verify the signature parameter to confirm the postback originates from SplitGrid servers. SplitGrid sends both algorithms so you can choose which one fits your backend:
signature):// Sort all received parameters alphabetically by key (excluding 'signature'), concatenate values separated by your secretKey:
ksort($params); // remove $params['signature'] first
$stringToSign = implode($secretKey, $params);
$expectedSig = hash('sha256', $stringToSign);
sig_md5 or macro {sig_md5} / {signature_md5}):$expectedMd5 = md5($subId . $transId . $reward . $secretKey);
You can find your Secret Key and Bearer Token in the My Apps section of your publisher dashboard.
Test Before Sending Live Traffic
You never need to guess whether your postback script is receiving parameters or verifying signatures accurately. SplitGrid includes a real-time Postback Tester tool directly in your publisher dashboard:
subId and reward amounts.When your postback script successfully credits the user, your server must respond with HTTP 200 and print:
OK
Any response other than "OK" (or a non-200 HTTP code) will cause the postback to be logged as failed and queued for automatic retry.
<?php
$secretKey = "YOUR_APP_SECRET_KEY";
$subId = $_REQUEST['subId'] ?? '';
$transId = $_REQUEST['transId'] ?? '';
$reward = $_REQUEST['reward'] ?? '';
$signature = $_REQUEST['signature'] ?? '';
// Validate signature
$expectedSig = md5($subId . $transId . $reward . $secretKey);
if ($signature !== $expectedSig) {
http_response_code(403);
exit("ERROR: Invalid Signature");
}
// TODO: Credit user in your database with $reward points/currency
// Always print OK on success
echo "OK";
SplitGrid offers 9 different advertising formats to reach your audience across a network of 5,000+ active publisher websites, faucets, and GPT platforms.
| Type | Billing Model | Best For | Min Budget |
|---|---|---|---|
| All-in-One (AIO) Packs | Multi-format bundle (PPC + Pop + Banner + Notif) | Maximum multi-channel reach | $1.00 (12 levels up to $10k) |
| PTC / Video | Per click (CPC) / Per view | Traffic, YouTube promotion | Per pack |
| Direct Link | Flat publisher reward / promo rotator | Publisher direct monetization | Platform Rotator |
| Shortlink | Reward × visits × tier multiplier | Link monetization | $0.10 |
| Task Ads | (Reward × limit) × 1.15 | Social actions, reviews | $0.0575 |
| Push Notification | $0.0001/view + $0.001/click | Broad awareness | $1.00 |
| PopUp | $0.0008 per unique visit | Landing pages | $1.00 |
| Banner | $0.0015 per unique click | Brand visibility | $1.00 |
| Sponsored | Flat rate (duration/placement) | Brand presence | $5.00+ |
| Social Promotions | Per engagement / action | Social reach & community | $1.00+ |
| Faucet Listing | $0.10 / day | Directory promotion & voting | $0.10 |
| CPA | Per confirmed action | Installs, registrations | $10.00 |
4 Ad Formats in 1 Campaign
AIO Packs give advertisers the best value by bundling PTC/PPC views (10s duration), Pop Ad clicks, Banner clicks, and Push Notification impressions into a single campaign order. Sub-campaigns are automatically created across all format engines and activated upon admin review.
10s guaranteed view
Targeted pop visits
All standard sizes
Global user alerts
Publisher Traffic & Rotator
Publishers can monetize raw traffic by sharing their unique direct link (https://splitgrid.net/promote/PUB_ID). Traffic is routed through platform rotator destinations with anti-bot, 24h IP uniqueness, and anti-iframe protection.
Guaranteed View Duration & Traffic
Paid-To-Click (PTC) campaigns guarantee active user focus for a chosen duration. The platform uses a real-time heartbeat to ensure users keep the tab open and active.
Referrer Header Spoofing
Advertisers can configure referrer headers (Google Organic, Twitter/X, or SplitGrid) so incoming clicks appear organic in analytics.
Multi-step Link Monetization
Shortlink ads require users to solve a multi-step gateway (captcha, countdown timer) before accessing the final destination. Perfect for monetizing faucet and content locker traffic.
// Pricing Calculation Formula:
Total Cost = User Reward × Desired Visits × Tier Multiplier
Minimum Budget: $0.10
Custom Action & Proof Review
Create custom micro-tasks such as app downloads, social follows, reviews, or signups. Users submit proof (text or screenshots) and advertisers review and approve them within a 48-hour window.
Total Campaign Cost = (Reward per task × Limit) × 1.15 (15% platform review & hosting fee).
Platform-wide Global Push Alerts
Notification ads appear as rich, clickable alert bars at the top of every platform page for active logged-in users. Includes icon, title, description, and direct target link.
Full-Page Landing Page Visits • 100% Fill Rate
Pop-under ads trigger unobtrusively in a background window when a visitor interacts with an approved publisher website. This provides maximum 100% full-page exposure for landing pages, faucet portals, and crypto offers.
Publisher Script Embed Tag
Place right before </body><script src="https://www.splitgrid.net/serve/popad.js" data-f="1" data-t="24" data-pid="YOUR_PUB_ID"></script>
Frequency Capping Parameters:
• data-f="1": How many times the popunder triggers per time period.
• data-t="24": The frequency time window in hours (e.g. 24 = once every 24 hours).
• data-pid: Your unique publisher ID.
Fixed Header & Footer Placements
Fixed duration sponsored links placed prominently across top traffic areas of SplitGrid. Priced on a flat daily/weekly rate starting at $5.00.
Directory Promotion & Community Voting
List your cryptocurrency faucet or reward platform on the public Faucet List directory (/faucet_list.php) and directly inside the Offerwall iframe.php Faucet tab. Gain real daily traffic and earn reputation through community voting.
/faucet_detail.php?id=X) with sponsor ad slots and social sharing.
The CPA (Cost Per Action) system lets advertisers run performance-based campaigns. Your balance is only charged when a real user completes a defined action — install, register, deposit, and so on. Campaigns are distributed automatically across publisher offerwalls on the network.
Create campaigns, set payouts, integrate S2S postback, pay only on confirmed conversions.
Approved CPA offers appear automatically in your offerwall. No manual setup needed.
Duplicate detection, IP allowlist, proxy detection, and postback-level geo validation.
Whenever a user completes an offer, your tracking system (or MMP) sends an HTTP GET request to our Postback URL with the information needed to credit the user automatically.
Step 1 — Include {click_id} in your Destination URL
Step 2 — S2S Postback Endpoint (Method A: Header Auth)
Step 2 — S2S Postback Endpoint (Method B: URL Auth for MMPs)