API واریا شاپ
سایت یا ربات تلگرام خودت را به واریا شاپ وصل کن. محصولات و قیمت لحظهای را بخوان، بازیکن را اعتبارسنجی کن و سفارش شارژ بازی و گیفتکارت ثبت کن — همه از کیف پول واریای تو پرداخت میشود. همهچیز از واریا شاپ ارائه میشود.
احراز هویت
هر درخواست باید کلید تو را در هدر داشته باشد:
X-API-Key: YOUR_API_KEY
- کلیدها از داشبورد ساخته میشوند و فقط یکبار نمایش داده میشوند — امن نگهدار.
- لیست IP مجاز اختیاری: فقط سرورهای تو میتوانند از کلید استفاده کنند.
- محدودیت پیشفرض: ۶۰ درخواست در دقیقه (روی هر کلید قابل تنظیم).
اندپوینتها
/balance
موجودی کیف پول
/games
لیست همه بازیها و محصولات (با آدرس عکس واریا)
/games/{code}/catalogue
پکیجها و قیمت فروش لحظهای یک بازی
/games/{code}/fields
فیلدهای لازم یک بازی (آیدی بازیکن، سرور و ...)
/games/{code}/servers
لیست سرور/ریجن یک بازی (در صورت نیاز)
/player/validate
اعتبارسنجی آیدی بازیکن/اکانت
/orders
ثبت سفارش (پرداخت از کیف پول)
/orders/{order_id}
وضعیت یک سفارش
/orders
لیست سفارشهای تو
/transactions
لیست تراکنشهای کیف پول
نمونه: ثبت سفارش
curl -X POST https://api.waryashop.org/api/v1/orders \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"game": "pubgm",
"catalogue_name": "60 UC",
"player_id": "12345678",
"server_id": null,
"customer_reference": "MY-SITE-ORDER-123",
"callback_url": "https://your-site.com/webhook/warya"
}'
{
"success": true,
"order_id": "WR-20260707-8F3KD",
"status": "processing",
"charged": "0.95",
"currency": "USD"
}
قیمت قبل از کسر، لحظهای خوانده میشود. اگر موجودی کیف پول کم باشد، خطای INSUFFICIENT_BALANCE میگیری و چیزی کم نمیشود. همه درخواستها idempotent هستند.
همین اندپوینت /orders گیفتکارت و ووچر هم میفروشد. کد محصول را بهعنوان «game» و پکیج آن را بهعنوان «catalogue_name» بفرست؛ برای محصولات player_id لازم نیست.
curl -X POST https://api.waryashop.org/api/v1/orders \
-H "X-API-Key: YOUR_API_KEY" -H "Content-Type: application/json" \
-d '{ "game": "prod_netflix-brazil", "catalogue_name": "Netflix 100 BRL" }'
وقتی سفارش تکمیل شد، GET /orders/{order_id} کد تحویل را در فیلد «delivery» برمیگرداند.
وضعیتهای سفارش
برای سفارشهای ووچر/گیفتکارت، کد تحویل پس از تکمیل روی همان سفارش نمایش داده میشود.
وبهوک
اگر callback_url بدهی، واریا هنگام رسیدن سفارش به وضعیت نهایی یک POST به آن میفرستد:
POST https://your-site.com/webhook/warya
X-Warya-Signature: {hmac_sha256}
{
"event": "order.completed",
"order_id": "WR-20260707-8F3KD",
"customer_reference": "MY-SITE-ORDER-123",
"game": "pubgm",
"catalogue_name": "60 UC",
"player_id": "12345678",
"status": "completed",
"timestamp": "2026-07-07T12:00:00Z"
}
هدر X-Warya-Signature را بررسی کن (HMAC-SHA256 بدنه با سیکرت کلید تو). تلاش مجدد: ۱ دقیقه، ۵، ۱۵، ۱ ساعت.
کدهای خطا
MISSING_API_KEY
هدر X-API-Key ارسال نشده
INVALID_API_KEY
کلید نامعتبر، غیرفعال یا لغوشده
IP_NOT_ALLOWED
IP درخواست در لیست مجاز کلید نیست
INSUFFICIENT_BALANCE
موجودی کیف پول کافی نیست
VALIDATION_FAILED
ورودی یا آیدی بازیکن نامعتبر
RATE_LIMITED
درخواست بیش از حد مجاز
- قیمتها لحظهای خوانده میشوند؛ پول با decimal است (نه float).
- عکس محصولات از api.waryashop.org ارائه میشود — مشتری تو فقط واریا را میبیند.
- بعضی همکاران فقط دادهٔ محصول را میخواهند و عکس را نمیگیرند — استفاده از فیلد عکس اختیاری است.