Updated 2026-09-11 289 views

Levlix Server Shop Guide

The Levlix Shop module lets server admins offer items purchasable with the server's virtual points currency. Members can browse available items, buy them with their points balance, and view their full purchase history, either from Discord slash commands or straight from the web dashboard.

Where members can shop

There are two equally valid ways to browse and buy:

  1. In Discord, using the /shop slash commands documented below.
  2. On the web dashboard, from Server → Shop. Members see the same catalogue their server admins configured, with their current points balance, availability badges, and a full purchase history.

Buying from the dashboard runs through the exact same safety checks as the slash command: available-from dates, expiry, purchase limits, stock, and payment are all enforced server-side. Points deduction and code assignment happen in one database transaction, so a purchase that fails halfway (for example because the code pool ran out at that instant) never costs points: a buyer is never charged for a code they did not receive.

Member Commands

There is one member command:

/shop

It opens the shop dashboard with two tabs:

Tab What you can do
Shop Browse every item currently available, with price, remaining stock, and how many more times you may buy it. Pick an item from the menu, confirm, and the purchase runs.
History See what you have bought in this server's shop, with date, price, and the code you received.

The tab option lets you open the dashboard directly on a tab. Items you have already bought up to the limit, and sold-out items, are not offered.

After a confirmed purchase:

  1. Levlix checks your current balance and the item's stock.
  2. The item code is sent to you via Direct Message.
  3. If your DMs are closed, the code is shown to you in an ephemeral (only-you-can-see) message instead.
  4. Your points balance is reduced by the item price.

If you do not have enough points, Levlix tells you how many points you need and how many you currently have.

Shopping from the Dashboard

Open Server → Shop on the Levlix Web Dashboard. Members land straight on the store view; server managers see the management view by default and can open the member-facing store by appending ?view=store to the shop URL.

The store page shows:

Element What it means
Points balance Your current server points, updated after every purchase.
Status badges Available, Scheduled (unlocks on a future date), Sold Out, or Expired.
Purchase button Disabled when the item is not active, you have reached its purchase limit, or your balance is too low.
Purchase history Every code you ever bought in this server, newest first.

Revealing a code you bought

To keep purchased codes safe if someone shoulder-surfs your screen, the purchase history only shows the last four characters of each code by default. Click Reveal code on a row to fetch the full value on demand. Every reveal is recorded, so you always have proof of what you claimed and when.

Note
Only you can reveal your own codes. The reveal endpoint checks ownership on every request, so even a manager looking at the same page cannot see your codes.

Sold-out and scheduled items

  • Sold out items appear greyed out and cannot be purchased. They stay on the page so members can see what has been offered in the past.
  • Scheduled items list the date they unlock. The buy button is disabled until available_from is reached.
  • Expired items stay listed with an Expired badge and cannot be purchased.

Admin: Managing the Shop

Admins add, edit, and remove shop items via the Levlix Web Dashboard. Each item has the following configuration options:

Setting Description
Title Name displayed to users
Price Cost in server points
Codes Upload the actual codes / values to be distributed
Purchase Limit Maximum number of times one user can buy this item
Expiry Date Optional date after which the item is removed
The shop management view, where point-shop items are created and edited
The shop management view, where point-shop items are created and edited

Once all codes for an item are sold, the item is automatically marked as sold out and hidden from the shop listing.

Admin slash commands under the /shop-admin group (create, show, admin-list, showcase, expire-check) are also available for quick in-Discord management, but the dashboard is the most comfortable way to work with multiple items at once.

Filter shop items by status

The management page has a status filter (Active, Scheduled, Sold Out, Expired) so you can jump straight to the items that need attention. The status is derived from the same rules the store applies to members, which means the two views can never disagree.

Shop Manager Role

By default, only server admins can manage the shop. If you want to let another role (for example a Community Manager or a dedicated Shop Team) create and edit items, set the Shop Manager Role on the dashboard to moderator or admin. The role hierarchy (user → moderator → admin → owner) determines who sees the management view and who sees the store.

Setting Result
admin (default) Only admins and the server owner can manage the shop.
moderator Moderators, admins, and the owner can manage the shop.

Members below the configured role always land on the store view, even if they happen to open the management URL directly. Managers previewing the store keep the Back to management link so they never lose their way.

Managing User Balances

Server administrators can manually add, remove, or adjust a member's point balance from the Levlix Web Dashboard. Every change is logged in the audit history for full transparency.

Edge cases and safety notes

  • Membership check on every dashboard purchase. The store URL is public to anyone with a Levlix account, but only members of the server can actually buy: the buy handler double-checks membership before touching the code pool.
  • One code per buyer, always. A brief database lock is taken on the buyer's row while a purchase is in flight, so double-clicking the buy button (or the same person opening two tabs) can never claim two codes off one payment.
  • Bot down? Purchases still work. Dashboard purchases publish over Redis so the bot can DM the winner, but the code is delivered inside the dashboard immediately either way. If the bot is offline, the purchase still succeeds and the code is waiting in your purchase history when you refresh.
  • Sold-out flip is instant. When the last code of an item is claimed from the dashboard, the item is marked sold out in the same request. No stale "1 left" showing to the next visitor.

Was this article helpful?

Thanks for your feedback! Your vote helps us improve the documentation.

Your vote could not be saved. Please reload the page and try again.

Share this guide

Your Privacy

We use essential cookies to operate this site and optionally Google Analytics to improve our services. You can accept all, reject all, or choose which categories you allow.

Privacy Policy

Cookie Preferences

Choose which categories of cookies you want to allow. You can change this at any time.

Essential Cookies

Required

Session, CSRF protection, login state.

Analytics Cookies

Optional

Google Analytics 4 with anonymized IP, used to understand aggregate usage.