Menus
PixaWallet loads YAML menus from the folder selected by MenuSettings.MENU_CONFIG_FOLDER. The default English examples are in menus/en; Polish examples are available in menus/pl.
File layouts
A file can contain one menu directly:
Title: "#C85CFFPixaWallet &8• &fStore"
Size: "9 * 4"
Buttons: {}It can also contain several named menus:
Weapons:
Title: "Weapons"
Size: "9 * 3"
Buttons: {}
Cosmetics:
Title: "Cosmetics"
Size: "9 * 3"
Buttons: {}Both layouts can be used at the same time across multiple files. Menu identifiers must be unique. The default /wallet command opens Main_Menu, so keep that identifier available.
Basic button
Buttons:
Balance:
Slot: "4"
Material: SUNFLOWER
Title: "#FACC15&lYour wallet"
Lore:
- "&7Balance: #E879F9%pixawallet_points% points"Slot belongs to the upper GUI. Expressions such as 9 * 1 + 4 are supported by the bundled examples.
Paid offer
Buttons:
Starter_Bundle:
Slot: "11"
Material: CHEST
Title: "#57F287&lStarter bundle"
Lore:
- "&7Price: #F5B94275 points"
- "#FDE047Click to purchase"
Click:
Price: 75
Buy_Command: "give {player} diamond 1{N}give {player} emerald 4"{player}is replaced with the buyer's name.{N}separates multiple console reward commands.Pricemust be greater than zero for a paid offer.
Prefer one reliable reward command where possible. If one command in a multi-command reward succeeds and another fails, the purchase is marked PARTIAL and requires manual review.
Player_Slot offers
Player_Slot places an offer in the player's inventory or hotbar while the menu is open:
Buttons:
Hotbar_Offer:
Slot: "-1"
Player_Slot: "4"
Material: GOLDEN_APPLE
Title: "#F5B942&lGolden Apple"
Lore:
- "&7Price: 250 points"
Click:
Price: 250
Buy_Command: "give {player} golden_apple 1"Valid player slots are 0 through 35. Use Slot: "-1" for an inventory-only offer. A button may also use both Slot and Player_Slot. The player's original inventory is restored after leaving the menu.
Navigation
Buttons:
Open_Cosmetics:
Slot: "15"
Material: ENDER_CHEST
Title: "#C85CFF&lCosmetics"
Click:
Menu: CosmeticsMenu must match a loaded menu identifier exactly.
Custom items
Keep a vanilla Material as a fallback and add only the option used by your server:
Material: PAPER
modelData: 10001
# NexoItem: "your_item_id"
# ItemsAdderItem: "namespace:item_id"
# HeadDatabaseId: "12345"HeadDatabaseId should be used with Material: PLAYER_HEAD. Prefix forms are also supported:
Material: "nexo:your_item_id"Material: "itemsadder:namespace:item_id"Nexo, ItemsAdder, HeadDatabase and a matching resource pack are not included with PixaWallet.
Button reference
| Key | Description |
|---|---|
Slot | Upper GUI slot or -1 when only Player_Slot is used. |
Player_Slot | Player inventory slot from 0 to 35. |
Material | Vanilla material or supported prefixed custom item. |
Title | Display name with legacy or hex colors. |
Lore | Item description lines. |
Count | Displayed stack size. |
modelData | Vanilla CustomModelData value. |
NexoItem | Nexo item identifier. |
ItemsAdderItem | ItemsAdder namespaced item identifier. |
HeadDatabaseId | HeadDatabase head identifier. |
Click reference
| Key | Description |
|---|---|
Price | Point cost of the purchase. |
Buy_Command | Console reward command; separate commands with {N}. |
Menu | Opens another loaded menu. |
Player_Command | Immediately runs a command as the player. |
Console_Command | Immediately runs a command as the console. |
Copy_Item | Copies the displayed item where supported by the configured action. |
hideAnnouncment | Hides the public purchase announcement. Keep this legacy spelling. |
disableSound | Disables the configured purchase success sound. |
Animate | Enables the configured button animation behavior. |
Inventory_Menu_Switch | Switches inventory-menu behavior where configured. |
Inventory_Menu_Title | Sets the corresponding inventory-menu title. |
Immediate commands
Player_Command and Console_Command run as immediate click actions. Do not use them to deliver a paid reward; use Buy_Command so delivery is recorded in the purchase transaction.
Confirmation menu
Purchase confirmation is configured separately through MenuSettings.MENU_CONFIRM_CONFIG_FILE. Its purchase button uses BuyConfirm with Confirm_Action; the cancel button uses Decline_Action. Start with the bundled English or Polish file and preserve those action keys.