Skip to main content
ItemShop v2 is the platform API that Minecraft server owners use to run item shops. One user can own multiple shops, each shop can have multiple servers, and customers buy products that are delivered in-game through a plugin. The API is built on NestJS 11 with the Fastify 5 adapter. All routes are prefixed with /api/v2.

Core concepts

Shop

The organizational unit. Has an owner, assigned users with roles (view/edit/full), and its own configuration for payments, VAT, email, and Discord.

Server

A Minecraft server tied to a shop. Products are assigned to a server; the plugin receives real-time deliveries for that server.

Product

A catalog item with a price and a list of commands to run (with placeholders {PLAYER}, {QUANTITY}, {PRODUCT}).

Order

Created publicly by a customer. Generates a payment session; once paid, it goes to the plugin for fulfillment.

Order lifecycle

1

Creation

The customer sends POST /orders with a product, nickname, and payment method. The API creates the order and a payment session, then returns a payment link.
2

Payment

The customer pays at the provider. The provider sends a webhook to POST /payments/webhooks/.... After signature verification, the order moves to status paid.
3

Fulfillment

The Minecraft plugin receives a Socket.IO push, wins an atomic claim, journals and runs the formatted commands, then acknowledges fulfilment (statuscompleted).

Next steps

Quickstart

First requests: registration, shop, product, order.

Architecture

Module structure, layers, integrations (Redis, queues, WebSocket).

Authentication

API keys, permissions, and roles.

API Reference

Full endpoint list generated from OpenAPI.