Commissions System
1. Feature Brief
Section titled “1. Feature Brief”The commissions plugin aims to provide a complete, feature rich and user-friendly solution for servers that handle commissions/freelancing or are Hubs.
It is designed to be heavily configurable and stateful to help you better Personalize the system to your needs. The core system consists of the following sub-systems:
- Commission creation - clients open commissions via a GUI type-selector, providing budget, description, and timeline
- Commission lifecycle - full status flow:
draft → open → claimed → in_progress → review → completed/closed - Commission types - fully customizable types with labels, descriptions, emojis, and assignable roles per type
- Per-type intake questions - each commission type can have custom questions answered on submission
- Channel auto-creation - a private channel is created per commission with a configurable naming format
- Max active tickets limit - caps how many open commissions a user can have at once
- Claim system - freelancers claim commissions with a cooldown to prevent spam, with race condition/TOCTOU protection via per-commission lock
In addition to the above there are several more Enterprise Grade features you get to access. The following Enterprise Features (Opt-in) are:
- Draft system - commissions can be saved as drafts before being posted publicly, with an “Edit Details” flow
- Revision system - clients can request revisions; freelancers can submit the work to a “Review” state before completion
- Revision negotiation - freelancers can request extra budget/timeline for revisions; clients approve or decline
- Dispute system - either party can open a dispute, which freezes the order; managers/admins resolve or escalate it (OPEN → RESOLVED/ESCALATED)
- Live order cards - a pinned message in the commission channel auto-updates with the current order state
- State journal / audit trail - every state change (who did what, when, and why) is logged.
2. Sub-Systems
Section titled “2. Sub-Systems”- Freelancers can submit price quotes with a custom price, timeline, and description
- Clients can accept, reject, or counter a quote via modal
- Counter-quote flow included
- Freelancers can create, edit, and delete their portfolio (title, description, work examples/links, payment methods, contact info)
- Portfolio verification, admins can approve or reject submitted portfolios with a reason, via a dedicated review channel
- Auto-approve option (skip manual review)
- Portfolio browser, clients browse and view approved freelancer portfolios in a select-menu UI
- Average rating displayed on portfolio from linked reviews
- Clients leave a star rating + comment on completed commissions
- Review cooldown enforcement (configurable hours between reviews)
- Optional DM notification to the freelancer on new review
- Optional posting to a dedicated review channel
- Multi-dimensional ratings (enterprise): communication, quality, timeliness, professionalism (1–5 each)
- Automatically generates and saves a full HTML transcript of the commission channel on close
- Can DM the transcript to all participants
- Can post the transcript to a configured transcript channel
- Duplicate-send prevention via a transcriptSent flag
- DM on close - client/freelancer notified when a commission closes
- DM on assignment - freelancer notified when they’re assigned
- Ping on inactive - pings participants if a commission goes quiet for a configurable number of hours
- Automatically closes commissions after a configurable inactivity period (hours)
- Pending close timers are tracked and cleanly cancelled on plugin unload
- Tracks total completed commissions, earnings, average rating, commissions-by-type, and monthly stats per freelancer per guild
3. Setup
Section titled “3. Setup”- Full interactive GUI setup simply run:
/commissions - Setup steps:
enable system → configure roles → configure channels → configure commission types - Role setup: assignable role (who can claim), manager role, and per-type specific roles
- Channel setup: category for commission channels, optional logging channel, optional transcript channel
- Type manager: add/remove commission types, assign roles and custom questions per type
- Settings panel: toggle all subsystems (portfolio, reviews, quotes, transcripts, disputes, drafts, revisions, auto-close, DM notifications) individually via buttons
- Reset system: full data wipe with confirmation flow