Discourse Points Mall (Check-in, Shop, Orders, Makeup Cards, Ledger)

:information_source: Summary Adds a complete points mall to Discourse: check-in, shop, orders, makeup cards, and points history.
:hammer_and_wrench: Repository Link GitHub - VegaMonika/discourse-points-mall · GitHub
:open_book: Install Guide How to install plugins in Discourse

Features

  1. Daily Check-in Center
  2. Current forum trust-level progress (TL0–TL4), monthly check-in count, and personal ranking
  3. Monthly check-in calendar with makeup support
  4. Makeup card system:
    • Auto-created system product
    • Tiered monthly pricing: 1000 / 3000 / 5000
    • Max purchase/use: 3 times per month
    • Expires monthly (unused cards do not carry over)
  5. Points Shop
    • Virtual and physical products
    • Stock control (-1 means unlimited)
    • Shipping info for physical products
  6. My Orders
    • User order history and status tracking
    • Admin order status update (pending, processing, completed, cancelled)
  7. Points Ledger
    • Income/expense records from gamification events
    • Category filters (checkin, shop, community, other)
  8. Admin Management
    • Operations overview cards
    • Check-in analytics (trend, top users, recent check-ins)
    • Product management (including custom image URL for makeup card)
    • Order management with filters and inline editing
  9. Task module and lottery module are removed in current version

Configuration

  1. Enable plugin

    • Admin > Settings > Plugins
    • Turn on points_mall_enabled.
  2. Configure check-in points

    • Set points_mall_checkin_points and points_mall_checkin_streak_bonus.
  3. Configure ranking source

    • Current version reads leaderboard data from /leaderboard/2 (leaderboard ID 2).
    • Ensure this leaderboard exists and is visible to users.
  4. Configure products

    • Go to Admin > Plugins > Points Mall > Product Management.
    • Create/edit products, set stock/type/enabled state/image URL.
    • Makeup card is system-created and cannot be deleted.
  5. Process orders

    • Go to Order Management in the same admin page.
    • Filter by type/status, update order status and notes, then save.
  6. Frontend entry

    • Users open /points-mall for check-in, shop, orders, and ledger.

Settings

Name Description
points_mall_enabled Master switch for this plugin.
points_mall_checkin_points Base points granted for built-in daily check-in flow.
points_mall_checkin_streak_bonus Extra bonus points for streak check-ins in built-in flow.
3 Likes

Currently, there are still some display bugs and certain buttons that cannot be pressed. may want to wait a while before installing this plugin.

1 Like

I’m currently unsure how to enable point deduction for the Discourse Gamification plugin. This plugin is still a work in progress and is not recommended for new users to install at this time.

1 Like

This is a very good idea. I will follow the progress of the plugin. I wish you success and thank you for your work. :smiling_face_with_three_hearts:

1 Like

I am also developing a similar feature for point deduction. The biggest problem now is that the current point change depends on a scheduled task, but the deduction should be executed immediately, otherwise, the user can deduct points indefinitely before the next scheduled task runs. However, if updated immediately, it forces an update of all user leaderboard information, which might bring excessive load.

Enabling point deduction in the Discourse Gamification plugin allows the use of GamificationScoreEvent to customize deduction events. But this still relies on scheduled tasks for updates.

Another disadvantage of relying on scheduled tasks is that points might be deducted into negative numbers.