یک افزونه تخصصی ووکامرس برای شارژ خودکار کیف پول کاربران از طریق درگاه امن دارمت.
توجه داشته باشید که دارمت (https://daramet.com/) به هیچ عنوان به عنوان یک درگاه بانک ثالث مثل زیبال و یا زرین پال کار نمیکنه و مشتری خدمات خاصی نیاز داشت که تونستیم با کرون جاب (انجام کارهای زمانبندی شده) به سرانجام برسونیم.
---
🎯 کاری که انجام میدهد
کاربران میتوانند کیف پول خود را از طریق درگاه **دارمت (Daramet)** شارژ کنند. پس از پرداخت، سیستم به صورت خودکار پرداخت را شناسایی و کیف پول را شارژ میکند.
یعنی چی؟ یعنی اینکه کیف پول (https://wordpress.org/plugins/woo-wallet/) مبلغ شارژ و میزنید میره به صفحه پرداخت، صفحه پرداخت اگر با شورت کد ساخته شده باشد و نه گوتنبرگ درگاه پرداخت دارمت و نشون میده و با webintent دارمت به شکل زیر:
https://daramet.com/MamadReZ?webintent&donate=10000&message=$order_id
پرداخت انجام میشه و با به صفحه اصلی دارمت منتقل میشه. (توجه کنید مثل درگاه های بانک به سایت اصلی برگردونده نمیشه و به اصطلاح ریدایرکت پیج نداره و انجام نمیدن.) به همین دلیل وقتی کاربر برمیگرده سایت، نهایت تا دو دقیقه بعدش از کرون جاب سرور که هر 2 دقیقه یکبار کار میکنه چک میکنه که اخرین پرداخت های دارمت با پیامی شامل order_id$ داره یا نه، اگر داشته باشه سفارش ووکامرس و به وضعیت در حال انجام تغییر میده و کیف پول و شارژ میکنه.
این کلیت بود، تو بخش زیر میتونید جزئیات بیشتری ببینید.
---
🔄 چرخه عملکرد
```
1️⃣ کاربر مبلغ شارژ را انتخاب میکند
2️⃣ به درگاه دارمت هدایت میشود
3️⃣ پرداخت را انجام میدهد
4️⃣ کرون جاب هر ۲ دقیقه وضعیت را بررسی میکند
5️⃣ پرداخت شناسایی میشود
6️⃣ کیف پول کاربر شارژ میشود
7️⃣ ایمیل تایید ارسال میشود
---
✨ امکانات کلیدی
🛡️ امنیت و مدیریت
- **بررسی خودکار پرداختها** با کرون جاب (هر ۲ دقیقه)
- **جلوگیری از پرداخت تکراری** با بررسی `ref_id`
- **ذخیره تاریخچه کامل** تراکنشها در دیتابیس
📊 مدیریت سفارشها
- **ستونهای اختصاصی** در لیست سفارشها (وضعیت دارمت + تعداد تلاش)
- **نمایش وضعیت** در صفحه جزئیات سفارش
- **قابل مرتبسازی** و فیلتر کردن
📝 گزارشگیری
- **سیستم لاگ اختصاصی** (`debug-wwd.log`)
- **قابل غیرفعالسازی** از تنظیمات
- **ثبت تمام عملیاتها** برای عیبیابی
📧 اطلاعرسانی
- **ارسال ایمیل تایید** به کاربر پس از پرداخت موفق
- **یادداشتهای خودکار** در سفارش
---
🏗️ ساختار فنی
woo-wallet-daramet/
├── wwd.php # فایل اصلی افزونه
├── uninstall.php # حذف کامل دادهها
├── inc/
│ ├── class-wwd-gateway.php # کلاس درگاه پرداخت
│ └── manage-columns.php # مدیریت ستونهای سفارش
├── cron/
│ └── wwd-cron.php # فایل مجزای کرون جاب
└── languages/ # فایلهای ترجمه
```
🗄️ دیتابیس
- **جدول `wp_daramet_transactions`** برای ذخیره تاریخچه تراکنشها
- **متاهای سفارش** برای وضعیت و اطلاعات پرداخت
---
🔧 تنظیمات در پنل ادمین
| بخش | تنظیمات |
|------|---------|
| **عمومی** | فعال/غیرفعال، عنوان، توضیحات |
| **درگاه** | آیدی پروفایل دارمت، کلید API |
| **بررسی خودکار** | فعال/غیرفعال، فاصله زمانی، تعداد تلاشها |
| **گزارشگیری** | فعال/غیرفعال لاگ |
---
🔄 وابستگیها
| نیازمندی | نسخه |
|----------|------|
| **وردپرس** | ۵.۰ یا بالاتر |
| **ووکامرس** | ۴.۰ یا بالاتر |
| **WooWallet** | آخرین نسخه |
| **PHP** | ۷.۴ یا بالاتر |
---
🎯 مزایا برای فروشگاه
| مزیت | توضیح |
|-------|-------|
| **اتوماتیک** | پرداختها بدون دخالت ادمین شناسایی میشوند |
| **امن** | با بررسی `ref_id` از پرداخت تکراری جلوگیری میشود |
| **قابل پیگیری** | تاریخچه کامل تراکنشها در دیتابیس |
| **کاربرپسند** | کاربر فقط یک بار پرداخت میکند |
| **قابل تنظیم** | زمان بررسی و تعداد تلاشها قابل تغییر است |