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

حداقل پرداخت

OrcaRail برای پرداخت‌ها حداقل مبلغ انتقال برای هر شبکه اعمال می‌کند. این حداقل‌ها برای اعتبارسنجی مبلغ پرداخت و به‌عنوان کف مبالغ کارمزد پشتیبانی و کمیسیون استفاده می‌شوند تا کارمزدهای بسیار کوچک روی زنجیره خرده (dust) ایجاد نکنند.

متغیرهای محیطی​

حداقل‌ها برای هر نوع زنجیره با متغیرهای محیطی تنظیم می‌شوند. مقادیر بر حسب کوچک‌ترین واحد شبکه هستند (lamport، wei، sat).

متغیرزنجیرهپیش‌فرضتوضیح
PAYMENTS_MIN_AMOUNT_SOLANA_LAMPORTSسولانا890880حداقل انتقال بر حسب lamport.
PAYMENTS_MIN_AMOUNT_EVM_WEIEVM (Ethereum، Polygon، Base و غیره)(ندارد)اختیاری. اگر تنظیم شود، حداقل بر حسب wei.
PAYMENTS_MIN_AMOUNT_BITCOIN_SATSبیت‌کوین546حداقل بر حسب ساتوشی (حد dust).

اگر متغیری برای یک نوع زنجیره تنظیم نشده باشد، API برای آن زنجیره حداقلی اعمال نمی‌کند (به‌جز سولانا و بیت‌کوین که از پیش‌فرض‌های بالا استفاده می‌کنند). EVM پیش‌فرض ندارد؛ اگر روی EVM حداقل می‌خواهید، PAYMENTS_MIN_AMOUNT_EVM_WEI را تنظیم کنید.

حداقل چطور استفاده می‌شود​

۱. اعتبارسنجی مبلغ پرداخت​

هنگام ساخت لینک پرداخت یا اعتبارسنجی مبلغ پرداخت‌کننده، API بررسی می‌کند که مبلغ پرداخت کمتر از حداقل شبکه پرداخت‌کننده نباشد.

  • برای توکن‌های بومی (مثلاً SOL، ETH، BTC)، حداقل مستقیماً بر حسب کوچک‌ترین واحد توکن (lamport، wei، sat) مقایسه می‌شود.
  • برای توکن‌های غیربومی (مثلاً USDC روی اتریوم)، حداقل بر حسب واحد بومی زنجیره تعریف می‌شود؛ API آن را با قیمت دلاری به واحد توکن پرداخت‌کننده تبدیل می‌کند تا همان حداقل اقتصادی اعمال شود. اگر حداقل تبدیل‌شده قابل محاسبه نباشد (مثلاً قیمت موجود نباشد)، ممکن است اعتبارسنجی برای آن توکن انجام نشود.

اگر مبلغ کمتر از حداقل باشد، API خطا برمی‌گرداند (مثلاً Amount is below the minimum for this network).

۲. کف کارمزد پشتیبانی و کمیسیون​

وقتی درصد پشتیبانی یا درصد کمیسیون بیشتر از ۰ باشد، API مبلغ کارمزد را به‌صورت درصدی از مبلغ اصلی محاسبه می‌کند. برای جلوگیری از خرده‌ها (خروجی‌های بسیار کوچکی که روی زنجیره غیراقتصادی یا نامعتبرند)، API هر کدام از این مبالغ را دست‌کم به حداقل شبکه زنجیره پرداخت‌کننده می‌رساند.

  • supportMinimumApplied: وقتی کارمزد پشتیبانی به حداقل شبکه رسانده شود، پیش‌فاکتور supportMinimumApplied: true را دارد. مبلغ واقعی پشتیبانی ممکن است از درصد دقیق مبلغ اصلی بیشتر باشد.
  • commissionMinimumApplied: وقتی کمیسیون به حداقل شبکه رسانده شود، پیش‌فاکتور commissionMinimumApplied: true را دارد. مبلغ واقعی کمیسیون ممکن است از درصد دقیق بیشتر باشد.

این تضمین می‌کند اگر درصد کمی (مثلاً ۰٫۱٪) دریافت کنید، کارمزد به کسری از سنت زیر حداقل زنجیره تبدیل نشود؛ بلکه تا حداقل بالا برود تا خروجی معتبر باشد.

جمع‌بندی​

حالترفتار
مبلغ پرداخت بسیار کمدرخواست رد می‌شود (خطای اعتبارسنجی).
کارمزد پشتیبانی > ۰، مبلغ محاسبه‌شده < حداقلمبلغ پشتیبانی = حداقل؛ supportMinimumApplied: true.
کمیسیون > ۰، مبلغ محاسبه‌شده < حداقلمبلغ کمیسیون = حداقل؛ commissionMinimumApplied: true.

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

  • کارمزدها — نحوه محاسبه پشتیبانی و کمیسیون و افزوده شدنشان به پیش‌فاکتور.
  • حداقل برداشت — آستانه برداشت خودکار (جدا از حداقل پرداخت).