درگاه پرداخت ارزدیجیتال چطور کار میکند؟
درگاه پرداخت ارزدیجیتال بین checkout شما و بلاکچین قرار میگیرد. اپلیکیشن شما میگوید «این مشتری ۲۵ دلار»؛ درگاه با آدرس، مبلغ دقیق کوین و مهلت پاسخ میدهد، زنجیره را تا رسیدن پرداخت میبیند و لحظه تأیید به بکاند شما خبر میدهد. جزئیات همینجا مشخص میکند درگاه قابل اتکا کجاست و کجا بیصدا پول از دست میرود.
مشکلی که درگاه واقعاً حل میکند
پذیرش رمزارز بدون درگاه ساده به نظر میرسد: آدرس کیف را منتشر کنید و بگویید بفرستند. در عمل خیلی زود میشکند. نمیدانید کدامیک از دوازده transfer ورودی مربوط به کدام سفارش است. نمیدانید کوین هنگام کلیک مشتری چقدر ارزش داشت. باید خودتان node را روی هر زنجیرهای که پشتیبانی میکنید poll کنید، برای همیشه. و باید تصمیم بگیرید وقتی کسی ۴٪ کمتر فرستاد چه کنید.
درگاه پرداخت ارزدیجیتال همه اینها را برعهده میگیرد: برای هر سفارش دستورالعمل پرداخت جدا میسازد، نرخ را قفل میکند، زنجیرههای مربوط را رصد میکند، قوانین شما درباره کمبود و مازاد را اعمال میکند و یک سیگنال تمیز میدهد: پرداخت شده یا نشده.
گام ۱: بکاند شما تراکنش میسازد
جریان با یک فراخوانی API از سرور شما شروع میشود. مبلغ دلاری، کوین و شبکه انتخاب خریدار و مدت باز بودن پنجره پرداخت را میفرستید. با VisualPay یک POST است:
curl -X POST 'https://visualpay.net/api/v1/merchant/transaction/create' \
-H 'x-api-key: YOUR_MERCHANT_API_KEY' \
-H 'Content-Type: application/json' \
-d '{
"currency_symbol": "USDT",
"network_code": "trc20",
"amount_usd": 25.5,
"ttl": 15,
"order_id": 1001
}'
دو نکته از ظاهرشان مهمترند. اول، قیمت را به USD میفرستید نه به مقدار crypto؛ کاتالوگ شما با satoshi فکر نمیکند. دوم، فراخوانی از سرور شما با کلید API مخفی است، نه از مرورگر، چون هر چیزی در مرورگر را پرداختکننده میتواند ویرایش کند.
گام ۲: درگاه نرخ را قفل میکند
پاسخ ۲۵٫۵۰ دلار را به عدد دقیق crypto تبدیل و قفل میکند. این بخش اغلب دستکم گرفته میشود. قیمت crypto وقتی مشتری اپ کیف را پیدا میکند حرکت میکند؛ اگر مبلغ هنگام رسیدن دوباره محاسبه شود، افت ۳٪ در checkout ده دقیقهای مستقیم از حاشیه شما کم میشود.
قفل در لحظه ساخت یعنی عددی که از خریدار خواسته میشود همان عددی است که به شما اعتبار داده میشود، فارغ از بازار. بهایش مهلت است: قفل فقط در TTL که تنظیم کردید معتبر است. پنجره کوتاه (۱۰ تا ۲۰ دقیقه) ریسک شما را کم میکند؛ پنجره بلند برای کسی که باید از صرافی جابهجا کند راحتتر است. اگر پنجره بدون پرداخت ببندد، تراکنش منقضی میشود و از کسی چیزی کسر نمیشود.
گام ۳: خریدار دستورالعمل پرداخت میگیرد
پاسخ همه چیز لازم را دارد: آدرس، مبلغ دقیق، شبکه و tracking code که باید روی سفارش ذخیره کنید. کاری که با آن میکنید تفاوت درگاه redirect و no-redirect است.
درگاه redirect خریدار را به checkout میزبانیشده روی دامنه provider میبرد. سریع پیاده میشود، اما خریدار در شکنندهترین لحظه خرید از برند شما خارج میشود و کنترل layout، زبان و analytics را از دست میدهید.
درگاه no-redirect داده را به شما برمیگرداند تا خودتان رندر کنید: داخل checkout، صفحه اپ، یا پیام ربات. VisualPay بهصورت پیشفرض اینطور است و برای مواردی که UI نمیخواهید بسازید صفحه میزبانیشده هم دارد.
گام ۴: رصد بلاکچین
وقتی تراکنش باز است، درگاه زنجیره را برای transfer مطابق آن آدرس و مبلغ میبیند. بخشی که واقعاً سخت است خودتان اجرا کنید: node یا indexer برای هر شبکه، reorg، عمق تأیید روی هر زنجیره. USDT روی TRC20 و ERC20 روی یک timeline تسویه نمیشوند.
سه نتیجه باید مدیریت شود و درگاه جدی هر سه را پوشش میدهد:
- پرداخت دقیق. تراکنش به confirmed میرود.
- پرداخت بیش از حد. بیشتر از لازم فرستاده شده؛ پذیرفته میشود و overpayment ثبت میشود، نه اینکه بهخاطر جزئیات فنی رد شود.
- پرداخت کمتر از حد. کمی کمتر رسیده، معمولاً بهخاطر کارمزد کیف یا تایپ دستی. VisualPay حاشیه تحمل کمبود دارد: داخل حاشیه، پرداخت clear میشود و اعتبار از آنچه واقعاً رسید محاسبه میشود.
گام ۵: اپلیکیشن شما مطلع میشود
با تأیید پرداخت، درگاه webhook endpoint شما را صدا میزند. سیگنالی که بکاند باید روی آن عمل کند: سفارش paid، کلید لایسنس، ارسال کالا. VisualPay هنگام ساخت تراکنش و دوباره وقتی وضعیت نهایی شد webhook میفرستد و فقط endpointهای HTTPS میپذیرد.
یک قانون: هرگز fulfilment را فقط به حرف مرورگر تکیه ندهید. callback redirect برای UX است. قبل از تحویل چیز باارزش، webhook را بگیرید یا خودتان status endpoint را صدا بزنید. هر کسی میتواند URL موفقیت را دستی باز کند.
گام ۶: تسویه
سرانجام پول باید به شما برسد. اینجا درگاهها بیشتر فرق میکنند و انتخاب پیامد واقعی دارد.
درگاه custodial وجه را در کیف خودش میگیرد، موجودی نشان میدهد و بعداً (معمولاً بعد از درخواست برداشت و انتظار) payout میکند. در آن فاصله درآمد شما تعهد روی ترازنامه دیگری است.
درگاه non-custodial به کیفی که کنترل میکنید تسویه میکند. با VisualPay هنگام ساخت merchant برای هر کوین و شبکه آدرس خودتان را اعلام میکنید. با عبور موجودی آن شبکه از آستانه تسویه، transfer خودکار اجرا میشود (معمولاً زیر یک دقیقه) و تنها کسر کارمزد شبکه زنجیره است. فرم برداشت و دوره نگهداری نیست چون چیزی نگه داشته نمیشود.
هزینه چقدر است
بیشتر درگاهها درصد هر پرداخت موفق میگیرند. اطراف آن فرق میکند: setup، حداقل ماهانه، کارمزد payout، پله حجم.
VisualPay یک درصد ثابت برای هر تراکنش تأییدشده میگیرد و بس: بدون setup، اشتراک ماهانه، کارمزد payout یا پله حجم. همچنین تعیین میکنید کارمزد را کدام طرف checkout بپردازد: به خریدار (invoice بزرگتر میشود تا سفارش کامل اعتبار بگیرد) یا از merchant (از تسویه شما کم میشود). invoice منقضی یا لغوشده بدون پرداخت هزینه ندارد چون ارزشی جابهجا نشده.
جمعبندی
کل چرخه این است: ساخت تراکنش، قفل نرخ، نشان دادن به خریدار، دیدن زنجیره، اطلاع به بکاند، تسویه به کیف. درگاه خوب پنج قدم از شش را نامرئی میکند و کنترل صریح روی ششمین میدهد.
وقتی providerها را مقایسه میکنید، سؤالات مهم محدودند: نرخ در ساخت قفل میشود؟ میتوانم مرحله پرداخت را در UI خودم رندر کنم؟ پرداخت کمتر از حد چه میشود؟ پول در کیف چه کسی مینشیند؟ پاسخها بیشتر از درصد تیتر میگویند.
همین امروز USDT و USDC بپذیرید
بدون KYC شروع کنید، چکاوت را روی سایت خود نگه دارید و به کیف پول خودتان تسویه کنید. ثبتنام و اولین مرچنت رایگان است.