Configure Join-Code Usage Limits and Expiration
Usage limits and expiration let an administrator bound how long and how many times a reusable Join Code can be used. They are enforced server-side, not only displayed in the frontend selector.
Use unlimited codes deliberately. A code with usage_limit=0 has no use-count ceiling, and a blank expiration has no date cutoff.
Usage Limit
Enter 0 for unlimited uses or a positive integer for a capped code. QCFUM stores both usage_limit and used_count. The frontend label shows either “Unlimited uses” or the calculated number of uses remaining.
Expiration
The Administrator form accepts a date. QCFUM stores the selected date at 23:59:59; runtime checks compare the stored value with UTC time. A blank value remains NULL and is treated as no expiration.
When a Code Stops Appearing
The usable-code query excludes a code once used_count >= usage_limit for a positive limit, or when expires_at is in the past. The completion handler performs the same checks again so a stale page cannot bypass them.
Use Count Is Reserved Before Account Creation
QCFUM increments the use count atomically before creating the account. If the account-creation workflow then fails, it releases that reserved use. A successful creation keeps the increment.
Recommended Use
- Use expiration for campaign, class, event, volunteer, or temporary enrollment codes.
- Use a positive limit where the number of eligible registrations is known.
- Review Used versus limit before extending a code.
- Do not reset
used_countcasually; it is part of the code’s operational history.
Community Discussion
Want to compare Joomla user-onboarding workflows, share practical QCFUM tips, or discuss how other administrators use this feature? Visit the QC Frontend User Manager Community. For private support, bug reports, account-specific entitlement problems, or feature requests, use the QuantaCade support system.