All Mods Resource Packs Data Packs Shaders Modpacks Plugins
Orderium [Order System]

Orderium [Order System]

by Karven • Downloads: 0 • Followers: 0
Description
Gallery
Changelog
Versions

Orderium

Orderium is a plugin that adds an order system, allowing players on your server to request items from other players and give them money as a reward. (Basically an auction house plugin but "reversed") It is inspired by DonutSMP.

Features

  • Create orders for a specific item and deliver them to get money;
  • Support items with different NBT data variants like enchantment books, potions, etc;
  • Add custom items from plugins like ItemsAdder, Nexo, CraftEngine, etc;
  • Blacklist certain items you do not want your players to create orders with;
  • Highly configurable settings; messages, texts, sounds, etc. are configurable;
  • Use SQLite or MySQL as storage method.

Why this plugin

There are many plugins that embed this system into your server. However, many of them are vibe-coded, which creates a number of security possibilities.

Besides, Orderium is also open-source, you can see the source code and contribute to the project if you found it helpful. As well as supports for custom items and items with different NBT variants, Orderium is preferred than other plugins with similar idea.

Requirements

Orderium needs these dependencies to operate:

Compatibility

  • Compatible versions: 1.21.7+
  • Compatible software: Paper, Folia

Need help?

Create a discussion in Orderium Discussions!

Contact

Contact me for anything else related to this plugin, including vulnerability reports.

Email: karven@atomicmail.io

All Versions

+ Add Version
Name Game version Platforms Published Downloads Actions
26.3 26.2 26.1.x +1
Folia Paper Purpur
14h ago 1
26.3 26.2 26.1.x +1
Folia Paper Purpur
14h ago 1
26.3 26.2 26.1.x +1
Folia Paper Purpur
14h ago 1
26.2 26.1.x 1.21.x
Folia Paper Purpur
14h ago 1
26.2 26.1.x 1.21.x
Folia Paper Purpur
14h ago 1
26.2 26.1.x 1.21.x
Folia Paper Purpur
14h ago 1
26.2 26.1.x 1.21.x
Folia Paper Purpur
14h ago 1
26.2 26.1.x 1.21.x
Folia Paper Purpur
14h ago 1
26.1.x 1.21.x
Folia Paper Purpur
14h ago 1
26.1.x 1.21.x
Folia Paper Purpur
14h ago 1
26.1.x 1.21.x
Folia Paper Purpur
14h ago 1
26.1.x 1.21.x
Folia Paper Purpur
14h ago 1
26.1.x 1.21.x
Folia Paper Purpur
14h ago 1
26.1.x 1.21.x
Folia Paper Purpur
14h ago 1
26.1.x 1.21.x
Folia Paper Purpur
14h ago 1
26.1.x 1.21.x
Folia Paper Purpur
14h ago 1
26.1.x 1.21.x
Folia Paper Purpur
14h ago 1
26.1.x 1.21.x
Folia Paper Purpur
14h ago 1
26.1.x 1.21.x
Folia Paper Purpur
14h ago 1
26.1.x 1.21.x
Folia Paper Purpur
14h ago 1
26.1.x 1.21.x
Folia Paper Purpur
14h ago 1
1.21.x
Folia Paper Purpur
14h ago 1
1.21.x
Folia Paper Purpur
14h ago 1
[2.5.0] 2.5.0 by Karven on Oct 15, 2026
Download
  • Allow using order placeholders in receive-delivery message
  • Storage system refactor with MySQL support
  • bStats is removed
[2.4.1] 2.4.1 by Karven on Oct 15, 2026
Download
### Fix
Patches to some duping exploits/vulnerabilities
[2.4.0] 2.4.0 by Karven on Oct 15, 2026
Download
### Fix
Incompatibility on 26.3

### Feature
Search dialog, as an alternative for sign GUI.

Sign GUI is deprecated and will soon be removed.
[2.3.0] 2.3.0 by Karven on Oct 15, 2026
Download
## UPDATES
This version fixes a lot (I mean A LOT) of issues in the plugin.
<br>
Updating is recommended to provide a more stable experience.

### Fixes
  • Similarity check only accepts valued data component types
  • Possible exploit with interacting choose item GUI
  • Race condition when logging money transactions
  • Duplicating keys when storing money transactions
  • Thread-safety issues with search GUI and delivery confirm dialog
  • Possible undefined behavior because of access of Bukkit.getOnlinePlayers() asynchronously
  • Thread-safety issues when modifying order values
  • Possible race condition when deducting money (more like Vault Implementer's job but eh)
  • Orders never get deleted in storage
  • Items that represent orders in main and your orders GUI don't have expires time updated unless their values are changed
  • Possible issue with byte array comparison for orders and order items
  • Possible exception when orders failed to load
  • Updates to orders are not atomic and don't have proper locking
  • Connection changes are not rolled back on exception in storage

### News
  • Item of an order now shows its tooltip on hover when sent as a text message

### License
License is now GPL-3.0 for both the GitHub repository and Modrinth project, as required by ConfigurationMaster's license.

### Disclosure
As to adapt to Modrinth's new project disclosures system, Orderium now has disclosures.
<br>
You can view this on the main page of the Modrinth project.

### Discord
My Discord account has been permanently suspended. For more information, see the Discord server link of this Modrinth project.
[2.2.0] 2.2.0 by Karven on Oct 15, 2026
Download
# Optimizations
This version mainly improves the performance impact of the plugin to servers.

## The issue
1. A bottleneck in Orderium was that strings are constantly getting deserialized to MiniMessage text components. At first, this does not sound very resource-intensive, just deserializing a string. However, it starts to create a performance impact when this happens more often. Every page, every item, every lore lines, custom name, all of them are deserialized when you execute /order command.
2. The plugin makes Bukkit.getOfflinePlayer(UUID) calls for **all** active orders whenever a player uses search. This method tends to be resource-intensive.

## The solution
For the first problem, I used 2 methods to solve it:
1. Lazy loading: whenever a player executes /order, it generates all the pages, even if the player only accesses the first or second page. This version no longer generates all the pages, it only does when the player moves to the next page, minimizing the amount of inventories need to be created as well as ItemStacks.
2. Caching: The orders used to create a new ItemStack then deserialize the lore lines with placeholders. Now, it only creates the ItemStack every time the placeholder values change or the config reloads.

For the second problem, I also simply cache OfflinePlayer and only call Bukkit.getOfflinePlayer(UUID) once when the server starts for each order.
<hr>

You can see that a lot of changes have been made. Therefore, bugs might appear in this version, because optimizing is always scary. If you found any, feel free to report an issue on the Github repository :)
[2.1.0] 2.1.0 by Karven on Oct 15, 2026
Download
### Fixes
  • cancel order gui config is missing
  • API events are not called when delivering for an order
  • Orders can be canceled even if it's already completed

### News
  • Webhook support
  • Order limits for different permissions
  • Show cost when creating order and reward when cancelling order
[2.0.0] 2.0.0 by Karven on Oct 15, 2026
Download
# READ ME!

This update has many changes, please read the changelog carefully before updating.

## Config Overhaul

The plugin should automatically migrate to the new formats for you.

Each GUI now has its own config file instead of putting everything in config.yml.
<br>
The config files of the GUIs are under gui/ directory.

gui.main > main.yml
<br>
gui.your-orders > your-orders.yml
<br>
gui.choose-item > choose-items.yml
<br>
gui.search-sign > search.yml
<br>
gui.delivery > deliver.yml
<br>
gui.enchant-item > enchant.yml
<br>
gui.new-order > new-order-dialog.yml
<br>
gui.confirm-delivery > confirm-delivery.yml
<br>
gui.manage-order > manage-order.yml

In container GUIs, you can now specify the amount of rows.
<br>
For main, your orders, choose items, enchant item GUIs, you can now specify a list of slots where the
orders/items/enchantment books should be put in respectively.
<br>
Buttons now have 2 keys, item and slot; name, lore, item model of the button is now moved to the item key, under
components, providing a more vanilla format.
<br>name-prefix in enchant GUI's config is changed to name.active and name.inactive

sort-prefix and sort-types are now merged to sorts-display, allowing you to set the text for each sort type when
it is active and inactive.

## FastStats

The plugin now uses [FastStats](https://faststats.dev/) to collect anonymous data.
Besides default metrics it collects, Orderium also tracks errors at different places, and these data:

  • API Usage: a boolean determines if your server is using API from Orderium
  • Experimental features: a string array contains names of experimental features being used
  • Order amount: an integer shows the amount of orders have been created
  • Items collected: an integer shows the amount of items collected from all orders
[1.7.0] 1.7.0 by Karven on Oct 15, 2026
Download
  • Removed empty items.db file
  • Fix bStats not working correctly with config option
  • Fix packetevents listeners spamming errors if the plugin is disabled
  • Fix not recognizing economy plugin if it enables after Orderium
  • Fix commands not unregistered if the plugin is disabled
  • Add permission orderium.use for executing command orders
[1.6.1] 1.6.1 by Karven on Oct 15, 2026
Download
  • Fixed an issue with false warning of downgrading plugin.

If you didn't downgrade the plugin, you can safely ignore the message.
[1.6.0] 1.6.0 by Karven on Oct 15, 2026
Download
  • Items are now obtained from the server (nms)
  • Default blacklisted items are removed
  • Added aliases for the orders command
[1.5.0] 1.5.0 by Karven on Oct 15, 2026
Download
  • Add minimum price to config
[1.4.0] 1.4.0 by Karven on Oct 15, 2026
Download
  • Fix various bugs
  • Better Folia compatibility
  • Reduced plugin jar file size
  • Some optimizations
  • Java requirement is now 21
[1.3.7+1] 1.3.7+1 by Karven on Oct 15, 2026
Download
Fix: errors with enchant GUI
[1.3.7] 1.3.7 by Karven on Oct 15, 2026
Download
Fix: wrong page amount calculation
[1.3.6] 1.3.6 by Karven on Oct 15, 2026
Download
Fix: orders get duplicated when a delivery is made
Fix an issue with config
Allows you to add item model to buttons with key item-model
[1.3.5] Orderium 1.3.5 by Karven on Oct 15, 2026
Download
  • Preserve order of items in shulker when ordering
  • Make click action in custom items GUI more psychological
  • Preserve original persistent data of items for compatibility with resourcepacks
[1.3.3] Orderium 1.3.3 by Karven on Oct 15, 2026
Download
  • feat: add enchant item gui
  • feat: add config version
[1.3.2] Orderium 1.3.2 by Karven on Oct 15, 2026
Download
fix: compatibility issues with api version
[1.3.1] Orderium 1.3.1 by Karven on Oct 15, 2026
Download
added support for 26.1.1
you need the latest build of packetevents for 26.1. (https://ci.codemc.io/job/retrooper/job/packetevents/)
[1.3.0] Orderium 1.3.0 by Karven on Oct 15, 2026
Download
Huge refactoring to the code
Changes:
  • Add edit order GUI, allowing you to edit certain orders with permission
  • Patched a dupe exploit
Orderium [Order System] Icon
Download Orderium [Order System]
Select game version
Select platform