Files
DirtCryptoStore/README.md
T
2026-06-20 16:10:38 -04:00

1.7 KiB
Raw Blame History

DirtCryptoStore

DirtCryptoStore is a Paper 1.21.x crypto shop plugin.

Features

  • GUI crypto store
  • Live BTC/USD pricing
  • Unique BTC invoice amounts per player
  • QR map generation
  • QR placed in player off-hand
  • SQLite storage
  • Expired invoice pruning
  • Auto payment watching
  • Admin review tools

Requirements

  • Paper 1.21.x
  • Java 21
  • Maven 3.8.7+

Build

mvn clean package

Jar: target/DirtCryptoStore.jar

Install

  1. Put the jar in your server plugins folder
  2. Start the server
  3. Edit plugins/DirtCryptoStore/config.yml
  4. Restart the server or use /cryptostore reload

Player Commands

/cryptostore Opens the store GUI

/cryptostore status Shows the players pending invoice status

Admin Commands

/cryptostore reload Reloads plugin config and watcher

/cryptostore review Shows invoices marked UNDER_REVIEW

/cryptostore forceconfirm Manually fulfills an invoice

/cryptostore cancelinvoice Cancels an invoice

Permissions

dirtcryptostore.use Default: true

dirtcryptostore.admin Default: op

dirtcryptostore.bypass Reserved for future use

Payment Flow

  1. Player runs /cryptostore
  2. Player clicks a product
  3. Plugin converts USD price to BTC
  4. Plugin adds a unique sat offset
  5. Invoice is created
  6. QR map is placed in off-hand
  7. Player pays exact BTC amount
  8. Plugin watches blockchain
  9. After confirmations, commands run

Storage

SQLite database file: plugins/DirtCryptoStore/dirtcryptostore.db

Pruning

Old invoices can be pruned with config options:

  • prune-enabled
  • prune-after-days
  • prune-statuses

Notes

  • BTC-focused
  • Live pricing uses CoinGecko
  • Payment watching uses blockchain.info
  • Large public deployments should later add provider fallback and audit logging