OTP24HR
เข้าสู่ระบบ

OTP24HR Reseller API

เชื่อมต่อระบบ OTP ของเราเข้ากับเว็บ/แอปของคุณ — ใช้ API key เดียวรับ OTP ได้จากทุกบริการ

API Key Auth JSON Response RESTful Custom Markup

API Key ของฉัน

🔒 กรุณาเข้าสู่ระบบก่อน
เข้าสู่ระบบ

เริ่มต้นใช้งาน

1. Base URL

https://otp24hr.store/api/v1

2. Authentication — ส่ง API Key ได้ 4 วิธี

# 1) Header (แนะนำ) X-API-Key: your_api_key_here # 2) Bearer token Authorization: Bearer your_api_key_here # 3) Query string ?api_key=your_api_key_here # 4) JSON body {"api_key": "your_api_key_here"}

3. รูปแบบ Response

ทุก endpoint ตอบกลับเป็น JSON ที่มี field ok บอกสถานะ:

// สำเร็จ { "ok": true, /* ... data ... */ } // ผิดพลาด { "ok": false, "error": "ERROR_CODE", "message": "คำอธิบายเป็นภาษาไทย" }

Endpoints

GET /api/v1/services.php ดูรายการบริการ + ราคา (รวม markup ของคุณแล้ว)

Query Parameters

ParameterTypeDescription
country int optional รหัสประเทศ default = 52 (ไทย)

ตัวอย่าง Response

{ "ok": true, "country": 52, "count": 10, "services": [ { "code": "ka", "name": "SHOPEE", "price_thb": 15.00, "available": true } ] }
GET /api/v1/balance.php ดูยอดเงินคงเหลือในกระเป๋า
{ "ok": true, "balance_thb": 1500.00, "currency": "THB" }
POST /api/v1/buy.php ซื้อ OTP — ระบบหักเงินจากกระเป๋าทันที

Body (JSON)

ParameterTypeDescription
service string required service code เช่น ka, fb, tg
country int optional รหัสประเทศ default = 52
{ "ok": true, "order_id": 1672, "activation_id": 290188155, "phone": "66611529033", "service": "ka", "country": 52, "price_thb": 15.00, "expires_in_min": 20, "status": "waiting" }
curl -X POST "https://otp24hr.store/api/v1/buy.php" \ -H "X-API-Key: YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{"service":"ka","country":52}'
$ch = curl_init(); curl_setopt_array($ch, [ CURLOPT_URL => 'https://otp24hr.store/api/v1/buy.php', CURLOPT_POST => true, CURLOPT_RETURNTRANSFER => true, CURLOPT_HTTPHEADER => [ 'X-API-Key: YOUR_API_KEY', 'Content-Type: application/json', ], CURLOPT_POSTFIELDS => json_encode([ 'service' => 'ka', 'country' => 52, ]), ]); $response = curl_exec($ch); $data = json_decode($response, true); if ($data['ok']) { echo "OTP เบอร์: " . $data['phone']; }
const res = await fetch('https://otp24hr.store/api/v1/buy.php', { method: 'POST', headers: { 'X-API-Key': 'YOUR_API_KEY', 'Content-Type': 'application/json', }, body: JSON.stringify({ service: 'ka', country: 52 }) }); const data = await res.json(); if (data.ok) console.log('Phone:', data.phone);
GET /api/v1/status.php เช็คสถานะ + รับ OTP code (ถ้ามาแล้ว)

Query Parameters

ParameterTypeDescription
order_id int required order ID จาก response ของ /buy

Response

{ "ok": true, "order_id": 1672, "phone": "66611529033", "status": "success", // waiting / success / cancel / timeout "otp_code": "123456", "price_thb": 15.00 }

💡 Tips: Poll endpoint นี้ทุก 5-10 วินาทีจนกว่า otp_code จะมีค่า หรือ status เปลี่ยนเป็น terminal state

POST /api/v1/cancel.php ยกเลิกออเดอร์ + คืนเงิน (ต้องผ่าน 2 นาทีหลังซื้อ)
ParameterTypeDescription
order_id int required order ID ที่ต้องการยกเลิก
{ "ok": true, "order_id": 1672, "refunded_thb": 15.00, "message": "ยกเลิก & คืนเงินเรียบร้อย" }
POST /api/v1/complete.php ยืนยันใช้ OTP สำเร็จ (เคลียร์ slot ที่ provider)
ParameterTypeDescription
order_id int required order ID
GET /api/v1/orders.php ประวัติออเดอร์ทั้งหมดที่ใช้ API key นี้
ParameterTypeDescription
limit int optional จำนวนรายการ default 50, max 200
offset int optional เริ่มที่รายการที่... default 0
POST /api/v1/resend.php ขอ OTP รอบ 2 เบอร์เดิม — ไม่หักเครดิต
ใช้ทำอะไร: ขอรหัส OTP ใหม่อีกครั้งบนเบอร์เดิม โดยไม่ต้องซื้อเบอร์ใหม่และไม่หักเครดิตเพิ่ม
เมื่อไหร่ควรเรียก: เมื่อ order เดิมได้รับ OTP สำเร็จแล้ว (status=success) แต่ต้องการรหัสยืนยันอีกครั้งบนเบอร์เดียวกัน (เช่นยืนยันซ้ำ 2 ขั้นตอน)
วิธีรัน: ส่ง order_id ของ order เดิมที่ success แล้ว → จะได้ order_id ใหม่กลับมาให้ไป poll /status.php ต่อ

Body (JSON)

ParameterTypeDescription
order_id int required order ID เดิมที่ต้อง status=success แล้วเท่านั้น

Response (สำเร็จ)

{ "ok": true, "order_id": 18301, // order ใหม่ — ใช้ poll /status.php "original_order": 1977, "phone": "66629412352", "service": "rs", "status": "waiting", "price_thb": 0, "expires_in_min": 20, "message": "รอ OTP รอบ 2 ได้เลย (ไม่หักเครดิต)" }

Response (ผิดพลาด)

errorสาเหตุ
NOT_SUCCESSorder เดิมยังไม่ success — ขอรอบ 2 ได้เฉพาะหลังได้ OTP แล้ว
ALREADY_PENDINGมี order รอบ 2 รอ OTP อยู่แล้วสำหรับเบอร์นี้
PROVIDER_REJECTEDเบอร์นี้ปิดที่ provider แล้ว ไม่สามารถขอรหัสซ้ำได้อีก

💡 Tips: ใช้ order_id ใหม่ที่ได้กลับมา poll /status.php ต่อได้เลย ไม่ต้องเรียก /buy.php ใหม่

TrueMoney Angpao Redeem API

API สำหรับรับอั่งเปา TrueMoney ของลูกค้า — เติมเครดิตเข้า wallet อัตโนมัติ

POST /api/v1/truemoney_redeem.php รับอั่งเปา TrueMoney Wallet

ใช้ทำอะไร: ส่งลิงค์อั่งเปา TrueMoney มา → ระบบจะแลกรับอัตโนมัติ → เครดิตเข้า wallet ของ API Key
หมายเหตุ: อั่งเปาต้องยังไม่ถูกใช้ และจำนวนเงินอยู่ระหว่าง 10–10,000 บาท

📥 Parameters

ParameterTypeRequiredคำอธิบาย
api_keystringAPI Key ของคุณ
voucher_urlstringลิงค์อั่งเปา TrueMoney เช่น https://gift.truemoney.com/campaign/?v=xxxxx

📤 Response สำเร็จ

{
  "ok": true,
  "amount": 100.00,
  "balance": 1350.00,
  "message": "รับอั่งเปา ฿100.00 สำเร็จ"
}

📤 Response ล้มเหลว

{
  "ok": false,
  "error": "อั่งเปานี้ถูกใช้ไปแล้ว"
}

⚠️ Error Codes

API key requiredไม่ได้ส่ง api_key
Invalid API keyAPI key ไม่ถูกต้อง
voucher_url requiredไม่ได้ส่งลิงค์อั่งเปา
Invalid voucher URLลิงค์ไม่ถูกรูปแบบ
อั่งเปานี้ถูกใช้ไปแล้วvoucher ถูก redeem แล้ว
อั่งเปาหมดอายุvoucher expire แล้ว

📝 ตัวอย่าง PHP

<?php
$ch = curl_init('https://otp24hr.store/api/v1/truemoney_redeem.php');
curl_setopt_array($ch, [
  CURLOPT_POST => true,
  CURLOPT_POSTFIELDS => http_build_query([
    'api_key'     => 'YOUR_API_KEY',
    'voucher_url' => 'https://gift.truemoney.com/campaign/?v=xxxxx',
  ]),
  CURLOPT_RETURNTRANSFER => true,
]);
$result = json_decode(curl_exec($ch), true);

if ($result['ok']) {
  echo "รับ ฿" . $result['amount'] . " สำเร็จ!";
  echo "ยอดคงเหลือ: ฿" . $result['balance'];
} else {
  echo "ล้มเหลว: " . $result['error'];
}
?>

Slip Verify Reseller API

API ตรวจสอบสลิปโอนเงินธนาคาร — ส่งรูปสลิปมาตรวจ ได้ผลลัพธ์ยอดโอน ผู้โอน ผู้รับ ทันที

POST /api/v1/slip_verify.php ตรวจสอบสลิปโอนเงิน

ใช้ทำอะไร: ส่งรูปสลิปธนาคาร (QR data หรือ URL) → ระบบตรวจสอบกับธนาคาร → คืนข้อมูลยอดโอน ผู้โอน ผู้รับ วันที่
รองรับ: กสิกร, กรุงเทพ, กรุงไทย, ไทยพาณิชย์, กรุงศรี, ออมสิน, ทหารไทยธนชาต และอื่นๆ
ค่าธรรมเนียม: 0.00 บาท

📥 Parameters

ParameterTypeRequiredคำอธิบาย
api_keystringAPI Key ของคุณ
filefile✓*ไฟล์รูปสลิป (jpg/png) — ส่งแบบ multipart/form-data
qrcode_textstring✓*QR code data ที่อ่านจากสลิป (ถ้าไม่ส่งไฟล์)
receiver_accountstring-เลขบัญชีผู้รับ — ถ้าระบุจะตรวจว่าตรงกันหรือไม่
amountnumber-จำนวนเงินที่ต้องตรวจ — ถ้าระบุจะตรวจว่ายอดตรงกันหรือไม่

* ส่งอย่างน้อย 1 อย่าง: file (multipart) หรือ qrcode_text (POST/JSON)

📤 Response สำเร็จ

{
  "ok": true,
  "data": {
    "transaction_id": "20260712153045001",
    "date": "2026-07-12",
    "time": "15:30:45",
    "amount": 500.00,
    "fee": 0.00,
    "sender": {
      "name": "นาย ทดสอบ ระบบ",
      "bank": "KBANK",
      "account": "xxx-x-xx678-x"
    },
    "receiver": {
      "name": "นาย ผู้รับ เงิน",
      "bank": "SCB",
      "account": "xxx-x-xx123-x"
    },
    "verified": true,
    "receiver_match": true,
    "amount_match": true
  },
  "fee_charged": 0.00
}

📤 Response ล้มเหลว

{
  "ok": false,
  "error": "INVALID_SLIP",
  "code": "INVALID_SLIP"
}

📤 Response สลิปซ้ำ (HTTP 409)

{
  "ok": false,
  "error": "DUPLICATE_SLIP",
  "message": "สลิปนี้เคยถูกตรวจสอบแล้ว",
  "fee_charged": 0
}

⚠️ Error Codes

INVALID_SLIPอ่านสลิปไม่ได้ / QR ไม่ถูกต้อง
DUPLICATE_SLIPสลิปนี้เคยถูกตรวจสอบแล้ว — ไม่หักค่าธรรมเนียม (HTTP 409)
EXPIRED_SLIPสลิปเก่าเกินกำหนด
AMOUNT_MISMATCHยอดเงินไม่ตรงกับที่ระบุ
RECEIVER_MISMATCHบัญชีผู้รับไม่ตรง
INSUFFICIENT_BALANCEเครดิตไม่พอจ่ายค่าธรรมเนียม

🏦 Bank Codes

📦 ไฟล์ตัวอย่างพร้อมใช้

ดาวน์โหลดชุดไฟล์ตัวอย่าง PHP สำหรับ Slip Verify — พร้อมใช้งานทันที มี 3 ไฟล์:

config.php — ตั้งค่า API Key, เลขบัญชี, bank_code
index.php — หน้าอัปโหลดสลิป + สแกน QR อัตโนมัติ (jsQR)
check_slip_api.php — เรียก API ตรวจสลิป + เช็คชื่อ/ธนาคาร/เวลา + กันสลิปซ้ำ
ดาวน์โหลดไฟล์ตัวอย่าง (.zip)

🏦 Bank Codes

รหัสธนาคารที่อยู่ใน response field sender.bank และ receiver.bank

Codeธนาคาร
099พร้อมเพย์ (PromptPay)
002ธ.กรุงเทพ (BBL)
004ธ.กสิกรไทย (KBANK)
006ธ.กรุงไทย (KTB)
011ธ.ทหารไทยธนชาต (TTB)
014ธ.ไทยพาณิชย์ (SCB)
025ธ.กรุงศรีอยุธยา (BAY)
069ธ.เกียรตินาคินภัทร (KKP)
022ธ.ซีไอเอ็มบีไทย (CIMBT)
067ธ.ทิสโก้ (TISCO)
024ธ.ยูโอบี (UOB)
071ธ.ไทยเครดิตเพื่อรายย่อย
073ธ.แลนด์ แอนด์ เฮ้าส์ (LHBANK)
070ธ.ไอซีบีซี (ไทย) (ICBC)
034ธ.เพื่อการเกษตรและสหกรณ์การเกษตร (BAAC)
030ธ.ออมสิน (GSB)
033ธ.อาคารสงเคราะห์ (GHB)
066ธ.อิสลามแห่งประเทศไทย (ISBT)
088ธ.คลิกซ์ (CLICX)

📝 ตัวอย่าง PHP (ส่งไฟล์)

<?php
$ch = curl_init('https://otp24hr.store/api/v1/slip_verify.php');
curl_setopt_array($ch, [
  CURLOPT_POST => true,
  CURLOPT_POSTFIELDS => [
    'api_key' => 'YOUR_API_KEY',
    'file'    => new CURLFile('/path/to/slip.jpg', 'image/jpeg'),
  ],
  CURLOPT_RETURNTRANSFER => true,
]);
$result = json_decode(curl_exec($ch), true);

if ($result['ok']) {
  echo "ยอดโอน: ฿" . $result['data']['amount'];
  echo "ผู้โอน: " . $result['data']['sender']['name'];
  echo "ตรวจสอบผ่าน: " . ($result['data']['verified'] ? 'ใช่' : 'ไม่');
}
?>

📝 ตัวอย่าง PHP (ส่ง QR data)

<?php
$ch = curl_init('https://otp24hr.store/api/v1/slip_verify.php');
curl_setopt_array($ch, [
  CURLOPT_POST => true,
  CURLOPT_POSTFIELDS => http_build_query([
    'api_key'     => 'YOUR_API_KEY',
    'qrcode_text' => '00020101021230...', // QR data จากสลิป
  ]),
  CURLOPT_RETURNTRANSFER => true,
]);
$result = json_decode(curl_exec($ch), true);
?>

Example Flow — ขั้นตอนการใช้งาน

ตัวอย่าง flow การซื้อ OTP สำหรับ Shopee:

// 1) เช็คยอดก่อน (ถ้าต้องการ) GET /api/v1/balance.php → { ok: true, balance_thb: 500 } // 2) ซื้อ OTP POST /api/v1/buy.php { service: "ka" } → { ok: true, order_id: 1672, phone: "66611529033", price_thb: 15 } // 3) ใช้เบอร์ที่ได้ไปสมัคร/login เว็บปลายทาง // 4) Poll สถานะทุก 5-10 วินาที GET /api/v1/status.php?order_id=1672 → { ok: true, status: "waiting", otp_code: "" } // ยังไม่มา → { ok: true, status: "success", otp_code: "123456" } // มาแล้ว! // 5) ยืนยันใช้แล้ว (optional) POST /api/v1/complete.php { order_id: 1672 } → { ok: true }

Error Codes

NO_API_KEYไม่ได้ส่ง API key มา
INVALID_API_KEYAPI key ไม่ถูกต้อง
API_KEY_DISABLEDAPI key ถูกปิดใช้งาน
IP_NOT_ALLOWEDIP ไม่อยู่ใน whitelist
RATE_LIMITส่ง request เกินขีดจำกัดต่อนาที
SERVICE_REQUIREDไม่ได้ระบุ service
SERVICE_NOT_FOUNDไม่พบ service code
INSUFFICIENT_BALANCEยอดในกระเป๋าไม่พอ
PROVIDER_ERRORprovider ปลายทางมีปัญหา
ORDER_NOT_FOUNDไม่พบออเดอร์ที่ระบุ
FORBIDDENออเดอร์นี้ไม่ใช่ของ key คุณ
EARLY_CANCEL_DENIEDยังยกเลิกไม่ได้ (ต้องผ่าน 2 นาที)
INVALID_AMOUNTจำนวนเงินไม่อยู่ในช่วงที่กำหนด
TXN_ID_REQUIREDไม่ได้ส่ง txnId มา
TXN_NOT_FOUNDไม่พบรายการ txnId ที่ระบุ
UPSTREAM_ERRORเชื่อมต่อ provider ปลายทางไม่สำเร็จ
GIFT_REQUIREDไม่ได้ส่งโค้ด/ลิงก์อั่งเปามา
INVALID_GIFTโค้ดอั่งเปาไม่ถูกต้อง
GIFT_USEDอั่งเปานี้ถูกใช้งานไปแล้ว
AMOUNT_TOO_LOWยอดในซองต่ำกว่าขั้นต่ำที่กำหนด
NO_INPUTไม่ได้ส่งไฟล์สลิปหรือ qrcode_text มา

SMM API (ปั้มโซเชียล)

ระบบปั้มไลค์ ฟอลโล วิว สำหรับโซเชียลมีเดีย — เชื่อมต่อผ่าน API เพื่อสั่งซื้อและเช็คสถานะอัตโนมัติ

Base URL:

https://otp24hr.store/api/v1/smm.php

ทุก request ส่ง api_key ผ่าน parameter

📋 รายการบริการ (services)

GET ?action=services&api_key=YOUR_KEY

คืนรายการบริการทั้งหมดที่เปิดให้ใช้งาน พร้อมราคาที่คำนวณส่วนลดตาม API key ของคุณแล้ว

Response

[
  {
    "service": 14157,
    "name": "Facebook Page Likes",
    "category": "Facebook",
    "type": "Default",
    "rate": 45.5000,
    "min": 100,
    "max": 100000
  },
  ...
]
Fieldคำอธิบาย
serviceID ของบริการ ใช้ตอนสั่งซื้อ
nameชื่อบริการ
categoryหมวดหมู่ เช่น Facebook, Instagram, TikTok
rateราคาต่อ 1,000 (บาท) — คำนวณส่วนลดแล้ว
minจำนวนขั้นต่ำที่สั่งได้
maxจำนวนสูงสุดที่สั่งได้

🛒 สั่งซื้อ (add)

POST ?action=add
ParameterTypeRequiredคำอธิบาย
api_keystringAPI Key ของคุณ
actionstringadd
serviceintService ID จากรายการบริการ
linkstringURL โพสต์/เพจ/โปรไฟล์ที่ต้องการปั้ม
quantityintจำนวนที่ต้องการ (ต้องอยู่ระหว่าง min–max)

Response สำเร็จ

{
  "order": 12345
}

Response ล้มเหลว

{
  "error": "Insufficient balance"
}

📊 เช็คสถานะ (status)

POST ?action=status
ParameterTypeRequiredคำอธิบาย
api_keystringAPI Key ของคุณ
actionstringstatus
orderintOrder ID ที่ได้จากการสั่งซื้อ

Response

{
  "order": 12345,
  "charge": "45.5000",
  "status": "Processing",
  "remains": 200,
  "start_count": 1500,
  "currency": "THB"
}
Fieldคำอธิบาย
statusPendingProcessingCompleted / Partial / Canceled
remainsจำนวนที่เหลือ (กรณี Partial)
start_countจำนวนเริ่มต้นตอนสั่ง

💰 เช็คยอดเงิน (balance)

GET ?action=balance&api_key=YOUR_KEY

Response

{
  "balance": "1250.0000",
  "currency": "THB"
}

🧮 วิธีคำนวณราคา

ราคาต่อ 1,000: ค่า rate ที่แสดงคือราคาต่อ 1,000 ยูนิต
สูตร: ราคา = (rate / 1000) × quantity

ตัวอย่าง: rate = 45.50, quantity = 5000
ราคา = (45.50 / 1000) × 5000 = ฿227.50

📝 ตัวอย่างการใช้งาน (PHP)

<?php
$apiKey = 'YOUR_API_KEY';
$baseUrl = 'https://otp24hr.store/api/v1/smm.php';

// 1. ดูรายการบริการ
$services = json_decode(file_get_contents(
  "$baseUrl?action=services&api_key=$apiKey"
), true);

// 2. สั่งซื้อ
$ch = curl_init("$baseUrl?action=add");
curl_setopt_array($ch, [
  CURLOPT_POST => true,
  CURLOPT_POSTFIELDS => http_build_query([
    'api_key'  => $apiKey,
    'action'   => 'add',
    'service'  => 14157,  // Service ID
    'link'     => 'https://facebook.com/your-page',
    'quantity' => 1000,
  ]),
  CURLOPT_RETURNTRANSFER => true,
]);
$result = json_decode(curl_exec($ch), true);
$orderId = $result['order'];

// 3. เช็คสถานะ
$status = json_decode(file_get_contents(
  "$baseUrl?action=status&api_key=$apiKey&order=$orderId"
), true);
echo $status['status']; // Processing, Completed, etc.
?>
import requests

API_KEY = 'YOUR_API_KEY'
BASE = 'https://otp24hr.store/api/v1/smm.php'

# 1. ดูบริการ
services = requests.get(BASE, params={
    'action': 'services', 'api_key': API_KEY
}).json()

# 2. สั่งซื้อ
order = requests.post(BASE, data={
    'action': 'add',
    'api_key': API_KEY,
    'service': 14157,
    'link': 'https://facebook.com/your-page',
    'quantity': 1000,
}).json()
order_id = order['order']

# 3. เช็คสถานะ
status = requests.post(BASE, data={
    'action': 'status',
    'api_key': API_KEY,
    'order': order_id,
}).json()
print(status['status'])

⚠️ Error Codes (SMM)

API key requiredไม่ได้ส่ง api_key
Invalid API keyAPI key ไม่ถูกต้อง
Service not foundไม่พบ service ID ที่ระบุ
Link requiredไม่ได้ส่ง link มา
Min quantity is Xจำนวนต่ำกว่าขั้นต่ำ
Max quantity is Xจำนวนเกินสูงสุด
Insufficient balanceยอดเงินไม่พอ
Order not foundไม่พบ order ID ที่ระบุ

Game Top-up API

API เติมเกมออนไลน์ 50+ เกม — รองรับ ROV, Free Fire, Genshin Impact, Roblox, PUBG และอีกมากมาย

Base URL:

https://otp24hr.store/api/v1/game.php

🎮 รายการเกม (products)

GET ?action=products&api_key=YOUR_KEY

Response

{
  "ok": true,
  "data": [
    {
      "product_code": "102",
      "name": "Garena RoV",
      "image": "https://...",
      "min_price": 10.50
    }, ...
  ]
}

📦 แพ็คเกจ (packages)

GET ?action=packages&api_key=YOUR_KEY&product_code=102
ParameterRequiredคำอธิบาย
product_codeรหัสเกมจาก products

Response

{
  "ok": true,
  "data": [
    { "package_id": "60", "name": "40 คูปอง", "price": 42.80 },
    { "package_id": "61", "name": "90 คูปอง", "price": 96.30 }, ...
  ]
}

🛒 สั่งเติม (order)

POST ?action=order
ParameterTypeRequiredคำอธิบาย
api_keystringAPI Key
actionstringorder
product_codestringรหัสเกม
package_idstringรหัสแพ็คเกจ
uidstringPlayer ID ในเกม

Response สำเร็จ

{
  "ok": true,
  "order_id": 456,
  "game": "Garena RoV",
  "package": "40 คูปอง",
  "price": 42.80,
  "status": "pending"
}

📊 เช็คสถานะ (status)

GET ?action=status&api_key=YOUR_KEY&order_id=456

Response

{
  "ok": true,
  "order_id": 456,
  "game": "Garena RoV",
  "package": "Garena RoV - 40 คูปอง",
  "player_id": "10062885063",
  "price": 42.80,
  "status": "success"
}

📝 ตัวอย่าง (PHP)

<?php
$key = 'YOUR_API_KEY';
$api = 'https://otp24hr.store/api/v1/game.php';

// 1. ดูรายการเกม
$games = json_decode(file_get_contents("$api?action=products&api_key=$key"), true);

// 2. ดูแพ็คเกจ
$pkgs = json_decode(file_get_contents("$api?action=packages&api_key=$key&product_code=102"), true);

// 3. สั่งเติม
$ch = curl_init("$api?action=order");
curl_setopt_array($ch, [
  CURLOPT_POST => true,
  CURLOPT_POSTFIELDS => http_build_query([
    'api_key' => $key, 'action' => 'order',
    'product_code' => '102', 'package_id' => '60',
    'uid' => '10062885063',
  ]),
  CURLOPT_RETURNTRANSFER => true,
]);
$result = json_decode(curl_exec($ch), true);

// 4. เช็คสถานะ
$status = json_decode(file_get_contents(
  "$api?action=status&api_key=$key&order_id=" . $result['order_id']
), true);
?>

API Playground

ทดสอบ API ได้เลยโดยไม่ต้องเขียนโค้ด — เลือก endpoint กรอก parameter แล้วกด Send

GET