{% extends 'admin/base_site.html' %} {% block title %} {{ title }} | {{ site_title|default:_('Django site adminssss') }} {% endblock %} {% block contentwrap %}
آموزش ساختار کلی ادمین
آموزش بخش تقویم
آموزش بخش مفاتیح
آموزش بخش احکام
مستندات API تراکنش‌ها و رسیدهای پرداخت

🔹 ثبت‌نام در دوره و ایجاد تراکنش

Endpoint: POST /api/transactions/<slug>/join/

این API برای ثبت‌نام کاربر در دوره و ایجاد تراکنش استفاده می‌شود.

  • برای دوره‌های رایگان، تراکنش به صورت خودکار تایید می‌شود
  • برای دوره‌های پولی، تراکنش با وضعیت pending ایجاد می‌شود

🔹 آپلود رسید پرداخت

Endpoint: POST /api/transactions/<transaction_id>/receipts/upload/

برای آپلود رسید پرداخت دوره‌های پولی استفاده می‌شود.

  • حداکثر 10 فایل قابل آپلود در هر درخواست
  • حداکثر حجم هر فایل: 10 مگابایت
  • پس از آپلود موفق، وضعیت تراکنش به waiting_approval تغییر می‌کند

🔹 مشاهده رسیدهای یک تراکنش

Endpoint: GET /api/transactions/<transaction_id>/receipts/

برای دریافت لیست تمام رسیدهای آپلود شده برای یک تراکنش.


🔹 لیست تراکنش‌های کاربر

Endpoint: GET /api/transactions/list/

برای دریافت لیست تمام تراکنش‌های کاربر احراز هویت شده.


🔹 وضعیت‌های تراکنش

وضعیت توضیحات
pending در انتظار پرداخت - کاربر باید رسید را آپلود کند
waiting_approval در انتظار تایید - رسید آپلود شده و منتظر تایید ادمین
success پرداخت موفق و تایید شده - کاربر به دوره دسترسی دارد
failed پرداخت ناموفق یا رد شده

📌 نکات مهم برای ادمین

  • زمانی که کاربر رسید آپلود می‌کند، وضعیت تراکنش به waiting_approval تغییر می‌کند
  • ادمین باید رسیدها را در پنل ادمین بررسی کرده و وضعیت را به success یا failed تغییر دهد
  • زمانی که وضعیت به success تغییر کند، کاربر به صورت خودکار به عنوان دانشجو در دوره ثبت می‌شود
  • تمام رسیدهای آپلود شده در پنل ادمین قابل مشاهده هستند

مشاهده مستندات کامل Swagger

{% endblock %}