Payment In Game
การตั้งค่า .env
ตัวแปรสภาพแวดล้อมสำหรับ Devil Market Addons (.env)
ไฟล์ .env เก็บค่า secret ทั้งหมด เช่น API Key, Token, Password
ห้าม commit .env ลง git
ไฟล์ .env อยู่ใน .gitignore แล้ว และ ห้ามแชร์กับผู้อื่น เพราะมีข้อมูลลับทั้งหมดของระบบ
วิธีสร้าง
cp .env.example .envตัวแปรทั้งหมด
API Security
# ค่า secret ต้องตรงกับ Config_Main.Settings.License ใน devil_market
DEVIL_API_SECRET=
DEVIL_API_SECRET_REQUIRED=trueDEVIL_API_SECRET- คีย์ลับสำหรับป้องกันการเข้าถึง API ต้องตรงกับฝั่ง FiveMDEVIL_API_SECRET_REQUIRED- บังคับใช้ secret (false= เปิดใช้เฉพาะ local debug)
Discord Bot
DISCORD_BOT_TOKEN=your_discord_bot_token_hereToken จาก Discord Developer Portal
ฐานข้อมูล
# DB_HOST=localhost
# DB_USER=root
# DB_PASSWORD=
# DB_NAME=esxlegacy_c0e9d5ถ้าไม่ตั้ง จะใช้ค่า default ใน config.js
Stripe (PromptPay)
STRIPE_SECRET_KEY=sk_test_xxxxx- ใช้
sk_test_สำหรับทดสอบ - ใช้
sk_live_สำหรับ production
ดูได้ที่ Stripe Dashboard
Thunder (ตรวจสลิปอัตโนมัติ)
THUNDER_API_URL=https://api.thunder.in.th/v2/verify/bank
THUNDER_API_KEY=your_thunder_api_keyAPI Key จาก Thunder.in.th
PromptPay QR
PROMPTPAY_NUMBER=เบอร์โทรศัพท์ 10 หลัก หรือเลขบัตรประชาชน 13 หลัก สำหรับสร้าง QR
TrueMoney Voucher
TW_VOUCHER_PHONE=0812345678เบอร์โทรศัพท์ 10 หลัก สำหรับรับซองอั่งเปา
TMWeasyAPI
TMWEASY_USERNAME=your_username
TMWEASY_PASSWORD=your_password
TMWEASY_CON_ID=your_connection_id
TMWEASY_API_KEY=your_api_key
TMWEASY_PROMPTPAY_ID=0812345678API จาก TMWeasyAPI
การตั้งค่าอื่น ๆ
# โหมด development | production | test
NODE_ENV=development
# Public URL (ถ้ามีโดเมนจริง)
# PUBLIC_BASE_URL=https://your-domain.com
# API Server
API_HOST=127.0.0.1
API_BODY_LIMIT=10mbลำดับความสำคัญ
ตัวแปรที่ต้องตั้งก่อนใช้งาน
บังคับ:
DEVIL_API_SECRET- ระบบจะไม่ทำงานถ้าไม่ตั้งDISCORD_BOT_TOKEN- จำเป็นถ้าใช้ฟีเจอร์ Discord- ตั้งค่าฐานข้อมูลให้ถูกต้อง
ตั้งตามช่องทางเติมเงินที่เลือก:
| ช่องทาง | ตัวแปรที่ต้องตั้ง |
|---|---|
| Auto Slip Verify | THUNDER_API_KEY, PROMPTPAY_NUMBER |
| PromptPay (Stripe) | STRIPE_SECRET_KEY |
| PromptPay QR | PROMPTPAY_NUMBER |
| TrueMoney Voucher | TW_VOUCHER_PHONE |
| TMWeasyAPI | TMWEASY_USERNAME, TMWEASY_PASSWORD, TMWEASY_CON_ID, TMWEASY_API_KEY, TMWEASY_PROMPTPAY_ID |
ข้อควรระวัง
- ห้าม commit
.envลง git - ไฟล์นี้อยู่ใน.gitignoreแล้ว - ห้ามแชร์
.envกับผู้อื่น - ใช้ค่าต่างหากสำหรับ development และ production
- ควรหมุนเวียน credentials ทุก 3-6 เดือน
- เปิด 2FA ในทุกบริการที่รองรับ (Discord, Stripe, ฯลฯ)
การตรวจสอบ
เมื่อเริ่มระบบ จะมีการตรวจสอบ secret ที่จำเป็น:
- ถ้า
DEVIL_API_SECRETว่าง → ระบบจะปิดตัวทันที (ถ้าDEVIL_API_SECRET_REQUIRED=true) - ถ้า API Key ของช่องทางใดว่าง → ช่องทางนั้นจะแสดง
Disabledแต่ระบบยังทำงาน
ตัวอย่างไฟล์ .env ฉบับเต็ม
# API Security
# ⚠️ ค่านี้ต้องเหมือนกับ License ใน devil_market/config/config_main.lua เป๊ะ
# (คัดลอกจาก config_main.lua มาใส่ที่นี่ อย่าใช้ค่าตัวอย่างนี้)
DEVIL_API_SECRET=YOUR_LICENSE_KEY_HERE
DEVIL_API_SECRET_REQUIRED=true
# Discord Bot
DISCORD_BOT_TOKEN=MTIzNDU2Nzg5MC4xMjM0NTY3ODkuQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVo=
# Database
DB_HOST=127.0.0.1
DB_USER=esx_user
DB_PASSWORD=secure_password
DB_NAME=esxlegacy
# Stripe
STRIPE_SECRET_KEY=sk_live_51Hxxxxxxxxxxxxxxx
# Thunder
THUNDER_API_KEY=thunder_live_xxxxxxxxxxxxx
# PromptPay QR
PROMPTPAY_NUMBER=0812345678
# TrueMoney
TW_VOUCHER_PHONE=0812345678
# TMWeasyAPI
TMWEASY_USERNAME=admin
TMWEASY_PASSWORD=secret
TMWEASY_CON_ID=conn_123
TMWEASY_API_KEY=key_abc
TMWEASY_PROMPTPAY_ID=0812345678
# Environment
NODE_ENV=production
# API
API_HOST=0.0.0.0
API_BODY_LIMIT=10mb