VIP Panel & Topup
Menu Navigasi
REST API V2 SPECIFICATION LIVE & SANDBOX READY

Dokumentasi API Terintegrasi

Integrasikan ribuan produk SMM Panel, Topup Game, PPOB & Pulsa, serta Akun Premium ke website, aplikasi, bot Telegram, atau backend Anda secara otomatis, cepat, dan aman.

BASE ENDPOINT URL
REST API V2
HTTP POST
https://hellogame.my.id/api/v2
HMAC-SHA256 & Whitelist IP
Keamanan tanda tangan digital berlapis & otentikasi IP
Dukungan Sandbox Tester
Uji transaksi simulasi kapan saja tanpa potong saldo
NAVIGASI ENDPOINT

Autentikasi & Format Standar REST API V2

API ini dirancang untuk memudahkan developer menghubungkan toko online atau bot mereka. Semua request dikirimkan dengan metode POST menggunakan format data JSON atau form-data.

Mendapatkan API Key:
Setiap pengguna terdaftar secara otomatis mendapatkan Production Key (transaksi asli) dan Sandbox Key (simulasi tanpa potong saldo) yang dapat dilihat di menu API & Integrasi pada Dashboard Member.
Metode Pengiriman Kunci API:
LokasiNama Header / FieldContoh Nilai
Header (Direkomendasikan)AuthorizationBearer v2_live_abc1234567890xyz...
Header AlternatifX-API-KEYv2_live_abc1234567890xyz...
Body Parameterapi_keyv2_live_abc1234567890xyz...
API User ID (Header / Body)X-API-ID / api_id101 (ID Akun Pengguna API Anda)
API Secret (Header / Body)X-API-SECRET / api_secretSEC-9622c43747... (Kunci rahasia API untuk otorisasi keamanan ganda)
Standar Format Respons:
{
  "status": true,
  "mode": "production",
  "message": "Deskripsi pesan status",
  "data": { },
  "timestamp": "2026-10-05T23:45:00+08:00"
}
POSThttps://hellogame.my.id/api/v2/profile

Cek Profil & Saldo Akun

Mengambil data profil akun, tier, sisa saldo utama, saldo spesifik layanan, dan poin reward.

Parameter Request:
ParameterTipeKeterangan
api_idWajib jika tanpa HeaderAPI User ID akun Anda (didapatkan di profil developer).
api_keyWajib jika tanpa HeaderKunci API akun Anda (Production atau Sandbox).
api_secretRekomendasiKunci rahasia API akun Anda untuk otorisasi keamanan ganda transaksi.
curl --location 'https://hellogame.my.id/api/v2/profile' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer YOUR_API_KEY' \
--data '{
    "api_key": "YOUR_API_KEY"
}'
<?php

$curl = curl_init();

$payload = {
    "api_key": "YOUR_API_KEY"
};

curl_setopt_array($curl, array(
    CURLOPT_URL => 'https://hellogame.my.id/api/v2/profile',
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_ENCODING => '',
    CURLOPT_MAXREDIRS => 10,
    CURLOPT_TIMEOUT => 30,
    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
    CURLOPT_CUSTOMREQUEST => 'POST',
    CURLOPT_POSTFIELDS => json_encode($payload),
    CURLOPT_HTTPHEADER => array(
        'Content-Type: application/json',
        'Authorization: Bearer YOUR_API_KEY'
    ),
));

$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);

if ($err) {
    echo "cURL Error #:" . $err;
} else {
    $result = json_decode($response, true);
    print_r($result);
}
import requests
import json

url = "https://hellogame.my.id/api/v2/profile"
payload = {
    "api_key": "YOUR_API_KEY"
}

headers = {
    'Content-Type': 'application/json',
    'Authorization': 'Bearer YOUR_API_KEY'
}

response = requests.post(url, headers=headers, json=payload)
print(response.status_code)
print(response.json())
const axios = require('axios');

const payload = {
    "api_key": "YOUR_API_KEY"
};

const config = {
    method: 'post',
    url: 'https://hellogame.my.id/api/v2/profile',
    headers: { 
        'Content-Type': 'application/json', 
        'Authorization': 'Bearer YOUR_API_KEY'
    },
    data: payload
};

axios(config)
    .then(function (response) {
        console.log(JSON.stringify(response.data, null, 2));
    })
    .catch(function (error) {
        console.log(error.response ? error.response.data : error.message);
    });
{
    "status": true,
    "mode": "production",
    "message": "Profil dan saldo akun berhasil diambil.",
    "data": {
        "user_id": 101,
        "username": "developer_reseller",
        "name": "John Reseller",
        "role": "member",
        "tier": "Gold",
        "balance": {
            "main": 500000,
            "points": 1250
        },
        "ip_whitelist": [
            "103.150.12.34"
        ],
        "webhook_configured": true
    },
    "timestamp": "2026-11-06T07:33:34+00:00"
}
POSThttps://hellogame.my.id/api/v2/services

Daftar Layanan & Harga (Pricelist)

Mengambil seluruh layanan yang tersedia beserta harga khusus role akun Anda, min/max pesanan, dan status stok.

Parameter Request:
ParameterTipeWajibKeterangan
api_idstringWajib jika tanpa HeaderAPI User ID akun Anda (didapatkan di profil developer).
api_keystringWajib jika tanpa HeaderKunci API akun Anda (Production atau Sandbox).
api_secretstringRekomendasiKunci rahasia API akun Anda untuk otorisasi keamanan ganda transaksi.
typestringOpsionalFilter tipe: all, smm, game, ppob, app
categorystringOpsionalFilter kategori nama.
searchstringOpsionalKata kunci pencarian nama produk.
curl --location 'https://hellogame.my.id/api/v2/services' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer YOUR_API_KEY' \
--data '{
    "type": "all"
}'
<?php

$curl = curl_init();

$payload = {
    "type": "all"
};

curl_setopt_array($curl, array(
    CURLOPT_URL => 'https://hellogame.my.id/api/v2/services',
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_ENCODING => '',
    CURLOPT_MAXREDIRS => 10,
    CURLOPT_TIMEOUT => 30,
    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
    CURLOPT_CUSTOMREQUEST => 'POST',
    CURLOPT_POSTFIELDS => json_encode($payload),
    CURLOPT_HTTPHEADER => array(
        'Content-Type: application/json',
        'Authorization: Bearer YOUR_API_KEY'
    ),
));

$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);

if ($err) {
    echo "cURL Error #:" . $err;
} else {
    $result = json_decode($response, true);
    print_r($result);
}
import requests
import json

url = "https://hellogame.my.id/api/v2/services"
payload = {
    "type": "all"
}

headers = {
    'Content-Type': 'application/json',
    'Authorization': 'Bearer YOUR_API_KEY'
}

response = requests.post(url, headers=headers, json=payload)
print(response.status_code)
print(response.json())
const axios = require('axios');

const payload = {
    "type": "all"
};

const config = {
    method: 'post',
    url: 'https://hellogame.my.id/api/v2/services',
    headers: { 
        'Content-Type': 'application/json', 
        'Authorization': 'Bearer YOUR_API_KEY'
    },
    data: payload
};

axios(config)
    .then(function (response) {
        console.log(JSON.stringify(response.data, null, 2));
    })
    .catch(function (error) {
        console.log(error.response ? error.response.data : error.message);
    });
{
    "status": true,
    "mode": "production",
    "message": "Daftar layanan berhasil diambil.",
    "data": {
        "total_services": 1500,
        "services": [
            {
                "id": 1,
                "type": "smm",
                "name": "Instagram Likes Real HQ",
                "category": "Instagram Likes",
                "price": 4500,
                "min": 50,
                "max": 20000,
                "status": "available"
            },
            {
                "id": 10,
                "type": "game",
                "name": "86 Diamonds Mobile Legends",
                "category": "Mobile Legends",
                "price": 19500,
                "status": "available"
            }
        ]
    },
    "timestamp": "2026-11-06T07:33:34+00:00"
}
POSThttps://hellogame.my.id/api/v2/order

Order Layanan SMM Panel

Membuat pesanan followers, likes, views, subscribers sosial media.

Perbedaan trx_id vs ref_id:
• trx_id / order_id: ID transaksi resmi dari sistem kami yang dipakai untuk cek status (/status) & komplain.
• ref_id: ID referensi eksternal dari sistem Anda (misal nomor invoice klien). Kami simpan & kembalikan di respon serta Webhook agar database Anda langsung sinkron.
Parameter Request SMM (Umum):
ParameterTipeWajibKeterangan
api_idstringWajib jika tanpa HeaderAPI User ID akun Anda (didapatkan di profil developer).
api_keystringWajib jika tanpa HeaderKunci API akun Anda (Production atau Sandbox).
api_secretstringRekomendasiKunci rahasia API akun Anda untuk otorisasi keamanan ganda transaksi.
typestringWajibIsi smm
service_idinteger/stringWajibID Layanan SMM resmi (diambil dari endpoint /services).
service_typestringOpsionalTipe layanan SMM sesuai spesifikasi (Default, Package, Custom Comments, Mentions, SEO, dll).
targetstringWajibTarget link atau username akun sosial media tujuan.
quantityintegerKondisionalJumlah pesanan (Wajib untuk tipe Default, Mentions, SEO, Poll, dll. Tidak diperlukan untuk Package/Comments).
pinstringWajib (Produksi)PIN Transaksi 6 digit akun Anda untuk otorisasi keamanan transaksi API.
ref_idstringOpsionalNomor referensi unik pesanan dari sistem Anda (external invoice).
Panduan Lengkap Parameter Berdasarkan Tipe Layanan SMM (17 Tipe)
17 TIPE LAYANAN
Tipe LayananParameter Tambahan WajibPerhitungan Quantity & Total
Default Standardtarget, quantity
Opsional Dripfeed: runs (int), interval (int menit)
Sesuai input quantity
Package Paket TetaptargetQuantity otomatis = 1, harga tetap flat (tidak dikali quantity)
Custom Commentstarget, comments (teks komentar per baris \n)Quantity otomatis = jumlah baris komentar pada parameter comments
Custom Comments Packagetarget, comments (teks komentar per baris \n)Harga flat per paket
Mentionstarget, quantity, usernames (daftar username target)Sesuai input quantity
Mentions with Hashtagstarget, quantity, usernames, hashtags (contoh: #promo #diskon)Sesuai input quantity
Mentions Custom Listtarget, usernames (teks username per baris \n)Quantity otomatis = jumlah baris username pada parameter usernames
Mentions Hashtagtarget, quantity, hashtag (1 hashtag tanpa spasi, contoh: #giveaway)Sesuai input quantity
Mentions User Followerstarget, quantity, username (akun sumber yang followers-nya ingin di-mention)Sesuai input quantity
Mentions Media Likerstarget, quantity, media (URL postingan yang likers-nya ingin di-mention)Sesuai input quantity
Comment Likestarget, quantity, username (username pemilik komentar target)Sesuai input quantity
Poll Voting Polingtarget, quantity, answer_number (nomor pilihan voting, misal: 1, 2, dll)Sesuai input quantity
Comment Repliestarget, username (pembuat komentar), comments (balasan per baris \n)Quantity otomatis = jumlah baris komentar balasan
Invites from Groupstarget, quantity, groups (link / username grup sumber undangan)Sesuai input quantity
Subscriptionstarget (username), min (int), max (int), posts (int), delay (int menit)Dikelola otomatis per postingan baru
Web Traffictarget (URL Website), quantity, keywords (opsional)Sesuai input quantity
SEO Backlinkstarget (URL Website), quantity, keywords (kata kunci target)Sesuai input quantity
curl --location 'https://hellogame.my.id/api/v2/order' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer YOUR_API_KEY' \
--data '{
    "type": "smm",
    "service_id": 1,
    "target": "https://instagram.com/myaccount",
    "quantity": 1000,
    "ref_id": "SMM-ORDER-1234"
}'
<?php

$curl = curl_init();

$payload = {
    "type": "smm",
    "service_id": 1,
    "target": "https://instagram.com/myaccount",
    "quantity": 1000,
    "ref_id": "SMM-ORDER-1234"
};

curl_setopt_array($curl, array(
    CURLOPT_URL => 'https://hellogame.my.id/api/v2/order',
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_ENCODING => '',
    CURLOPT_MAXREDIRS => 10,
    CURLOPT_TIMEOUT => 30,
    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
    CURLOPT_CUSTOMREQUEST => 'POST',
    CURLOPT_POSTFIELDS => json_encode($payload),
    CURLOPT_HTTPHEADER => array(
        'Content-Type: application/json',
        'Authorization: Bearer YOUR_API_KEY'
    ),
));

$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);

if ($err) {
    echo "cURL Error #:" . $err;
} else {
    $result = json_decode($response, true);
    print_r($result);
}
import requests
import json

url = "https://hellogame.my.id/api/v2/order"
payload = {
    "type": "smm",
    "service_id": 1,
    "target": "https://instagram.com/myaccount",
    "quantity": 1000,
    "ref_id": "SMM-ORDER-1234"
}

headers = {
    'Content-Type': 'application/json',
    'Authorization': 'Bearer YOUR_API_KEY'
}

response = requests.post(url, headers=headers, json=payload)
print(response.status_code)
print(response.json())
const axios = require('axios');

const payload = {
    "type": "smm",
    "service_id": 1,
    "target": "https://instagram.com/myaccount",
    "quantity": 1000,
    "ref_id": "SMM-ORDER-1234"
};

const config = {
    method: 'post',
    url: 'https://hellogame.my.id/api/v2/order',
    headers: { 
        'Content-Type': 'application/json', 
        'Authorization': 'Bearer YOUR_API_KEY'
    },
    data: payload
};

axios(config)
    .then(function (response) {
        console.log(JSON.stringify(response.data, null, 2));
    })
    .catch(function (error) {
        console.log(error.response ? error.response.data : error.message);
    });
{
    "status": true,
    "mode": "production",
    "message": "Pesanan SMM berhasil dibuat.",
    "data": {
        "order_id": 88120,
        "trx_id": "SMM-20261005-9921",
        "ref_id": "SMM-ORDER-1234",
        "service_name": "Instagram Likes Real HQ",
        "target": "https://instagram.com/myaccount",
        "quantity": 1000,
        "price": 4500,
        "status": "pending",
        "remaining_balance": 495500
    },
    "timestamp": "2026-11-06T07:33:34+00:00"
}
POSThttps://hellogame.my.id/api/v2/order

Order Topup Game

Membuat pesanan diamond MLBB, Free Fire, PUBG UC, Valorant Points, Genshin Crystal, dll.

Perbedaan trx_id vs ref_id:
• trx_id / order_id: ID transaksi resmi dari sistem kami yang dipakai untuk cek status (/status) & komplain.
• ref_id: ID referensi eksternal dari sistem Anda (misal nomor invoice klien). Kami simpan & kembalikan di respon serta Webhook agar database Anda langsung sinkron.
Parameter Request Game:
ParameterTipeWajibKeterangan
api_idstringWajib jika tanpa HeaderAPI User ID akun Anda (didapatkan di profil developer).
api_keystringWajib jika tanpa HeaderKunci API akun Anda (Production atau Sandbox).
api_secretstringRekomendasiKunci rahasia API akun Anda untuk otorisasi keamanan ganda transaksi.
typestringWajibIsi game
service_idintegerWajibID Layanan Game resmi
targetstringWajibUser ID Game tujuan
zone_idstringKondisionalZone ID / Server Game (jika game membutuhkannya)
ref_idstringOpsionalNomor invoice referensi unik dari sistem Anda
curl --location 'https://hellogame.my.id/api/v2/order' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer YOUR_API_KEY' \
--data '{
    "type": "game",
    "service_id": 10,
    "target": "12345678",
    "zone_id": "2001",
    "ref_id": "GAME-ORDER-1234"
}'
<?php

$curl = curl_init();

$payload = {
    "type": "game",
    "service_id": 10,
    "target": "12345678",
    "zone_id": "2001",
    "ref_id": "GAME-ORDER-1234"
};

curl_setopt_array($curl, array(
    CURLOPT_URL => 'https://hellogame.my.id/api/v2/order',
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_ENCODING => '',
    CURLOPT_MAXREDIRS => 10,
    CURLOPT_TIMEOUT => 30,
    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
    CURLOPT_CUSTOMREQUEST => 'POST',
    CURLOPT_POSTFIELDS => json_encode($payload),
    CURLOPT_HTTPHEADER => array(
        'Content-Type: application/json',
        'Authorization: Bearer YOUR_API_KEY'
    ),
));

$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);

if ($err) {
    echo "cURL Error #:" . $err;
} else {
    $result = json_decode($response, true);
    print_r($result);
}
import requests
import json

url = "https://hellogame.my.id/api/v2/order"
payload = {
    "type": "game",
    "service_id": 10,
    "target": "12345678",
    "zone_id": "2001",
    "ref_id": "GAME-ORDER-1234"
}

headers = {
    'Content-Type': 'application/json',
    'Authorization': 'Bearer YOUR_API_KEY'
}

response = requests.post(url, headers=headers, json=payload)
print(response.status_code)
print(response.json())
const axios = require('axios');

const payload = {
    "type": "game",
    "service_id": 10,
    "target": "12345678",
    "zone_id": "2001",
    "ref_id": "GAME-ORDER-1234"
};

const config = {
    method: 'post',
    url: 'https://hellogame.my.id/api/v2/order',
    headers: { 
        'Content-Type': 'application/json', 
        'Authorization': 'Bearer YOUR_API_KEY'
    },
    data: payload
};

axios(config)
    .then(function (response) {
        console.log(JSON.stringify(response.data, null, 2));
    })
    .catch(function (error) {
        console.log(error.response ? error.response.data : error.message);
    });
{
    "status": true,
    "mode": "production",
    "message": "Pesanan Topup Game berhasil diproses.",
    "data": {
        "order_id": 90214,
        "trx_id": "INV-GM-20261005-7712",
        "ref_id": "GAME-ORDER-1234",
        "service_id": 10,
        "target": "12345678 (2001)",
        "price": 19500,
        "status": "processing",
        "remaining_balance": 480500
    },
    "timestamp": "2026-11-06T07:33:34+00:00"
}
POSThttps://hellogame.my.id/api/v2/order

Order PPOB, Pulsa & Token PLN

Membuat pesanan pulsa reguler, kuota internet, token PLN, e-money otomatis.

Perbedaan trx_id vs ref_id:
• trx_id / order_id: ID transaksi resmi dari sistem kami yang dipakai untuk cek status (/status) & komplain.
• ref_id: ID referensi eksternal dari sistem Anda (misal nomor invoice klien). Kami simpan & kembalikan di respon serta Webhook agar database Anda langsung sinkron.
Parameter Request PPOB:
ParameterTipeWajibKeterangan
api_idstringWajib jika tanpa HeaderAPI User ID akun Anda (didapatkan di profil developer).
api_keystringWajib jika tanpa HeaderKunci API akun Anda (Production atau Sandbox).
api_secretstringRekomendasiKunci rahasia API akun Anda untuk otorisasi keamanan ganda transaksi.
typestringWajibIsi ppob
service_idintegerWajibID Layanan PPOB resmi
targetstringWajibNomor HP / No Meter PLN
ref_idstringOpsionalNomor invoice referensi unik dari sistem Anda
curl --location 'https://hellogame.my.id/api/v2/order' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer YOUR_API_KEY' \
--data '{
    "type": "ppob",
    "service_id": 25,
    "target": "081234567890",
    "ref_id": "PPOB-ORDER-1234"
}'
<?php

$curl = curl_init();

$payload = {
    "type": "ppob",
    "service_id": 25,
    "target": "081234567890",
    "ref_id": "PPOB-ORDER-1234"
};

curl_setopt_array($curl, array(
    CURLOPT_URL => 'https://hellogame.my.id/api/v2/order',
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_ENCODING => '',
    CURLOPT_MAXREDIRS => 10,
    CURLOPT_TIMEOUT => 30,
    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
    CURLOPT_CUSTOMREQUEST => 'POST',
    CURLOPT_POSTFIELDS => json_encode($payload),
    CURLOPT_HTTPHEADER => array(
        'Content-Type: application/json',
        'Authorization: Bearer YOUR_API_KEY'
    ),
));

$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);

if ($err) {
    echo "cURL Error #:" . $err;
} else {
    $result = json_decode($response, true);
    print_r($result);
}
import requests
import json

url = "https://hellogame.my.id/api/v2/order"
payload = {
    "type": "ppob",
    "service_id": 25,
    "target": "081234567890",
    "ref_id": "PPOB-ORDER-1234"
}

headers = {
    'Content-Type': 'application/json',
    'Authorization': 'Bearer YOUR_API_KEY'
}

response = requests.post(url, headers=headers, json=payload)
print(response.status_code)
print(response.json())
const axios = require('axios');

const payload = {
    "type": "ppob",
    "service_id": 25,
    "target": "081234567890",
    "ref_id": "PPOB-ORDER-1234"
};

const config = {
    method: 'post',
    url: 'https://hellogame.my.id/api/v2/order',
    headers: { 
        'Content-Type': 'application/json', 
        'Authorization': 'Bearer YOUR_API_KEY'
    },
    data: payload
};

axios(config)
    .then(function (response) {
        console.log(JSON.stringify(response.data, null, 2));
    })
    .catch(function (error) {
        console.log(error.response ? error.response.data : error.message);
    });
{
    "status": true,
    "mode": "production",
    "message": "Pesanan PPOB berhasil diproses.",
    "data": {
        "order_id": 45012,
        "trx_id": "INV-PB-20261005-3341",
        "ref_id": "PPOB-ORDER-1234",
        "service_id": 25,
        "target": "081234567890",
        "price": 10250,
        "status": "processing",
        "remaining_balance": 470250
    },
    "timestamp": "2026-11-06T07:33:34+00:00"
}
POSThttps://hellogame.my.id/api/v2/order

Order Akun & Aplikasi Premium

Membeli akun Netflix, Spotify, Canva Pro, ChatGPT Plus, YouTube Premium dengan pengiriman akun instan.

Parameter Request App:
ParameterTipeWajibKeterangan
api_idstringWajib jika tanpa HeaderAPI User ID akun Anda (didapatkan di profil developer).
api_keystringWajib jika tanpa HeaderKunci API akun Anda (Production atau Sandbox).
api_secretstringRekomendasiKunci rahasia API akun Anda untuk otorisasi keamanan ganda transaksi.
typestringWajibIsi app
service_idintegerWajibID Layanan Aplikasi Premium resmi
targetstringOpsionalNo WhatsApp / Email pembeli
quantityintegerOpsionalJumlah (default 1)
curl --location 'https://hellogame.my.id/api/v2/order' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer YOUR_API_KEY' \
--data '{
    "type": "app",
    "service_id": 1,
    "target": "081234567890",
    "ref_id": "APP-ORDER-1234"
}'
<?php

$curl = curl_init();

$payload = {
    "type": "app",
    "service_id": 1,
    "target": "081234567890",
    "ref_id": "APP-ORDER-1234"
};

curl_setopt_array($curl, array(
    CURLOPT_URL => 'https://hellogame.my.id/api/v2/order',
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_ENCODING => '',
    CURLOPT_MAXREDIRS => 10,
    CURLOPT_TIMEOUT => 30,
    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
    CURLOPT_CUSTOMREQUEST => 'POST',
    CURLOPT_POSTFIELDS => json_encode($payload),
    CURLOPT_HTTPHEADER => array(
        'Content-Type: application/json',
        'Authorization: Bearer YOUR_API_KEY'
    ),
));

$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);

if ($err) {
    echo "cURL Error #:" . $err;
} else {
    $result = json_decode($response, true);
    print_r($result);
}
import requests
import json

url = "https://hellogame.my.id/api/v2/order"
payload = {
    "type": "app",
    "service_id": 1,
    "target": "081234567890",
    "ref_id": "APP-ORDER-1234"
}

headers = {
    'Content-Type': 'application/json',
    'Authorization': 'Bearer YOUR_API_KEY'
}

response = requests.post(url, headers=headers, json=payload)
print(response.status_code)
print(response.json())
const axios = require('axios');

const payload = {
    "type": "app",
    "service_id": 1,
    "target": "081234567890",
    "ref_id": "APP-ORDER-1234"
};

const config = {
    method: 'post',
    url: 'https://hellogame.my.id/api/v2/order',
    headers: { 
        'Content-Type': 'application/json', 
        'Authorization': 'Bearer YOUR_API_KEY'
    },
    data: payload
};

axios(config)
    .then(function (response) {
        console.log(JSON.stringify(response.data, null, 2));
    })
    .catch(function (error) {
        console.log(error.response ? error.response.data : error.message);
    });
{
    "status": true,
    "mode": "production",
    "message": "Pesanan Aplikasi Premium berhasil diproses.",
    "data": {
        "order_id": 12450,
        "invoice": "INV-AP-20261005-1102",
        "product_name": "Netflix Premium 1 Bulan 4K UHD",
        "price": 35000,
        "status": "success",
        "delivered_credentials": {
            "email": "[email protected]",
            "password": "PassSecret123#",
            "profile": "Profile 3 (PIN: 1945)"
        },
        "remaining_balance": 420250
    },
    "timestamp": "2026-11-06T07:33:34+00:00"
}
POSThttps://hellogame.my.id/api/v2/status

Cek Status Pesanan

Mengecek status terkini, Serial Number (SN), atau progres pengerjaan pesanan secara realtime.

Parameter Request:
ParameterTipeWajibKeterangan
api_idstringWajib jika tanpa HeaderAPI User ID akun Anda (didapatkan di profil developer).
api_keystringWajib jika tanpa HeaderKunci API akun Anda (Production atau Sandbox).
api_secretstringRekomendasiKunci rahasia API akun Anda untuk otorisasi keamanan ganda transaksi.
order_idstring/integerWajib jika tanpa ref_idID Pesanan atau Nomor Invoice
ref_idstringOpsionalID Referensi yang Anda sertakan saat order
typestringOpsionalsmm, game, ppob, app
curl --location 'https://hellogame.my.id/api/v2/status' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer YOUR_API_KEY' \
--data '{
    "order_id": 90214
}'
<?php

$curl = curl_init();

$payload = {
    "order_id": 90214
};

curl_setopt_array($curl, array(
    CURLOPT_URL => 'https://hellogame.my.id/api/v2/status',
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_ENCODING => '',
    CURLOPT_MAXREDIRS => 10,
    CURLOPT_TIMEOUT => 30,
    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
    CURLOPT_CUSTOMREQUEST => 'POST',
    CURLOPT_POSTFIELDS => json_encode($payload),
    CURLOPT_HTTPHEADER => array(
        'Content-Type: application/json',
        'Authorization: Bearer YOUR_API_KEY'
    ),
));

$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);

if ($err) {
    echo "cURL Error #:" . $err;
} else {
    $result = json_decode($response, true);
    print_r($result);
}
import requests
import json

url = "https://hellogame.my.id/api/v2/status"
payload = {
    "order_id": 90214
}

headers = {
    'Content-Type': 'application/json',
    'Authorization': 'Bearer YOUR_API_KEY'
}

response = requests.post(url, headers=headers, json=payload)
print(response.status_code)
print(response.json())
const axios = require('axios');

const payload = {
    "order_id": 90214
};

const config = {
    method: 'post',
    url: 'https://hellogame.my.id/api/v2/status',
    headers: { 
        'Content-Type': 'application/json', 
        'Authorization': 'Bearer YOUR_API_KEY'
    },
    data: payload
};

axios(config)
    .then(function (response) {
        console.log(JSON.stringify(response.data, null, 2));
    })
    .catch(function (error) {
        console.log(error.response ? error.response.data : error.message);
    });
{
    "status": true,
    "mode": "production",
    "message": "Status pesanan berhasil diambil.",
    "data": {
        "order_id": 90214,
        "trx_id": "INV-GM-20261005-7712",
        "type": "game",
        "price": 19500,
        "status": "success",
        "sn": "MLBB86-SUCCESS-992144810",
        "created_at": "2026-10-05 23:20:00"
    },
    "timestamp": "2026-11-06T07:33:34+00:00"
}

Webhook Callback & Verifikasi Signature

Server kami akan mengirimkan HTTP POST secara asinkron ke URL Webhook Anda setiap kali status pesanan berubah. Anda dapat memverifikasi keaslian webhook menggunakan HMAC-SHA256 signature pada header X-Signature.

Contoh Payload Webhook yang Dikirimkan:
{
  "event": "order.updated",
  "order_id": 90214,
  "invoice": "INV-GM-20261005-7712",
  "ref_id": "GAME-ORDER-9912",
  "type": "game",
  "service_id": 10,
  "service_name": "86 Diamonds MLBB",
  "target": "12345678 (2001)",
  "status": "success",
  "sn": "MLBB86-SUCCESS-992144810",
  "note": "Topup berhasil diproses",
  "timestamp": "2026-10-05T23:50:00+08:00"
}
Contoh Validasi Signature di PHP:
<?php
$signature = $_SERVER['HTTP_X_SIGNATURE'] ?? '';
$rawBody = file_get_contents('php://input');
$secret = 'YOUR_WEBHOOK_SECRET'; // Diambil dari dashboard developer

$calculated = hash_hmac('sha256', $rawBody, $secret);

if (!hash_equals($calculated, $signature)) {
    http_response_code(401);
    die(json_encode(['status' => false, 'message' => 'Invalid signature']));
}

$payload = json_decode($rawBody, true);
// Update status pesanan di database Anda...

http_response_code(200);
echo json_encode(['status' => true]);

Sandbox Testing & Daftar Kode Error

Mode Sandbox memungkinkan Anda melakukan pengujian tanpa biaya saldo apa pun. Gunakan Kunci Sandbox akun Anda untuk langsung bertransaksi di lingkungan simulasi.

Tabel Kode Error Standar:
HTTP CodeError CodePenjelasan
401AUTH_FAILEDKunci API salah atau tidak disertakan.
403IP_NOT_WHITELISTEDIP server Anda belum di-whitelist.
400INSUFFICIENT_BALANCESaldo akun tidak cukup untuk pesanan ini.
404SERVICE_NOT_FOUNDSKU / Layanan tidak ditemukan.
422INVALID_PARAMETERSFormat atau parameter request tidak valid.
409DUPLICATE_REF_IDRef ID sudah pernah digunakan.
HomeGamePesananMasuk
ESC
US
Berhasil disalin ke clipboard!