پرش به مطلب اصلی

تأمین گس و کارمزد برداشت‌ها

وقتی OrcaRail برداشت‌ها را اجرا می‌کند (تخلیه، انتقال، گام‌های پل)، کارمزد تراکنش (گس) باید روی هر زنجیره پرداخت شود. این صفحه سه سازوکار تأمین را توضیح می‌دهد (paymaster (گس حمایت‌شده)، تأمین با موجودی بومی و کیف پول داغ) و ترتیب استفاده از آن‌ها را.

این صفحه بیشتر برای گردانندگانی است که API را مستقر و متغیرهای محیطی را تنظیم می‌کنند، و برای توسعه‌دهندگانی که می‌خواهند بدانند گس چطور پرداخت می‌شود.

Paymaster (گس حمایت‌شده)​

وقتی paymaster تنظیم شده باشد، سیستم می‌تواند هزینه گس را بپردازد تا کیف پول واریز کاربر کارمزد ندهد.

  • پیکربندی: ALCHEMY_PAYMASTER_POLICY_ID را در محیط تنظیم کنید. اگر تنظیم شده باشد و زنجیره در مجموعه پشتیبانی‌شده باشد، سیستم از paymaster آلکمی استفاده می‌کند (ERC-4337 روی EVM؛ fee payer آلکمی روی سولانا).
  • اثر: کیف پول کاربر گس نمی‌پردازد؛ حامی (سیاست آلکمی) آن را پوشش می‌دهد. این امکان می‌دهد کل موجودی توکن از کیف پول واریز فرستاده شود.
  • محل استفاده: جریان‌های smart account در EVM (تخلیه، انتقال، دسته‌ای)، اجرای Relay/پل، و سولانا وقتی سیاست آلکمی تنظیم شده باشد.
  • جایگزین: اگر paymaster تنظیم نشده باشد، شکست بخورد یا زنجیره پشتیبانی نشود، سیستم به تأمین با موجودی بومی یا کیف پول داغ برمی‌گردد.

تأمین با موجودی بومی​

تأمین با موجودی بومی یعنی کیف پول واریز (یا smart account) گس را از موجودی بومی خودش بپردازد (مثلاً ETH/BNB روی EVM، SOL روی سولانا، BTC روی بیت‌کوین).

  • اثر: کیف پول واریز کاربر باید به اندازه کافی توکن بومی برای پوشش کارمزد داشته باشد. باقی‌مانده توکن هدف همچنان قابل ارسال است.
  • نقش: در صورت امکان به‌عنوان اولین سطح در جریان‌های تخلیه/انتقال استفاده می‌شود تا کل موجودی توکن بدون نیاز به کیف پول داغ یا paymaster فرستاده شود.

کیف پول داغ​

کیف پول داغ پیکربندی‌ای فقط برای گردانندگان است. کاربران API آن را تنظیم نمی‌کنند؛ با متغیرهای محیطی استقرار تنظیم می‌شود.

زنجیرهمتغیر محیطیکاربرد
EVMHOT_WALLET_PRIVATE_KEYپرداخت‌کننده کارمزد و نجات برای برداشت‌های EVM
سولاناSOLANA_HOT_WALLET_PRIVATE_KEYپرداخت‌کننده کارمزد و نجات برای برداشت‌های سولانا
بیت‌کوینBITCOIN_HOT_WALLET_PRIVATE_KEYورودی‌های کارمزد و نجات برای برداشت‌های بیت‌کوین

هر زنجیره یک کلید اختیاری تست‌نت هم می‌پذیرد: HOT_WALLET_TESTNET_PRIVATE_KEY، SOLANA_HOT_WALLET_TESTNET_PRIVATE_KEY و BITCOIN_HOT_WALLET_TESTNET_PRIVATE_KEY. کارهای تست‌نت سازمان‌های sandbox اگر کلید تست‌نت تنظیم شده باشد با آن امضا می‌شوند، تا ترافیک sandbox هرگز از کلید شبکه اصلی استفاده نکند. اگر تنظیم نشده باشد، تست‌نت‌ها از کلید مشترک استفاده می‌کنند.

نقش‌ها:

  • پرداخت‌کننده کارمزد: وقتی paymaster در دسترس نیست یا شکست می‌خورد، کیف پول داغ می‌تواند گس را بپردازد تا کیف پول واریز همچنان کل موجودی توکن را بفرستد.
  • نجات: اگر کیف پول واریز نتواند انتقال را کامل کند (مثلاً موجودی بومی کافی برای گس نداشته باشد)، کیف پول داغ می‌تواند از موجودی خودش به آدرس برداشت بفرستد تا وجوه گیر نکنند.

اگر برای زنجیره‌ای کیف پول داغ تنظیم نشده باشد، گزینه‌های جایگزین محدودند (مثلاً فقط تأمین شخصی، یا شکست در صورت ناکافی بودن آن).

ترتیب جایگزین‌ها (بر اساس زنجیره)​

EVM​

  1. سطح ۱: UserOp با تأمین شخصی (کیف پول واریز گس را از موجودی بومی می‌پردازد).
  2. سطح ۲: paymaster (گس حمایت‌شده وقتی ALCHEMY_PAYMASTER_POLICY_ID تنظیم شده و زنجیره پشتیبانی می‌شود).
  3. سطح ۳: نجات با کیف پول داغ (کیف پول داغ از موجودی خودش می‌فرستد).

سولانا​

  1. سطح ۱: حمایت آلکمی (fee payer از سیاست آلکمی در صورت تنظیم).
  2. سطح ۲: کیف پول داغ به‌عنوان پرداخت‌کننده کارمزد (کیف پول واریز می‌فرستد؛ کیف پول داغ کارمزد را می‌پردازد).
  3. سطح ۳: نجات با کیف پول داغ (کیف پول داغ از موجودی خودش می‌فرستد).

بیت‌کوین​

ورودی‌های کارمزد و نجات وقتی BITCOIN_HOT_WALLET_PRIVATE_KEY تنظیم شده باشد از کیف پول داغ بیت‌کوین استفاده می‌کنند.

جمع‌بندی​

  • Paymaster: توسط گرداننده تنظیم می‌شود (ALCHEMY_PAYMASTER_POLICY_ID). در صورت دسترسی اول استفاده می‌شود؛ مانع پرداخت گس توسط کاربر می‌شود.
  • تأمین با موجودی بومی: پیکربندی ندارد (موجودی کیف پول). کیف پول واریز گس را از توکن بومی‌اش می‌پردازد.
  • کیف پول داغ: توسط گرداننده تنظیم می‌شود (*_HOT_WALLET_PRIVATE_KEY برای هر زنجیره). وقتی paymaster یا تأمین شخصی شکست بخورند، به‌عنوان پرداخت‌کننده کارمزد یا نجات استفاده می‌شود.

همچنین ببینید​