MineCommerce

⭐ — (3 endorsements) 📥 118 downloads 📌 v1.0-SNAPSHOT 📅 9/4/2025
🟠 Updated over a year ago

By Bobcat · economy

⬇ Download Mod Source: Modrinth ↗ 📅 Updated: 9/1/2025 📅 Created: 9/4/2025

🔍 Analysis

  • 🏆 #42 of 109 economy mods in this game by downloads

📋 About This Mod

# MineCommerce **Tebex-like self-hosted shop plugin for Paper 1.21** — sell ranks, items, and packages directly through your **WooCommerce** or **Shopify** store with **Stripe** payments, without high fees or third-party lock-in. MineCommerce connects your store and your Minecraft server: * Players buy on your store (WooCommerce/Shopify + Stripe). * Webhooks trigger fulfillment in-game. * Deliverables: items, ranks (LuckPerms), currency (Vault), or custom commands. --- ## Features * **WooCommerce + Shopify support** * **SQLite (default), MySQL, Postgres** database support * **Account linking** (`/minecommerce link <code>`) * **Order fulfillment** (commands, items, ranks, currency) * **Refunds & revokes** with audit logging * **Retry queue** with persistence across restarts * **Bedrock UI support** (via Floodgate + Geyser) * **Store GUI** with categories and product images * **Scheduled sync** or **real-time webhooks** * **Configurable mappings** (`mappings.yml`) * **JSON logs + REST API** for monitoring * **Secure webhook verification** (HMAC) --- ## Installation 1. Download the latest **MineCommerce.jar**. 2. Drop into your server’s `plugins/` folder. 3. Restart the server to generate configs: * `config.yml` * `mappings.yml` * `minecommerce.db` (if SQLite) --- ## Configuration ### `config.yml` ```yaml server: http_enabled: true http_port: 8443 webhook_secret: "CHANGE_ME" store_url: "https://example.com/store" platform: woocommerce # generic|woocommerce|shopify link_template: "" delivery: retry_attempts: 5 retry_backoff_seconds: 60 link: code_length: 6 code_ttl_seconds: 900 security: verify_ssl: true max_webhook_age_seconds: 600 database: type: sqlite sqlite: path: minecommerce.db mysql: host: 127.0.0.1 port: 3306 user: minecommerce password: secret_password database: minecommerce ssl: true postgres: host: 127.0.0.1 port: 5432 user: minecommerce password: secret_password database: minecommerce ssl: true woocommerce: base_url: "https://yourstore.example" consumer_key: "ck_..." consumer_secret: "cs_..." shopify: shop: "your-shop" api_version: "2024-07" access_token: "shpat_..." sync: enabled: true schedule_minutes: 60 mode: write_mappings image_as_button: true ``` --- ### `mappings.yml` Link SKUs from WooCommerce/Shopify → in-game actions. ```yaml products: vip_30d: name: "VIP Rank (30 days)" icon: "EMERALD" price: 9.99 description: "30 days of VIP access" product_id: "123" # WooCommerce product ID variant_id: "45678901" # Shopify variant ID actions: - type: permission_group group: vip duration_days: 30 - type: command command: "say {player} is now a VIP!" - type: currency amount: 1000 categories: featured: name: "Featured" icon: "GOLD_INGOT" description: "Top picks" skus: - vip_30d ``` Actions supported: `command`, `permission_group`, `currency`, `item`. Placeholders: `{player}`, `{uuid}`, `{order_id}`, `{sku}`. --- ## Sync & Webhooks ### Manual Sync ``` /minecommerce admin sync ``` * Fetches products & categories * Rewrites `mappings.yml` * Updates images, SKUs, variants ### Scheduled Sync Configured via: ```yaml sync: enabled: true schedule_minutes: 60 ``` ### Webhooks * Endpoint: `POST http://<server>:<port>/api/v1/sync` * Secure via `X-Timestamp` + `X-Signature` (HMAC SHA256 with `webhook_secret`) --- ### Shopify Delta * Endpoint: `/api/v1/webhooks/shopify` * Example payload: ```json { "id": 9876543210 } ``` ### WooCommerce Delta * Endpoint: `/api/v1/webhooks/woocommerce` * Example payload: ```json { "resource": "product", "id": 12345 } ``` --- ## Commands | Command | Permission | Description | | ---------------------------------- | -------------------- | ---------------------------------------- | | `/store` | `minecommerce.store` | Open in-game store GUI / send store link | | `/minecommerce link <code>` | — | Link player to store account | | `/minecommerce status` | — | Check order status | | `/minecommerce admin sync` | `minecommerce.admin` | Run manual sync | | `/minecommerce admin deliver <id>` | `minecommerce.admin` | Manually deliver order | | `/minecommerce admin revoke <id>` | `minecommerce.admin` | Revoke an order | | `/minecommerce admin reload` | `minecommerce.admin` | Reload config | --- ## Security * HMAC-signed webhook verification * Timestamp validation (`max_webhook_age_seconds`) * Idempotent deliveries (no duplication) * No card data stored (handled by Stripe) --- ## Example Flow 1. Player buys **VIP (30 days)** on

# MineCommerce

Tebex-like self-hosted shop plugin for Paper 1. 21 — sell ranks, items, and packages directly through your WooCommerce or Shopify store with Stripe payments, without high fees or third-party lock-in.

MineCommerce connects your store and your Minecraft server:

Players buy on your store (WooCommerce/Shopify + Stripe). Webhooks trigger fulfillment in-game. Deliverables: items, ranks (LuckPerms), currency (Vault), or custom commands.

## Features

WooCommerce + Shopify support SQLite (default), MySQL, Postgres database support Account linking (`/minecommerce link `) Order fulfillment (commands, items, ranks, currency) Refunds & revokes with audit logging Retry queue with persistence across restarts Bedrock UI support (via Floodgate + Geyser) Store GUI with categories and product images Scheduled sync or real-time webhooks Configurable mappings (`mappings.yml`) JSON logs + REST API for monitoring Secure webhook verification (HMAC)

## Installation

1. Download the latest MineCommerce.jar. 2. Drop into your server’s `plugins/` folder. 3. Restart the server to generate configs:

`config.yml` `mappings.yml` `minecommerce.db` (if SQLite)

## Configuration

### `config.yml`

```yaml server: http_enabled: true http_port: 8443 webhook_secret: "CHANGE_ME" store_url: "https://example.com/store" platform: woocommerce # generic|woocommerce|shopify link_template: ""

delivery: retry_attempts: 5 retry_backoff_seconds: 60

link: code_length: 6 code_ttl_seconds: 900

security: verify_ssl: true max_webhook_age_seconds: 600

database: type: sqlite sqlite: path: minecommerce.db mysql: host: 127. 0. 0. 1 port: 3306 user: minecommerce password: secret_password database: minecommerce ssl: true postgres: host: 127. 0. 0. 1 port: 5432 user: minecommerce password: secret_password database: minecommerce ssl: true

woocommerce: base_url: "https://yourstore.example" consumer_key: "ck_..." consumer_secret: "cs_..."

shopify: shop: "your-shop" api_version: "2024-07" access_token: "shpat_..."

sync: enabled: true schedule_minutes: 60 mode: write_mappings image_as_button: true ```

### `mappings.yml`

Link SKUs from WooCommerce/Shopify → in-game actions.

```yaml products: vip_30d: name: "VIP Rank (30 days)" icon: "EMERALD" price: 9. 99 description: "30 days of VIP access" product_id: "123" # WooCommerce product ID variant_id: "45678901" # Shopify variant ID actions: - type: permission_group group: vip duration_days: 30 - type: command command: "say {player} is now a VIP!" - type: currency amount: 1000

categories: featured: name: "Featured" icon: "GOLD_INGOT" description: "Top picks" skus: - vip_30d ```

Actions supported: `command`, `permission_group`, `currency`, `item`. Placeholders: `{player}`, `{uuid}`, `{order_id}`, `{sku}`.

## Sync & Webhooks

### Manual Sync

``` /minecommerce admin sync ```

Fetches products & categories Rewrites `mappings.yml` Updates images, SKUs, variants

### Scheduled Sync

Configured via:

```yaml sync: enabled: true schedule_minutes: 60 ```

### Webhooks

Endpoint: `POST http://:/api/v1/sync` Secure via `X-Timestamp` + `X-Signature` (HMAC SHA256 with `webhook_secret`)

### Shopify Delta

Endpoint: `/api/v1/webhooks/shopify` Example payload:

```json { "id": 9876543210 } ```

### WooCommerce Delta

Endpoint: `/api/v1/webhooks/woocommerce` Example payload:

```json { "resource": "product", "id": 12345 } ```

## Commands

| Command | Permission | Description | | ---------------------------------- | -------------------- | ---------------------------------------- | | `/store` | `minecommerce.store` | Open in-game store GUI / send store link | | `/minecommerce link ` | — | Link player to store account | | `/minecommerce status` | — | Check order status | | `/minecommerce admin sync` | `minecommerce.admin` | Run manual sync | | `/minecommerce admin deliver ` | `minecommerce.admin` | Manually deliver order | | `/minecommerce admin revoke ` | `minecommerce.admin` | Revoke an order | | `/minecommerce admin reload` | `minecommerce.admin` | Reload config |

## Security

HMAC-signed webhook verification Timestamp validation (`max_webhook_age_seconds`) Idempotent deliveries (no duplication) * No card data stored (handled by Stripe)

## Example Flow

1. Player buys VIP (30 days) on

🤖 AI-enhanced — based on mod data

📊 Mod Details

Game
Minecraft Plugins
Author
Bobcat
Version
1.0-SNAPSHOT
Downloads
118
Endorsements
3
Category
economy
Created
9/4/2025
Updated
9/1/2025
Game Versions
1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4
Tags
economy, management, utility

🔧 How to Install Minecraft Plugins Mods

Download from Modrinth. Use Prism Launcher or drop into your mods folder.

📖 Full step-by-step install guide for Minecraft Plugins →

Visit the official mod page for specific installation instructions for this mod.

🎮 Need cheat codes or console commands? Check ur gaming wiki for Minecraft Plugins commands, item IDs, and more.

❓ Frequently Asked Questions

Which Minecraft Plugins versions does MineCommerce support?

The author lists 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5. Other versions may work but are untested by the author.

What is the latest version of MineCommerce?

Version 1.0-SNAPSHOT, published 2025-09-01 with 118 downloads recorded at the source.

Keep browsing — more Minecraft Plugins mods await