> ## Documentation Index
> Fetch the complete documentation index at: https://docs.vexaris.net/llms.txt
> Use this file to discover all available pages before exploring further.

# Delivery and stock

> How Vexaris hands over files, codes and license keys after a payment, and what happens when stock runs out.

Delivery is automatic by default: the moment a payment is approved, the product lands in the customer library. This page covers what is handed over, how stock behaves and how to keep the pool healthy.

## Delivery methods

| Method | What the buyer gets |
| - | - |
| Stock / Code | The next unused item from the pool, marked as sold and hidden from other buyers |
| File | A signed link to the uploaded file, tied to the order |
| Text | A text block stored on the product |
| License | A key generated for this order, bound to it and verifiable later |
| Manual | The order waits in the panel until you mark it delivered |
| Webhook | Your endpoint receives the order details |
| Minecraft (RCON) | Commands run against the game server configured under **Store → Connection** |

## Single stock versus unlimited

| | Single stock | Unlimited stock |
| - | - | - |
| Pool | One record per unit | No pool |
| Consumed per sale | Yes, one item | No |
| Sales stop | At zero | Never |
| Typical use | E-pins, codes, accounts | Files, e-books, installers |

The product list shows remaining stock and turns the counter into a low stock warning as the pool empties. A product with zero stock stops selling but stays visible to you in the panel.

## Adding stock

**1. Open the stock editor**

In **Store → Products** use the stock action on a single stock product.

**2. Paste your codes**

Add items one at a time or paste thousands at once, one per line. Empty lines are ignored.

**3. Save**

The counter updates immediately. Nothing is revealed until a buyer purchases.

## Download links

Files are not served from a public directory. Each download goes through a signed URL tied to the order and to the signed in buyer, expires after a short window and is written to the audit trail. Sharing a link does not open the file, because the request is checked against the session that owns the order.

## License keys

When the delivery method is **License**, Vexaris generates a key per order using the prefix set on the product. Keys can be suspended or deleted in **Store → Licenses**, and the store exposes a verification endpoint your software can call to confirm that a key is genuine and still active.

> [!WARNING]
>
> Do not switch a live product from single stock to unlimited by accident. The switch leaves existing orders untouched, but the pool stops being consumed, which is almost never what you want for codes that can only be redeemed once.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.