Skip to Content
FluxStore is currently invite-only. Some sections of this documentation are still being written and expanded.
ServersServer Setup

Server Setup

Your Minecraft server needs to be connected to FluxStore so purchased commands can be delivered to players. Without a connection, there’s no way to execute commands on your server when a customer completes a purchase.

How it works

FluxStore uses a real-time connection between your Minecraft server and the FluxStore platform. When a customer buys something, the delivery commands are sent to your server instantly. If your server happens to be offline when a purchase comes in, the commands are queued and delivered automatically when it reconnects. Nothing is ever lost.

Adding a server

From Servers in your dashboard, click Add Server and provide:

  1. Name: a display name for this server (e.g. “Hub”, “Survival”, “Skyblock”). Used in the dashboard and when selecting which server runs each command.
  2. IP Address: your server’s public IP or domain. Displayed on your storefront so players know where to connect.

After saving, FluxStore generates a unique connection token. Copy this token. You’ll need it when configuring the plugin on your server.

Keep your connection token secret. Anyone with this token can send commands to your server through FluxStore. If you suspect a token has been compromised, regenerate it from the server settings.

Multiple servers

You can connect multiple servers to a single store. Each server gets its own connection token and maintains its own connection independently.

When configuring delivery commands on a package, you select which server each command runs on. A single package can deliver commands to different servers. For example, you could set a rank on your hub and give a kit on your survival server.

Server status

The Servers page in your dashboard shows live connection status for each server:

  • Online: connected and ready to receive commands.
  • Offline: not connected. Commands will be queued until it reconnects.

The status updates live. When a server connects or disconnects, the dashboard reflects the change immediately.

Regenerating a token

If you need a new connection token, open the server in your dashboard and click Regenerate Token. Copy the new token, update config.yml on your server, and restart the plugin.

Regenerating a token immediately invalidates the old one. Your server will disconnect until the new token is configured.

Technical details

This section is for those who want to understand what’s happening under the hood. You don’t need to know any of this to use FluxStore, but it might be helpful if you’re debugging connection issues or are just curious.

Connection protocol

The FluxStore plugin connects to the backend using SignalR , Microsoft’s real-time communication library built on top of WebSocket. When the plugin starts, it opens a persistent WebSocket connection to FluxStore and authenticates using your server’s connection token.

The connection token is a combination of your server ID and a 32 character secret. The secret is hashed and never stored in plain text on our servers.

Command delivery

When a customer completes a purchase, FluxStore creates a set of pending commands for each package in the order. These go through a lifecycle:

StatusWhat it means
PendingCommand created, waiting to be sent to the server
DeliveredSent to the plugin, waiting for execution result
CompletedPlugin confirmed the command ran successfully
Awaiting playerPlayer is offline, command will retry when they join
FailedCommand failed after 3 retry attempts

Commands are delivered in two ways:

  1. Push (primary): if the server is connected, commands are pushed over the WebSocket connection immediately. A background service also sweeps every 30 seconds to catch anything that might have been missed.
  2. Poll (fallback): the plugin periodically checks for pending commands via a REST endpoint. The poll interval adjusts based on whether there are commands waiting (15 to 300 seconds).

Retry and recovery

If a command fails, FluxStore retries with exponential backoff (30s, 60s, 120s) up to 3 attempts. If the target player is offline when the command needs to run, the command is held in an “awaiting player” state. When the plugin reports that the player has joined the server, all their waiting commands are pushed immediately.

Next steps