پرداخت کریپتو برای Remnawave
برای پنل VPN خود در Remnawave، USDT دریافت کنید. این سرویس کوچک برای یک پلن فاکتور SnapEX Pay میسازد و مشتری را به صفحه پرداخت میزبانیشده میفرستد. وقتی SnapEX Pay پرداخت را تأیید کرد، کاربر Remnawave را میسازد یا کاربر موجود را تمدید میکند و لینک اشتراک را به شما میدهد. کنار پنل شما در Docker اجرا میشود و بکاند فروشگاه یا ربات تلگرام از طریق یک HTTP API با دو endpoint آن را کنترل میکند.
رایگان. نسخه 1.0.0.
چه کاری انجام میدهد
- صفحه پرداخت توسط SnapEX Pay میزبانی میشود: USDT در TRON (TRC20)، Ethereum (ERC20) یا BNB Chain (BEP20)؛ وقتی برای آن مبلغ مسیر تبدیل موجود باشد، کوینهای دیگر هم نمایش داده میشوند.
- پس از پرداخت، یک کاربر Remnawave میسازد (ACTIVE، با تاریخ انقضا، محدودیت ترافیک، Telegram ID اختیاری و internal squadها) یا کاربر موجود را تمدید میکند. در تمدید، روزهای پلن به هر کدام که دیرتر است اضافه میشود: الان یا تاریخ انقضای فعلی.
- وبهوکها با HMAC-SHA256 و بازه ۵ دقیقه بررسی میشوند؛ سپس وضعیت فاکتور دوباره از API SnapEX Pay خوانده میشود و فقط فاکتور پرداختشده کاربر را میسازد.
- ایمن در برابر تکرار: اگر همان وبهوک دو بار برسد، حتی همزمان، کاربر فقط یک بار ساخته میشود.
- پلنها در یک متغیر محیطی؛ دادهها در یک فایل SQLite، بدون پایگاه داده خارجی.
نصب
- در Remnawave به Remnawave Settings → API Tokens بروید و یک توکن بسازید (نه JWT ورود ادمین — پنل آن را برای فراخوانی API رد میکند). UUID مربوط به internal squadهایی را که کاربران جدید باید بگیرند کپی کنید.
- در پنل فروشنده SnapEX Pay یک کلید API با دسترسیهای
invoices.readوinvoices.writeبسازید. - آرشیو را دانلود و از حالت فشرده خارج کنید،
cp .env.example .envرا اجرا کنید وSNAPEX_API_KEY،REMNAWAVE_URL،REMNAWAVE_TOKEN،REMNAWAVE_SQUADSو یکAPI_TOKENتصادفی طولانی را تنظیم کنید. - اجرا کنید:
docker compose up -d،curl -s http://127.0.0.1:8080/healthرا بررسی کنید و سرویس را پشت reverse proxy با HTTPS قرار دهید. - در پنل یک endpoint وبهوک
https://<your service>/webhookاضافه کنید، رمزwhsec_…آن را درSNAPEX_WEBHOOK_SECRETبگذارید و ریاستارت کنید. - از بکاند یا ربات خود
POST /v1/checkoutرا باAuthorization: Bearer <API_TOKEN>فراخوانی کنید،pay_urlرا برای مشتری بفرستید و برای لینک اشتراکGET /v1/orders/{invoice_id}را بررسی کنید.
تنظیمات
| SNAPEX_API_KEY, SNAPEX_WEBHOOK_SECRET | کلید API فروشنده (invoices.read، invoices.write) و رمز امضای وبهوک (whsec_…). |
|---|---|
| SNAPEX_ENVIRONMENT, SNAPEX_FEE_ON | live یا test (فاکتورهای تست بدون پول واقعی تأیید میشوند)؛ چه کسی کارمزد سرویس را میپردازد — merchant یا customer. |
| REMNAWAVE_URL, REMNAWAVE_TOKEN | آدرس پنل (یا http://remnawave:3000 در یک شبکه Docker مشترک) و توکن API Remnawave. |
| REMNAWAVE_SQUADS | UUID مربوط به internal squadها برای کاربران جدید. کاربر بدون squad هیچ inbound ندارد و اشتراکش خالی خواهد بود. |
| API_TOKEN | توکن Bearer که فروشگاه یا ربات شما به /v1/checkout و /v1/orders/… میفرستد. |
| PLANS | id:days:usd:traffic_bytes، جداشده با کاما؛ مقدار 0 بایت = نامحدود. |
سؤالات
کدام نسخههای Remnawave پشتیبانی میشوند؟
Remnawave 2.2 یا جدیدتر؛ تستشده روی 3.4.5.
چرا اشتراک کاربر جدید خالی است؟
کاربر بدون internal squad هیچ inbound ندارد. UUID مربوط به squadها را برای کاربران جدید در REMNAWAVE_SQUADS قرار دهید؛ کاربران موجود squadهای خود را حفظ میکنند.
تمدید چگونه کار میکند؟
پرداخت برای یک نام کاربری موجود، روزهای پلن را به هر کدام که دیرتر است اضافه میکند: الان یا تاریخ انقضای فعلی کاربر. محدودیت ترافیک برابر مقدار پلن جدید تنظیم میشود.
آیا یک پرداخت میتواند کاربر را دو بار بسازد؟
خیر. حتی اگر همان وبهوک دو بار و همزمان برسد، کاربر فقط یک بار ساخته میشود.
ربات تلگرام آماده وجود دارد؟
بله، یک ربات تلگرام جداگانه SnapEX Pay برای Marzban، 3x-ui و Remnawave. این سرویس زمانی مناسب است که ربات یا فروشگاه خودتان را دارید.
یکپارچهسازیهای دیگر
آماده دریافت کریپتو هستید؟
حساب فروشنده بسازید، کلید API بگیرید و ماژول را وصل کنید. 1٪ برای هر پرداخت، بدون هزینه ماهانه.