پرداخت کریپتو برای FOSSBilling
یک آداپتور پرداخت برای FOSSBilling که به مشتریان اجازه میدهد فاکتورها را از طریق SnapEX Pay با USDT (TRC20، ERC20، BEP20) و کوینهای دیگر بپردازند. وقتی مشتری روی فاکتور SnapEX Pay را انتخاب میکند، آداپتور یک فاکتور SnapEX Pay میسازد و دکمهای برای رفتن به صفحه پرداخت نشان میدهد (یا اگر FOSSBilling بخواهد، مستقیم به آنجا هدایت میکند). پس از تأیید پرداخت، یک وبهوک امضاشده به آدرس IPN در FOSSBilling میرسد، حساب مشتری شارژ میشود و فاکتور پرداختشده علامت میخورد.
رایگان. نسخه 1.2.0.
چه کاری انجام میدهد
- بدون کیف پول، نود یا ناظر بلاکچین: وجه به موجودی فروشنده SnapEX Pay شما میرود.
- یک آداپتور تکفایلی که در System → Payment gateways نمایش داده میشود.
- وبهوکها با HMAC-SHA256 و بازه ۵ دقیقه بررسی میشوند و پیش از ثبت هر چیزی، فاکتور دوباره از API SnapEX Pay خوانده میشود.
- پرداختها یک بار ثبت میشوند: وبهوک تکراری حساب مشتری را دوباره شارژ نمیکند و اگر پایگاه داده پشتیبانی کند، تسویه با قفل پایگاه داده انجام میشود. اگر مبلغ فاکتور پس از پرداخت تغییر کرده باشد، چیزی خودکار ثبت نمیشود.
- گزینه Enable Test Mode در FOSSBilling فاکتورهای تست SnapEX Pay بدون پول واقعی میسازد؛ تا وقتی درگاه در حالت live است، پرداختهای تست هرگز اعمال نمیشوند.
- هر سایت FOSSBilling فقط فاکتورهایی را که خودش ساخته تسویه میکند؛ فاکتورهای غیردلاری با نرخ ثابت یا با نرخهای ارز خود FOSSBilling تبدیل میشوند.
نصب
- فایل
SnapexPay.phpرا از آرشیو در پوشه اصلی FOSSBilling کپی کنید تا درlibrary/Payment/Adapter/SnapexPay/SnapexPay.phpقرار بگیرد (نام پوشه و فایل به حروف بزرگ و کوچک حساس است) و برای کاربر وبسرور قابل خواندن باشد. - در بخش ادمین به System → Payment gateways → New payment gateway بروید و SnapexPay را نصب کنید.
- درگاه را باز کنید، کلید API (دسترسیهای
invoices.read،invoices.write) را از پنل SnapEX Pay وارد کنید، Enabled و Allow One Time Payments را تیک بزنید و ذخیره کنید. - IPN Callback URL نمایشدادهشده در صفحه درگاه (
https://<your-fossbilling>/ipn.php?gateway_id=<id>) را کپی کنید، آن را بهعنوان آدرس وبهوک در پنل SnapEX Pay (Developers) قرار دهید و رمزwhsec_…(فقط یک بار، هنگام اولین ذخیره آدرس، نمایش داده میشود) را در Webhook secret وارد کنید. - Enable Test Mode را روشن کنید، یک فاکتور را بپردازید و پرداخت تست را در صفحه SnapEX Pay تأیید کنید؛ فاکتور باید Paid شود. سپس حالت تست را خاموش کنید.
تنظیمات
| API key | از پنل SnapEX Pay → API keys، دسترسیهای invoices.read و invoices.write. |
|---|---|
| Webhook secret | رمز whsec_… مربوط به endpoint وبهوک. وبهوکهای بدون امضا یا با امضای نادرست رد میشوند. |
| Network fee paid by | merchant: مشتری مبلغ فاکتور را میپردازد و کارمزد از مبلغ دریافتی شما کسر میشود. customer: کارمزد SnapEX Pay و کارمزد شبکه به آن اضافه میشوند. |
| Payment window, minutes | ۱ تا ۱۴۴۰، پیشفرض ۶۰. |
| USD per 1 unit of invoice currency | برای فاکتورهای دلاری نادیده گرفته میشود. برای ارزهای دیگر یک نرخ ثابت، یا خالی برای استفاده از نرخهای ارز خود FOSSBilling (USD باید در System → Currencies وجود داشته باشد). |
| Enable Test Mode | کلید خود FOSSBilling: روشن — فاکتورهای تست SnapEX Pay، خاموش — فاکتورهای واقعی. |
| Partner ID | اختیاری: Partner ID یکپارچهسازی که ماژول را راهاندازی کرده است (برنامه معرفی SnapEX Pay). اگر خودتان نصب میکنید، خالی بگذارید. |
| API URL | خالی بگذارید. |
سؤالات
کدام نسخههای FOSSBilling پشتیبانی میشوند؟
FOSSBilling 0.8.x و نسخههای توسعه فعلی.
SnapexPay در New payment gateway نمایش داده نمیشود.
مسیر library/Payment/Adapter/SnapexPay/SnapexPay.php (حساس به حروف بزرگ و کوچک) نسبت به پوشهای که ipn.php در آن است را بررسی کنید و اینکه وبسرور بتواند فایل را بخواند.
مشتری پرداخت کرده اما فاکتور همچنان پرداختنشده است.
Invoices → Transactions را باز کنید. اگر تراکنشی نیست، تحویلهای وبهوک را در پنل SnapEX Pay بررسی کنید و اینکه URL شامل ?gateway_id= باشد. پس از رفع مشکل میتوانید تراکنش را از بخش ادمین دوباره پردازش کنید.
تراکنش میگوید "partially paid"، "already paid" یا "total changed".
این موارد هرگز بهطور خودکار ثبت نمیشوند. پرداخت را در پنل SnapEX Pay بررسی کنید، سپس موجودی اضافه کنید یا فاکتور را دستی پرداختشده علامت بزنید.
آیا چند سایت FOSSBilling میتوانند از یک حساب SnapEX Pay استفاده کنند؟
هر سایت فقط فاکتورهای خودش را تسویه میکند، اما هر حساب SnapEX Pay فقط یک آدرس وبهوک دارد و آداپتور پرداختها را فقط از طریق وبهوک تأیید میکند. پس فقط سایتی که آدرس IPN آن بهعنوان وبهوک تنظیم شده، پرداختها را خودکار تأیید میکند.
یکپارچهسازیهای دیگر
آماده دریافت کریپتو هستید؟
حساب فروشنده بسازید، کلید API بگیرید و ماژول را وصل کنید. 1٪ برای هر پرداخت، بدون هزینه ماهانه.