FA
بیلینگ هاستینگ

پرداخت کریپتو برای Paymenter

یک افزونه درگاه برای Paymenter، پنل بیلینگ متن‌باز هاستینگ. مشتری روی یک فاکتور پرداخت‌نشده SnapEX Pay را انتخاب می‌کند و با USDT در TRC20، ERC20 یا BEP20، یا کوین‌های دیگری که در صفحه SnapEX Pay ارائه می‌شوند پرداخت می‌کند. یک وب‌هوک امضاشده پرداخت را ثبت می‌کند و فاکتور Paymenter به Paid تغییر می‌کند.

دانلود ماژول

رایگان. نسخه 1.1.0.

چه کاری انجام می‌دهد

  • یک افزونه درگاه بومی Paymenter v1 که در Admin → Gateways نمایش داده می‌شود.
  • وب‌هوک‌ها با HMAC-SHA256 و بازه ۵ دقیقه بررسی می‌شوند و پیش از ثبت هر پرداخت، فاکتور دوباره از API SnapEX Pay خوانده می‌شود.
  • پرداخت‌ها یک بار ثبت می‌شوند: وب‌هوک تکراری تراکنش دوم اضافه نمی‌کند. مبلغ ثبت‌شده دقیقاً همان مبلغ فاکتور به ارز فاکتور است.
  • هر سایت Paymenter فقط فاکتورهای خودش را تسویه می‌کند (با هش APP_URL برچسب می‌خورند).
  • حالت تست با فاکتورهای تستی که بدون پول واقعی تأیید می‌شوند؛ تا وقتی درگاه در حالت live است پرداخت‌های تست نادیده گرفته می‌شوند. نرخ ثابت دلار برای فروشگاه‌هایی که به دلار صورت‌حساب نمی‌دهند.

نصب

  1. آرشیو را از حالت فشرده خارج کنید و پوشه آن را به‌صورت extensions/Gateways/SnapexPay/ در Paymenter قرار دهید (به‌طوری که SnapexPay.php و routes.php داخل آن باشند؛ نام باید با نام کلاس یکی باشد). با ایمیج Docker از /app/extensions/Gateways/SnapexPay استفاده کنید.
  2. اگر درگاه نمایش داده نشد، composer dump-autoload -o و php artisan optimize:clear را اجرا کنید.
  3. در Paymenter به Admin → Gateways → New بروید، SnapEX Pay را انتخاب کنید و کلید API (دسترسی‌های invoices.read، invoices.write) را از پنل SnapEX Pay وارد کنید.
  4. در پنل → Developers آدرس وب‌هوک را https://<your-paymenter>/extensions/snapexpay/webhook قرار دهید و رمز whsec_… (فقط یک بار، هنگام اولین ذخیره آدرس، نمایش داده می‌شود) را در Webhook secret وارد کنید.
  5. Environment را روی test بگذارید، یک فاکتور را بپردازید و پرداخت تست را در صفحه SnapEX Pay تأیید کنید؛ فاکتور باید Paid شود. سپس به live برگردید.

تنظیمات

API keyاز پنل SnapEX Pay → API keys، دسترسی‌های invoices.read و invoices.write.
Webhook secretرمز whsec_… مربوط به endpoint وب‌هوک. وب‌هوک‌های بدون امضا یا با امضای نادرست رد می‌شوند.
Network fee paid bymerchant: مشتری مبلغ فاکتور را می‌پردازد و کارمزد از مبلغ دریافتی شما کسر می‌شود. customer: کارمزد SnapEX Pay و کارمزد شبکه به آن اضافه می‌شوند.
Payment window, minutes۱ تا ۱۴۴۰، پیش‌فرض ۶۰.
USD per 1 invoice currency1 اگر Paymenter به دلار صورت‌حساب می‌دهد؛ برای EUR با نرخ 1.08 دلار مقدار 1.08 را وارد کنید.
Environmentlive یا test.
Partner IDاختیاری: Partner ID یکپارچه‌سازی که ماژول را راه‌اندازی کرده است (برنامه معرفی SnapEX Pay). اگر خودتان نصب می‌کنید، خالی بگذارید.
API URLبدون تغییر بگذارید.

سؤالات

درگاه در Admin → Gateways نمایش داده نمی‌شود.

مسیر extensions/Gateways/SnapexPay/SnapexPay.php (حساس به حروف بزرگ و کوچک) و اینکه وب‌سرور بتواند آن را بخواند را بررسی کنید، سپس composer dump-autoload -o && php artisan optimize:clear را اجرا کنید.

مشتری پرداخت کرده اما فاکتور همچنان پرداخت‌نشده است.

تحویل‌های وب‌هوک را در پنل SnapEX Pay بررسی کنید. 400 invalid signature یعنی رمز مطابقت ندارد یا ساعت سرور اشتباه است؛ not_paid یعنی در آن لحظه پرداخت هنوز تأیید نشده بود و فاکتور با رسیدن وب‌هوک invoice.paid تسویه می‌شود.

مشتری کمتر از مبلغ فاکتور پرداخت کرده است.

فاکتورهایی که ناقص پرداخت شده‌اند به‌طور خودکار ثبت نمی‌شوند. پرداخت را در پنل SnapEX Pay بررسی کنید و تراکنش را دستی در Paymenter اضافه کنید.

آیا چند سایت Paymenter می‌توانند از یک حساب SnapEX Pay استفاده کنند؟

هر سایت فقط فاکتورهای خودش را تسویه می‌کند (با هش APP_URL برچسب می‌خورند)، اما هر حساب SnapEX Pay فقط یک آدرس وب‌هوک دارد و افزونه پرداخت‌ها را فقط از طریق وب‌هوک ثبت می‌کند. پس فقط سایتی که به‌عنوان وب‌هوک تنظیم شده، پرداخت‌ها را خودکار ثبت می‌کند.

آماده دریافت کریپتو هستید؟

حساب فروشنده بسازید، کلید API بگیرید و ماژول را وصل کنید. 1٪ برای هر پرداخت، بدون هزینه ماهانه.