Configurable category and shard-store GUIs driven by YAML shops and layouts, Vault pricing, optional PerfShards shard debits, access and maintenance controls, and purchase logging to SQLite or MySQL. Paper and Folia 1.21 - 26.x
Support
Report bugs and get support here: https://discord.gg/VvM6k2eBDa
Features
• Folia support – Region-safe scheduling where another player’s shop is opened or maintenance messages are sent.
• YAML catalogs – Categories and items from
shops/; GUI templates from gui/; main menu and paging.• Vault economy – Price display lore, configurable decimal pattern, rounding, and locale source (player or fixed tag).
• Abbreviated prices – Optional K/M/B/T style parsing for signs and inputs when enabled.
• Shard store – Optional category
shards; when shard-store.use-perfshards-balance is true and PerfShards is present, shard costs debit the API balance instead of running console take commands.• Sounds – Configurable click, decline, buy, and open sounds.
• Access control – World allow/deny lists and blocked gamemodes; bypass with
shop.bypass.locks.• Maintenance mode – Blocks normal shopping; optional broadcast on enable; bypass with
shop.bypass.maintenance.• Quick buy – Optional one-click purchase with configurable quantity.
• Navigation – Option to open main menu from escape/back flow.
• Display – Optional auto title-case for display names.
• GUI filler – Optional empty-slot glass configuration.
• Locales – Per-player language files with configurable fallback tag.
• MiniMessage – Player-facing strings from
messages.yml / lang files.• Admin tools – In-game
/shop reload for operators; /perfshop for reload, stats, and maintenance.Placeholders
%donutshop_total_items% – Total catalog item count
%donutshop_total_items_formatted% – Same count as plain text
%donutshop_total_buyed% – Total purchased item count for the player
%donutshop_formatted_total% – Total Vault money spent (formatted)
%donutshop_potion_me_money% – Money spent in the potion category (default shard setup naming)
%donutshop_potion_me_items% – Item purchases in the potion category
%donutshop_buyed_money_(number)% – Formatted price of purchase row (number), 1-based, up to 100 recent rows
%donutshop_buyed_items_(number)% – Quantity of purchase row (number)
%donutshop_buyed_items_name_(number)% – Item id of purchase row (number)
%donutshop_buyed_money_name_(number)% – Category id of purchase row (number)
Commands
/shop – Open the main shop GUI (shop.use)
/shop (categoryId) – Open a shop category (shop.use)
/shop shards – Open the shard store when enabled (shop.use)
/shop (categoryId) (player) – Open a category GUI for another online player (shop.open.other)
/shop shards (player) – Open the shard store for another online player (shop.open.other)
/shop reload – Reload plugin configuration and shop YAML (shop.reload)
/perfshop reload – Reload the plugin from disk (same as in-game shop reload path) (perfshop.admin)
/perfshop help – Show admin command usage (perfshop.admin)
/perfshop stats (player) – Show purchase stats for an online player (perfshop.admin)
/perfshop maintenance (on|off) [message] – Toggle maintenance in config; if enabling, optional remainder is broadcast as legacy text when
maintenance.broadcast-on-enable is true (perfshop.admin)Database
• SQLite
• MySQL

I'd appreciate it if you changed your review to 5 stars. And for next time, please use Discord instead of comments for bug reports. ;)