رفتن به محتوای اصلی

ووکامرس، Easy Digital Downloads و WHMCS

یک افزونهٔ آماده نصب کنید، با یک کلیک وصلش کنید و ببینید سفارش‌ها و صورت‌حساب‌ها چطور دنبال پرداخت و رسیدشان می‌روند.

سه افزونهٔ رسمی بدون نوشتن کد پرداخت کارت‌به‌کارت و انتقال بانکی می‌گیرند. هر کدام برای سفارش یا صورت‌حساب یک پرداخت می‌سازد و مشتری را به صفحهٔ پرداخت میزبانی‌شده می‌فرستد تا از بانک خودش پرداخت کند و رسید بفرستد. تیم شما رسید را در داشبورد تأیید می‌کند و افزونه سفارش را به‌روز می‌کند. هر افزونه امضای هر وب‌هوک را بررسی می‌کند و پیش از هر تغییری پرداخت را دوباره از API می‌خواند؛ پس وب‌هوک تکراری یا جعلی هیچ‌وقت سفارشی را پرداخت‌شده نمی‌کند.

هر سه افزونه رسیدهای منتظر بررسی، واریز کمتر، بیش‌واریز و اصلاح‌های داشبورد را مدیریت می‌کنند و ارز فروشگاه را بدون گرد کردن اعشاری، دقیق به ریال تبدیل می‌کنند.

اتصال با بزن به کارت

هر سه افزونه با یک کلیک وصل می‌شوند:

  1. در تنظیمات افزونه اتصال به بزن به کارت را بزنید.
  2. وارد داشبوردتان شوید، حالت آزمایشی یا واقعی را انتخاب و فروشگاه را تأیید کنید. مالک و مدیرها می‌توانند تأیید کنند.
  3. با یک کد یک‌بارمصرف به فروشگاه برمی‌گردید و افزونه آن را با یک کلید محدود، یک نقطهٔ دریافت وب‌هوک برای همهٔ رویدادهای پرداخت و کلید امضای بازگشت عوض می‌کند. هیچ چیز دستی کپی نمی‌شود.

ووکامرس و Easy Digital Downloads هر دو حالت را نگه می‌دارند؛ پس یک بار در حالت آزمایشی و یک بار در حالت واقعی وصل شوید. WHMCS هر بار فقط یک حالت را نگه می‌دارد و اتصال در حالت دیگر، کلیدهای قبلی را جایگزین می‌کند. تأیید بررسی می‌کند که نشانی بازگشت و وب‌هوک مال دامنهٔ فروشگاه شما باشند و فروشگاه واقعی باید https داشته باشد. وارد کردن دستی کلید هم همیشه ممکن است.

ووکامرس

افزونهٔ bezanbecard-for-woocommerce. ووکامرس ۸٫۲ یا جدیدتر، PHP ۷٫۴ یا جدیدتر، صفحهٔ پرداخت کلاسیک و بلوکی و ذخیره‌سازی سفارش با کارایی بالا (HPOS). فایل zip را از صفحهٔ دانلود بگیرید و در وردپرس از افزونه‌ها ← افزودن ← بارگذاری افزونه بارگذاری کنید.

  1. افزونه را نصب و فعال کنید و به ووکامرس ← پیکربندی ← پرداخت‌ها ← بزن به کارت بروید.
  2. اتصال به بزن به کارت را بزنید، یا خودتان یک کلید مخفی و یک نقطهٔ دریافت وب‌هوک بسازید و کلید (sk_test_… / sk_live_…) و کلید امضای نقطهٔ دریافت (whsec_…) را وارد کنید. نشانی وب‌هوک https://<your store>/wp-json/bezanbecard/v1/webhook است.
  3. وضعیت سفارش بعد از پرداخت، پذیرفتن یا نپذیرفتن واریز ناقص و مهلت پرداخت را انتخاب کنید.
  4. پیش از رفتن به حالت واقعی، یک سفارش آزمایشی ثبت کنید، هر عکسی را به‌عنوان رسید روی صفحهٔ پرداخت بارگذاری کنید و آن را در داشبورد تأیید کنید.

ارزهای فروشگاه: ریال (IRR)، تومان (IRT)، هزار ریال (IRHR) و هزار تومان (IRHT). جمع سفارش باید بین ۱۰٬۰۰۰ تا ۲٬۰۰۰٬۰۰۰٬۰۰۰ ریال باشد.

ووکامرس
پرداختسفارش
موفقsucceeded به اندازهٔ جمع سفارشپرداخت‌شده، و اگر انتخاب کرده باشید تکمیل‌شده؛ بیش‌واریز یا کسری پذیرفته‌شده یادداشت می‌شود.
موفقsucceeded با مبلغی دیگر (سفارش بعد از پرداخت ویرایش شده)در انتظار بررسی، با یادداشت.
کم‌واریزpartially_paidدر انتظار بررسی، با مبلغ رسیده، باقی‌مانده و لینک صفحهٔ پرداخت برای بقیه.
نیاز به بررسیrequires_reviewدر انتظار بررسی، با دلیل.
در انتظار تأییدprocessingدر انتظار بررسی: مشتری رسید فرستاده و رسید منتظر بررسی تیم شماست.
در انتظار واریزrequires_payment درست بعد از در انتظار تأییدprocessingدوباره در انتظار پرداخت: رسید تأیید نشد و پولی نرسید؛ یادداشت لینک پرداخت را دارد.
لغوشدهcanceledلغوشده؛ یادداشت، پول رسیده را گوشزد می‌کند.
منقضیexpiredناموفق، اگر سفارش هنوز در انتظار پرداخت یا بررسی باشد.

سفارش پرداخت‌شده هیچ‌وقت خودکار دوباره باز نمی‌شود. صفحهٔ سفارش یک کادر بزن به کارت دارد با وضعیت، مبلغ‌ها، واریزها، لینک پرداخت برای فرستادن به مشتری و دکمهٔ به‌روزرسانی از بزن به کارت.

Easy Digital Downloads

افزونهٔ bezanbecard-for-edd. Easy Digital Downloads نسخهٔ ۳ (با پشتیبانی جایگزین از پرداخت‌های نسخهٔ ۲)، وردپرس ۶٫۲ یا جدیدتر، PHP ۷٫۴ یا جدیدتر. فایل zip را از صفحهٔ دانلود بگیرید و در وردپرس از افزونه‌ها ← افزودن ← بارگذاری افزونه بارگذاری کنید.

  1. ارز فروشگاه را در Downloads ← Settings ← General ← Currency روی ریال یا تومان بگذارید.
  2. در Downloads ← Settings ← Payments گزینهٔ Bezanbecard را فعال کنید و بخش آن را باز کنید.
  3. یک بار با حالت آزمایشی EDD و یک بار بدون آن اتصال به بزن به کارت را بزنید. یا کلیدها را خودتان وارد کنید؛ نشانی وب‌هوک https://<your site>/wp-json/bezanbecard-edd/v1/webhook است.

حالت آزمایشی EDD کلیدهای آزمایشی شما را به کار می‌برد. کدهای ارزی که شناخته می‌شوند: RIAL، IRR، IRT، TOMAN، IRHR و IRHT. تا وقتی رسید سفارش بررسی می‌شود، سفارش با یک یادداشت در وضعیت در حال پردازش (Processing) در EDD است؛ اگر پرداخت بعد از آن به بررسی برود، سفارش همان‌جا می‌ماند. اگر رسید رد شود و پولی نرسیده باشد، یا فقط بخشی از پول برسد، سفارش دوباره در انتظار پرداخت می‌شود. واریز کمتر، سفارش را با یادداشت در انتظار نگه می‌دارد و صفحهٔ پرداخت بقیه را می‌خواهد؛ بیش‌واریز سفارش را با یادداشت تکمیل می‌کند.

WHMCS

ماژول bezanbecard برای WHMCS نسخهٔ ۸ روی PHP ۷٫۴ تا ۸٫۳، برای صورت‌حساب‌هایی به تومان یا ریال. فایل zip را از صفحهٔ دانلود بگیرید.

  1. پوشهٔ modules ماژول را در ریشهٔ WHMCS کپی کنید و از System Settings ← Payment Gateways گزینهٔ Bezanbecard را فعال کنید.
  2. بالای تنظیمات ماژول اتصال به بزن به کارت را بزنید و در حالت آزمایشی تأیید کنید. یا دستی: در داشبورد و در حالت آزمایشی یک کلید مخفی بسازید، و یک نقطهٔ دریافت وب‌هوک روی https://<your WHMCS>/modules/gateways/callback/bezanbecard.php با رویدادهای payment.processing، payment.updated، payment.partially_paid، payment.succeeded، payment.canceled، deposit.matched و deposit.unmatched.
  3. تنظیمات ماژول را پر کنید (اتصال، چهار مورد اول را خودش پر می‌کند):
WHMCS
تنظیممقدار
Secret keysk_test_…، یا یک کلید محدود rk_test_… با دسترسی write روی payments
Webhook signing secretwhsec_… نقطهٔ دریافت
Redirect signing secretاختیاری: rds_… همان حالت، تا لینک بازگشت جعلی پیش از هر درخواست به API رد شود
Modeآزمایشی یا واقعی؛ باید با کلید جور باشد
Invoice currency unitتومان (مبلغ‌ها ضرب در ۱۰) یا ریال
Accept partial paymentsروشن: هر واریز همان لحظه ثبت می‌شود. خاموش: واریز کمتر منتظر بررسی شما می‌ماند.
  1. یک صورت‌حساب آزمایشی را از پنل مشتری پرداخت کنید، هر عکسی را به‌عنوان رسید بفرستید و آن را در داشبورد تأیید کنید. صورت‌حساب Paid می‌شود و Billing ← Gateway Log یک ردیف Successful نشان می‌دهد.
  2. برای حالت واقعی، دوباره اتصال به بزن به کارت را بزنید و در حالت واقعی تأیید کنید، یا کلید sk_live_…، یک نقطهٔ دریافت واقعی با کلید جداگانه و حالت واقعی را تنظیم کنید.

هر واریز وصل‌شده یک تراکنش جداگانه در WHMCS است و مانده‌حساب صورت‌حساب از بدهی باقی‌مانده پیروی می‌کند. بیش‌واریز، مثل هر صورت‌حساب بیش‌پرداخت‌شدهٔ دیگری در WHMCS، اعتبار مشتری می‌شود. اگر پیامک بانکِ همان واریز بعداً جای واریزِ رسیدِ تأییدشده را بگیرد (واریز پیامکی آن را در replaces نام می‌برد)، چیز تازه‌ای ثبت نمی‌شود (مبلغ بیشترِ بانک فقط تفاوت را ثبت می‌کند). WHMCS اجازه نمی‌دهد ماژول پرداختی را برگرداند؛ برای همین مبلغ کمتر، جدا کردن یا لغو بعد از ثبت واریز یک ردیف Review در لاگ درگاه می‌نویسد تا صورت‌حساب را دستی اصلاح کنید. نقطهٔ دریافتی که اتصال می‌سازد فقط رویدادهای پرداخت را می‌گیرد؛ اگر این ردیف را می‌خواهید، deposit.matched و deposit.unmatched را در داشبورد به آن اضافه کنید.

هر پلتفرم دیگری

مستقیم از API یا یکی از کتابخانه‌ها استفاده کنید. رفتار افزونه‌ها الگوی خوبی است: برای هر سفارش یک پرداخت (پرداخت باز را دوباره به کار ببرید)، Idempotency-Key ساخته‌شده از روی سفارش، تغییر سفارش فقط بر اساس پرداختی که با GET /v1/payments/:id دوباره خوانده شده، و حذف وب‌هوک‌های تکراری با شناسهٔ رویداد.