VisualShop v1.21.8-2.0.0

Tired of editing configs? Now you can create and edit shops in-game.
Category-editing.png
View attachment 939141
1777497124036.png


VisualShop
A modern, easily configurable Minecraft shop plugin - no more config file editing (mostly).

Minecraft-1.20+-green.svg
Java-17+-orange.svg

Features

Core Functionality
  • GUI-Based Shopping: Intuitive inventory-based interface for browsing and purchasing items
  • Category Organization: Organize shop items into customizable categories
  • Bulk Transactions: Support for buying/selling multiple items at once with configurable quantity controls
Administrative Tools
  • In-Game GUI Editor: Edit shop categories and items directly through a visual interface
  • Web Editor: Web based shop editor - create items, categories, organize. Modify source files as needed (HTML/CSS/JS). Changes can be synced instantly or manually.
  • Item Configuration: Set prices, rename items, and configure special properties via commands
  • Category Management: Create, rename, delete, and reorder shop categories
  • Flexible Layout System: Configure GUI button positions, materials, and labels
Requirements
  • Minecraft server (Spigot/Paper) 1.20+
  • Java 17 or higher
  • Vault plugin
  • An economy plugin (e.g., EssentialsX, CMI, etc.)
Installation
  1. Download the latest release of VisualShop
  2. Install Vault and your preferred economy plugin
  3. Place VisualShop.jar in your server's plugins folder
  4. Restart the server
  5. Configure the plugin using /shop admin commands
Commands

Player Commands
  • /shop - Open the main shop category menu
  • /shop <category> - Open a specific shop category
  • /sell - Sell the item in your hand
  • /sell all - Sell all sellable items from your inventory

Admin Commands
  • /shop admin webeditor - Creates a web editor session with clickable link.
Button Management
  • /shop admin button prevpage <material> - Create a previous page button
  • /shop admin button nextpage <material> - Create a next page button
  • /shop admin button filler <material> - Create a GUI filler item
  • /shop admin button balance <material> - Create a balance display item
  • /shop admin button back <material> - Create a back button
Category Management
  • /shop admin category create <id> <name> - Create a new shop category
  • /shop admin category <id> rename <name> - Rename an existing category
  • /shop admin category <id> delete - Delete a category
  • /shop admin category <id> edit - Open the category editor GUI
  • /shop admin category <id> icon <material> - Set a category's display icon
  • /shop admin category <id> button <material> - Create a category button for the menu
  • /shop admin editcategorymenu - Edit the category selection menu
Item Configuration
  • /shop admin item buyprice <price> - Set buy price for the item in hand
  • /shop admin item sellprice <price> - Set sell price for the item in hand
  • /shop admin item rename <newName...> - Rename the item in hand
  • /shop admin item info - Display detailed information about the item in hand
  • /shop admin item addcommand <command...> - Add commands to execute when purchasing the item
  • /shop admin item removecommand <index|all> - Remove commands from the item
  • /shop admin item description add <text...> - Add a description line to the item
  • /shop admin item description remove <lineNumber> - Remove a description line
  • /shop admin item description set <lineNumber> <text...> - Update a description line
  • /shop admin item description clear - Clear all description lines
  • /shop admin item description list - List all description lines
Available Command Actions:
Code:
[MESSAGE] - Sends a message to the player: [MESSAGE] Hello, %player_name%!
[CHAT] - Sends a chat message to the player: [CHAT] Hello, %player_name%!
[TITLE] - Sends a title to the player: [TITLE] Hello, %player_name%!, 20, 60, 20
[ACTIONBAR] - Sends an action bar message to the player: [ACTIONBAR] Hello, %player_name%!
[SOUND] - Plays a sound to the player: [SOUND] ENTITY_EXPERIENCE_ORB_PICKUP, 1, 1
[PLAYER] - Executes a command as the player: [PLAYER] /command %player_name%
[CONSOLE] - Executes a command as the console: [CONSOLE] /command %player_name%
[BROADCAST] - Broadcasts a message to the server: [BROADCAST] Hello, %player_name%!
[PARTICLE] - Spawns a particle at the player's location: [PARTICLE] FLAME, 1, 0, 0, 0

Supports all PlaceholderAPI placeholders.

System Commands
  • /shop admin reload - Reload the configuration file
  • /shop admin help - Display help information
Permissions
  • visualshop.command.shop - Access to /shop command
  • visualshop.command.shop.admin - Access to /shop admin commands
  • visualshop.command.sell - Access to /sell commands
Configuration

The plugin uses a single config.yml file with two main sections: messages and layout.

Messages Section

All text displayed to players is configurable through the messages section. This includes:
  • Command usage messages
  • Success/error messages
  • GUI titles and button labels
  • Help text
Example:
Code:
messages:
  buy:
    success: "<#5DB16E>Purchased &e%quantity%x <#2D9C3B>for &e%total%"
    not-enough-money: "<#E33939>You don't have enough money."

Layout Section

The layout section controls the visual appearance of buy/sell GUIs.

Buy GUI Layout Configuration:

Controls Section:

  • current: Display for current quantity (row, col, material, name)
  • maxStack: Maximum items that can be bought at once
  • decrements: List of buttons to decrease quantity (amount, row, col, material, name)
  • sets: List of buttons to set exact quantities (value, row, col, material, name, lore)
  • increments: List of buttons to increase quantity (amount, row, col, material, name)
Button Section:
  • back: Back button configuration (row, col, material, name, lore)
  • buy: Buy button configuration (row, col, material, name, lore)
  • balance: Balance display configuration (row, col, material, name, lore)
Example:
YAML:
layout:
  buy:
    controls:
      current:
        row: 3
        col: 5
        material: PAPER
        name: "<#5DB16E>Quantity: %quantity%"
      maxStack: 128
      decrements:
        - amount: 10
          row: 3
          col: 2
          material: RED_CONCRETE
          name: "&c-10"
      sets:
        - value: 64
          row: 3
          col: 6
          material: LIME_CONCRETE
          name: "&b64"
      increments:
        - amount: 1
          row: 3
          col: 7
          material: GREEN_CONCRETE
          name: "&a+1"
    buy:
      row: 5
      col: 7
      material: EMERALD
      name: "<#5DB16E>Buy"
      lore:
        - "&7Total: <#5DB16E>%total%€"
        - "&7Click to buy!"

Placeholders

The following placeholders are available in messages and layout configurations:

General:
  • %balance% - Player's current balance
  • %quantity% - Item quantity
  • %total% - Total price
  • %price% - Price per item
  • %amount% - Amount available
Item-specific:
  • %buyPrice% - Item's buy price
  • %sellPrice% - Item's sell price
  • %name% - Item/category name
  • %id% - Category ID
  • %material% - Material type
  • %slot% - Slot position
Color Codes

VisualShop supports:
  • Legacy color codes: &c, &a, etc.
  • Hex colors: <#RRGGBB> format
  • Gradient colors through MiniMessage formatting
Usage Guide

For Server Administrators

Setting Up Your First Shop
  1. Create a category:
    Code:
    /shop admin category create food Food & Drinks
  2. Get the item you want to sell and set prices:
    • Hold the item in your hand
    • /shop admin item buyprice 10 (players can buy for 10)
    • /shop admin item sellprice 5 (players can sell for 5)
    • /shop admin item description add &7A delicious item! (optional description)
  3. Open the category editor:
    Code:
    /shop admin category food edit
  4. Place items in the GUI:
    • Items in your inventory will appear in the editor
    • Click to place them in the shop
    • Use filler items to organize the layout
  5. Save your changes:
    • Click the save button in the editor GUI
  6. Set up the category menu:
    Code:
    /shop admin editcategorymenu
    • Place category buttons in the menu
    • Add navigation buttons as needed
Customizing the GUI Layout

Edit config.yml to change:
  • Button positions (row/col)
  • Button materials
  • Button labels and lore
  • Quantity controls (add/remove buttons)
  • Maximum purchase limits
After editing, run /shop admin reload to apply changes.

For Players

Buying Items
  1. Open the shop: /shop
  2. Select a category
  3. Click an item to open the buy menu
  4. Use +/- buttons to adjust quantity
  5. Click the buy button to complete purchase
Selling Items

Sell one item:
  1. Hold the item in your hand
  2. Run /sell
  3. The item will be sold
Sell all items:
  1. Run /sell all
  2. All sellable items in your inventory will be sold automatically
Data Storage

Shop data is stored in YAML format in the plugins/VisualShop/ directory:
  • shops.yml - Contains all shop categories, items, and configurations
  • config.yml - Plugin configuration and messages
Troubleshooting

If items aren't matching:
  1. Use /shop admin item info to inspect the item
  2. Check that buy prices match sell prices
  3. Ensure PDC data isn't interfering
  4. Check server logs for mismatch details
GUI not updating
  • Run /shop admin reload to refresh configurations
  • Ensure you saved changes in the editor GUI
  • Check for errors in console
Economy not working
  • Verify Vault is installed and running
  • Ensure an economy plugin (EssentialsX, etc.) is installed
  • Check plugin load order in console
Dependencies
  • Vault
  • PlaceholderAPI
Support

For issues, suggestions, or contributions, please join my Discord.


Migration from ShopGUI+

Overview
  • VisualShop includes a migration tool to convert ShopGUI+ category files to VisualShop format.
  • Place ShopGUI+ .yml category files in the migration folder and run the migrate command in-game.
  • Migration supports migrating all files at once or a single file.
How ShopGUI+ is handled
  • ShopGUI+ category files typically have a root key with the category name and subkeys like name, buttons, fillItem, and items.
  • The migration imports item material, name, lore, quantity, buy/sell prices and commands (command items are converted to VisualShop command format). Buttons and filler items are also migrated.
Prepare files
  • Create the migration folder (once):
    Code:
    plugins/VisualShop/migration/
  • Copy the ShopGUI+ .yml category files you want to migrate into that folder (for example blocks.yml, abilities.yml, ...).
  • Backup your server before running the migration.
Run Migration
  • Migrate all files
    Code:
    /shop admin migrate ShopGuiPlus
  • Migrate a single file
    Code:
    /shop admin migrate ShopGuiPlus blocks.yml
Tab completion
  • After typing /shop admin migrate press TAB to get the supported migration sources (currently: ShopGuiPlus).
  • After typing /shop admin migrate ShopGuiPlus press TAB to list .yml files in plugins/VisualShop/migration/ (suggests filenames).
What is migrated
  • Item material/name/lore/quantity
  • Buy and sell prices
  • Command-type items (commands are converted and placeholders adjusted)
  • Navigation buttons (prev/next/back) and filler items
Post-migration steps
  • Verify the migration results: the command prints a summary (categories created, items migrated, warnings and errors).
  • Open the category editor for each migrated category to verify layout and pages:
    Code:
    /shop admin category <id> edit
    (or /shop <category>)
  • Use /shop admin editcategorymenu to add and configure category menu and buttons appropriately
  • If some items landed on an unexpected page, use the editor to move them across pages or adjust page values in the source file and re-migrate that single file.
Troubleshooting
  • No files found or File not found
    • Ensure files are in plugins/VisualShop/migration/ and have .yml extensions.
    • If migrating a single file, include the filename (e.g., blocks.yml).
  • Missing or unknown materials
    • If a material name in ShopGUI+ doesn't match a valid Material in your server version, migration will fall back to STONE (a warning will be shown). Update materials after migration.
  • Navigation or page issues
    • ShopGUI+ may have pages that contain only buttons or fillers. Migration preserves page fields; if an intermediate page looks empty, inspect the migrated items and buttons (/shop admin item info and use the category editor).
    • If navigation appears to get stuck, check that prev/next/back buttons were migrated to every page (migration duplicates navigation buttons to each page automatically).
  • Commands not executing / placeholders
    • Commands are converted and %PLAYER% becomes %player_name% (VisualShop placeholder). Ensure PlaceholderAPI and your economy plugin are installed.
Notes and recommendations
  • Always test migration on a staging server first.
  • If you need different behavior, you can migrate only a single file, inspect the results and re-run on a single file after adjusting the source.
  • After successful migration and verification, remove migrated files from the migration/ folder to avoid accidental re-runs.
Buy a license now
$3.99
EULA
Standard EULA
Use on any projects you own with attribution
Support
Standard
Includes:
Download the resource
Access new updates
Support from the creator
Support duration
3 months
Share and earn
Refer this resource and earn a 10% commission.
331 Views
0 Purchases
1 Downloads
Jan 10, 2026 Published
Apr 29, 2026 Updated
Not yet rated
4.5 MB File size
Open source
  1. No
DRM-free
  1. Yes
Unobfuscated
  1. Yes
Type
  1. Economy
  1. GUI
  1. Shop
Game mode
  1. Survival
  1. Skyblock
  1. Economy
Supported software
  1. Bukkit
  1. Spigot
  1. Paper
  1. Purpur
Supported versions
  1. 1.21.11
  1. 1.21.8
Supported languages
  1. English
Creator
Owner
Struggling to cover the costs of your server? Set up your own webstore with Tebex in under 30 seconds.
Lag-free, customizable servers ready in minutes.
Host your adventure today!
Recommended for you
A highly customizable calendar plugin for all kinds of servers.
Not yet rated
0 purchases
A web-based Minecraft store platform for managing users, services, purchases, and admin operations.
Not yet rated
0 purchases
#1 BuiltByBit Plugin ~ Protects your server from crash packet exploits ~ Folia Support
5.00 star(s) 140 ratings
4,162 purchases
Create items, blocks, mobs, emojis, and more with automatic resourcepack generation!
5.00 star(s) 52 ratings
3,077 purchases
Protect your server from crash/dupe/packet exploits with the ultimate security fix plugin.
5.00 star(s) 44 ratings
3,019 purchases
Share and earn
Refer this resource and earn a 10% commission.
331 Views
0 Purchases
1 Downloads
Jan 10, 2026 Published
Apr 29, 2026 Updated
Not yet rated
4.5 MB File size
Open source
  1. No
DRM-free
  1. Yes
Unobfuscated
  1. Yes
Type
  1. Economy
  1. GUI
  1. Shop
Game mode
  1. Survival
  1. Skyblock
  1. Economy
Supported software
  1. Bukkit
  1. Spigot
  1. Paper
  1. Purpur
Supported versions
  1. 1.21.11
  1. 1.21.8
Supported languages
  1. English
Creator
Owner
Struggling to cover the costs of your server? Set up your own webstore with Tebex in under 30 seconds.
Lag-free, customizable servers ready in minutes.
Host your adventure today!
Recommended for you
A highly customizable calendar plugin for all kinds of servers.
Not yet rated
0 purchases
A web-based Minecraft store platform for managing users, services, purchases, and admin operations.
Not yet rated
0 purchases
#1 BuiltByBit Plugin ~ Protects your server from crash packet exploits ~ Folia Support
5.00 star(s) 140 ratings
4,162 purchases
Create items, blocks, mobs, emojis, and more with automatic resourcepack generation!
5.00 star(s) 52 ratings
3,077 purchases
Protect your server from crash/dupe/packet exploits with the ultimate security fix plugin.
5.00 star(s) 44 ratings
3,019 purchases
Top