Compatibility
Minecraft: Java Edition
26.1.x
1.21.x
Platforms
Links
Tags
Creators
Details
Licensed MIT
Published last month


Please contact me on Discord if you have any suggestions or edits.

- DonutSell A simple plugin creates a Sell System using vault or any other economy plugin with history and multipliers inspired by DonutSMP owned by DrDonutt

- Simple Sell System: Players can open a sell container, place items inside, and sell everything instantly when they close it.
- Recursive Shulker Selling: Shulker boxes are fully supported — the box itself sells, and all items stored inside it are counted too.
- Full Customization: Sell GUI, messages, sounds, history GUI, buttons, titles, slots, and layouts are all configurable in the plugin files.
- Vault or Command Economy: Use Vault by default, or disable it and give money through any custom console command from config.
- Configurable Item Prices: Every item price is editable in
prices.yml, and any unconfigured item automatically sells for the default price of1. - Compact Money Format: Prices and sell totals are shown in clean compact format like
1K,1.2M,3B, or1T. - Blacklist System: Operators can blacklist items from being sold, and blacklisted items are safely returned to the player instead of being removed.
- Sell History GUI: Players can open
/sellhistoryand browse every item they sold inside a paged chest menu. - Exact Item History: Sell history stores items exactly as sold, including names, enchantments, lore, and shulker data.
- Sorting Options: Sell history can be sorted by value or by item name directly from the GUI.
- PlaceholderAPI Support: Item prices can be displayed anywhere with placeholders like
%donutsell_netherite_block_price%. - Config Auto-Recovery: If a config file gets corrupted or broken, the plugin automatically resets it instead of crashing the server.

| Command | Access | Description |
|---|---|---|
/donutsell |
Everyone | Shows plugin info and available commands |
/donutsell reload |
Operator | Reloads all configuration files |
/donutsell item <item> blacklist |
Operator | Blacklists an item from being sold |
/donutsell item <item> unblacklist |
Operator | Removes an item from the blacklist |
/donutsell item <item> set-price <amount> |
Operator | Sets the sell price of an item |
/sell |
Everyone | Opens the sell GUI to sell items |
/sellhistory |
Everyone | Opens your sell history |

- A folder named
DonutScoreboardis created in yourpluginsfolder automatically. Inside you will find a cleanconfig.ymlfile.
Config.yml
# ==========================================================
#
# DonutSell — config.yml
# by SirSnaryo
#
# Works on: Paper · Spigot · Bukkit · Purpur
# Version: 1.21.x
#
# ==========================================================
#
#
# ┌─────────────────────────────────────────────────────────┐
# │ COLOR CODES │
# ├─────────────────────────────────────────────────────────┤
# │ &f = white &7 = gray &0 = black │
# │ &a = green &c = red &e = yellow │
# │ &b = aqua &9 = blue &d = purple │
# │ &l = bold &o = italic &r = reset all │
# │ &#RRGGBB = any hex color (e.g. &#FF5500 = orange) │
# └─────────────────────────────────────────────────────────┘
#
#
# ┌─────────────────────────────────────────────────────────┐
# │ COMMANDS │
# ├─────────────────────────────────────────────────────────┤
# │ /sell → open sell GUI │
# │ /sellhistory → open sell history │
# │ │
# │ /donutsell → plugin info │
# │ /donutsell reload → reload config │
# │ /donutsell item <item> blacklist → blacklist item │
# │ /donutsell item <item> unblacklist → unblacklist item │
# │ /donutsell item <item> set-price <amount> │
# └─────────────────────────────────────────────────────────┘
#
#
# ┌─────────────────────────────────────────────────────────┐
# │ BROKEN CONFIG │
# ├─────────────────────────────────────────────────────────┤
# │ If you break this file the plugin automatically │
# │ resets it and regenerates a clean copy on startup. │
# └─────────────────────────────────────────────────────────┘
#
# ==========================================================
# ----------------------------------------------------------
# ECONOMY
# vault-economy: true → uses Vault for deposits
# vault-economy: false → uses money-give command instead
#
# money-give placeholders:
# [user] → player name
# [amount] → raw amount (not formatted)
# ----------------------------------------------------------
vault-economy: true
money-give: "example give [user] [amount]"
# ----------------------------------------------------------
# SELL GUI
# The container players use to sell items.
#
# command → the command to open the sell GUI
# aliases → alternative commands (list)
# title → container title (supports color codes)
# rows → number of rows (1-6)
#
# open-sound:
# enabled → play a sound when opening the GUI
# sound → Bukkit Sound enum name
# ----------------------------------------------------------
sell:
command: "sell"
aliases: []
title: "&8ᴘʟᴀᴄᴇ ɪᴛᴇᴍꜱ ɪɴ ʜᴇʀᴇ ᴛᴏ ꜱᴇʟʟ"
rows: 4
open-sound:
enabled: false
sound: "BLOCK_CHEST_OPEN"
# ----------------------------------------------------------
# SELL MESSAGE
# Shown to the player after selling items.
#
# [amount] = compact formatted total (e.g. 1.2K, 5M)
#
# You can enable/disable each notification type:
# - chat message
# - actionbar message
# - title + subtitle
# - sound
# ----------------------------------------------------------
sell-message:
chat:
enabled: true
message: "AFC00+$[amount]"
actionbar:
enabled: true
message: "AFC00+$[amount]"
title:
enabled: false
title: "AFC00+$[amount]"
subtitle: "&7Items sold successfully!"
fade-in: 10
stay: 40
fade-out: 10
sound:
enabled: true
sound: "ENTITY_EXPERIENCE_ORB_PICKUP"
# ----------------------------------------------------------
# SELL EMPTY
# Message shown when player closes the sell GUI without
# putting any sellable items inside.
#
# Set enabled to false to show nothing.
# ----------------------------------------------------------
sell-empty:
chat:
enabled: false
message: "&cNo items to sell."
actionbar:
enabled: false
message: "&cNo items to sell."
title:
enabled: false
title: "&cNo Items"
subtitle: "&7Put items in the GUI to sell them."
fade-in: 10
stay: 40
fade-out: 10
sound:
enabled: false
sound: "ENTITY_VILLAGER_NO"
# ----------------------------------------------------------
# BLACKLISTED ITEM RETURN
# Message shown when blacklisted items are returned.
#
# [count] = number of blacklisted items returned
# ----------------------------------------------------------
blacklist-return:
chat:
enabled: false
message: "&c[count] blacklisted item(s) returned."
actionbar:
enabled: false
message: "&c[count] blacklisted item(s) returned."
sound:
enabled: false
sound: "ENTITY_VILLAGER_NO"

- Download the latest version of Donutsell.
- Drop the
.jarfile into your server'spluginsfolder. - Restart your server.
- Done! setup required for prices only.

© 2026 DonutSell. All rights reserved to MIT.


