

Escrow Smart Contract
مشتری و ارائهدهنده پول را در قرارداد هوشمند واریز میکنند. وقتی کار انجام شد و هر دو طرف موافق بودند، پرداخت به ارائهدهنده میرسد.
چگونه کار میکند
پنج گام تا قرارداد
با یک راهنمای ساده، قرارداد هوشمند بسازید.
با یک راهنمای ساده، قرارداد هوشمند بسازید.
- گام 1نقش در قراردادنقش خود را در قرارداد انتخاب کنید. قرارداد فقط دو نقش دارد — مشتری و ارائهدهنده. داور شخص ثالثی وجود ندارد.9:41LTE
نقش در قرارداد
- گام 2انتخاب ارزارز قرارداد را انتخاب کنید. GRAM — ارز بومی TON — برای معاملات سریع و کوچک مناسب است، چون نسبتاً پرنوسان است. USDT ارز پایدارتری برای معاملات بزرگ و بلندمدت است.9:41LTE
انتخاب ارز
- گام 3مبلغ قراردادمبلغ قرارداد را به ارز انتخابشده وارد کنید. این مبلغ پس از انجام کار به ارائهدهنده منتقل میشود.9:41LTE
مبلغ قرارداد
مبلغ قرارداد بهای کار است. مشتری آن را واریز میکند.
از 10٪ تا 90٪. پیشفرض: 30%.
0,4% از مبلغ، اما نه بیشتر از 15 GRAM.
- گام 4نشانیهای کیف پولنشانیهای کیف پول را جایگذاری کنید. بعدها واریز و برداشت پول از طریق همین کیف پولها انجام میشود.9:41LTE
نشانیهای کیف پول
- گام 5بررسی قراردادپیش از دیپلوی، اطلاعات واردشدهٔ قرارداد را بررسی کنید.9:41LTE
بررسی قرارداد
نقش در قرارداد
پس از ایجاد
کارت قرارداد
شما مشتری هستید و ارز USDT است. شش تصویر از همان کارتی که در پنل واقعی هست، با همهٔ اقدامات ممکن در هر مرحله.
تازه ایجاد شده
موجودیها صفر است. میتوانید مبلغ معامله را، یا یکباره همراه با مبلغ اضافی تا 30٪ واریز کنید، یا تا وقتی کسی چیزی واریز نکرده، قرارداد را حذف کنید.
مبلغ واریز شد، در انتظاریم
مبلغ معامله در قرارداد است، اما سپردهٔ ارائهدهنده هنوز نیامده. تا وقتی وضعیت «فعال» نشده، میتوانید پول خود را برداشت کنید. هنوز میتوانید مبلغ اضافی تا 30٪ را تکمیل کنید.
ارائهدهنده واریز کرد
هر دو مبلغ توافقشده موجود است — قرارداد فعال است. مبالغ مسدود شدهاند و برداشت USDT ممکن نیست. میتوانید کار را بپذیرید، سهم دیگری پیشنهاد دهید یا مبلغ اضافی (سپردهٔ اضافی مشتری) واریز کنید.
سپردهٔ 20٪ اضافه شد
+200 USDT بیش از مبلغ معامله وجود دارد. تا سقف 30٪ هنوز 100 USDT جا هست. برداشت همچنان بسته است: قرارداد فعال مبلغ قرارداد بهعلاوهٔ مبلغ اضافی را نگه میدارد.
80٪ به ارائهدهنده پیشنهاد شد.
اگر ارائهدهنده موافقت کند، 800 USDT دریافت میکند. دکمهٔ «پذیرش کار» ناپدید شد؛ فقط اگر 100٪ تعیین کنید دوباره ظاهر میشود. پیشنهاد را میتوان عوض کرد و مبلغ اضافی را افزایش داد.
ارائهدهنده موافقت کرد
قرارداد تکمیل شد: 800 USDT به ارائهدهنده رسید و 4 USDT حقالامتیاز سرویس شد. 400 USDT برای شما مانده که میتوانید برداشت کنید.
Q&A
پرسشهای متداول
طرف سوم کجاست؟
وجود ندارد. ارائهدهنده سپردهاش را به خطر میاندازد. به نفع اوست که کار را تا آخر انجام دهد.
سپردهٔ ارائهدهنده بهطور پیشفرض 30% مبلغ معامله است. شاید به نظر برسد که او برتری دارد: او 30% را به خطر میاندازد و شما 100% را. اما آنچه مهم است درصد نیست، بلکه پول است. آن 30% پول خود اوست و از دست دادنش ممکن است برای او همانقدر دردناک باشد که از دست دادن 100% برای شما. هیچکس بیدلیل پول خودش را فدا نمیکند.
خطر دیگر: مشتری کار را تحویل گرفته و ممکن است پول را ندهد. در این حالت دو راه هست. اول — وقتی کار تقریباً آماده است، پیشنهاد تسویه زودتر بدهید. دوم — از مشتری بخواهید مبلغ اضافی تا 30٪ بیش از مبلغ (سپرده) واریز کند. پس از تکمیل قرارداد، مشتری سپردهاش را پس میگیرد، پس دلیلی برای بستن معامله (قرارداد) دارد.
چرا باید به شما اعتماد کنم؟
لازم نیست اعتماد کنید. قرارداد هوشمند عمومی است. نشانی قرارداد شما هش دادههای اولیه و کد است. اگر کد عوض شود، نشانی دیگری خواهد بود.
میتوان آن را باز کرد و دید (مثلاً در Tonviewer). تنها نکته این است که باید کد را فهمید — مشکل اصلی همین است. اما در عوض، این اثبات 100٪ است. میتوانید کد را به یک مدل هوش مصنوعی هم بدهید. در ادامه کد قرارداد با سادهترین توضیح ممکن آمده است.
ContractUSDT
این فهرست واردسازیهاست: ثابتها و توابع کمکی.
توصیف کوتاه قرارداد.
فهرست اقدامات در دسترس روی قرارداد.
تابع کمکی: قرارداد فعال است یا نه. وقتی همه مبالغ خود را واریز کردند، قرارداد فعال میشود — دیگر نمیتوان همینطوری برداشت کرد.
تابع باقیمانده. به هر پیام کمی GRAM برای پردازش تراکنش ضمیمه میشود. این تابع مازاد را برمیگرداند.
نشانی کیف پول جتون را محاسبه میکند. این نشانی به نشانی قرارداد بستگی دارد.
اگر انتقال ناموفق باشد — پول برمیگردد و قرارداد سوابق را اصلاح میکند: چه کسی چقدر دارد.
اگر بدنهٔ پیام خالی باشد — کاری نمیکنیم.
در ادامه، تعریف متغیرها.
واریز USDT: انتقالها را میپذیرد و ثبت میکند که هر کس چقدر USDT دارد.
درصد پرداخت را تغییر میدهد. اگر کار فقط نیمهتمام است، میتوان 50٪ پیشنهاد داد. ارائهدهنده موافقت کرد — قرارداد اجرا شد. نه — باز هم مذاکره کنید.
اگر ارائهدهنده موافقت کند، قرارداد سهم او بهعلاوهٔ سپردهاش را به او میپردازد و باقیمانده به شما میرسد. در 0٪ کل معامله لغو میشود و همه پولشان را پس میگیرند. در این حالت کارمزد ۰٫۴% به قرارداد پرداخت نمیشود.
بزرگترین بخش — بازگشت وجوه را مدیریت میکند.
حالت خطا. اگر کیف پول گم شود یا پول خارج از ثبت عبور کرده باشد، یک طرف میتواند کنترل را به طرف دیگر بدهد. وضعیت «خارج از ثبت» در واقع ناممکن است، مگر اینکه عمداً انجام شود. اما بگذار باشد. ولی فراموش کردن یا گم کردن کیف پول کاملاً ممکن است.
ErrRefund — برداشت اضطراری جتونهایی که بدون اعلان رسیدهاند و ثبت نشدهاند. یا وقتی کیف پول گم شده است (دقیقتر بگوییم، رمز عبور آن گم شده است).
Burn — نابود کردن قرارداد تا پوستهٔ خالی در شبکه سرگردان نماند. کسی که آن را ایجاد کرده (مشتری یا ارائهدهنده) یا ادمین میتواند آن را بسوزاند — و فقط وقتی موجودی مشتری و ارائهدهنده صفر باشد.
کد منبع تأییدشدهٔ سه قرارداد. هش کد با آنچه روی شبکه است یکی است. هر پیوند منبع را در TON Verifier باز میکند.
ContractMinterContractUSDTContractTON