DocumentationPayments and delivery

How does delivery work?

What the plugin does when the player activates a purchase, what happens with the server off and what to do when a delivery fails.

Updated October 31, 2026.

All pages

When a payment is approved, each unit bought goes to the player's inventory. When they activate a purchase, Hasty records the delivery for your server. The plugin fetches the delivery and runs the product's commands in the console, in order, replacing {player} with the buyer's nickname. This works for purchases in the game and on the web store. See Purchase inventory.

With a plugin older than 2.5.0 (or legacy 0.1.0), there is no inventory: the delivery is recorded as soon as the payment is approved.

With the server off

The payment is recorded and delivery waits. In Orders, the order shows as "Delivering" until the plugin connects. When the server comes back, the plugin delivers everything that was pending.

The player doesn't need to be online: the commands run from the console. If they are online, the plugin tells them in the chat that the purchase was confirmed.

Each command runs once

The plugin records in plugins/Hasty/fulfillment-journal.json every command it has already run. If the server goes down in the middle of a delivery, it picks up where it left off and doesn't repeat what was already done.

Note: keep fulfillment-journal.json in the server's backups and don't delete the plugins/Hasty folder when updating the plugin. The file holds the server key: don't share it.

When a delivery fails

If a command fails, Hasty tries again later, a few times. If it keeps failing, the order shows as Delivery failed in Orders, and the Orders item, in the dashboard menu, shows how many deliveries failed.

Common causes:

  • The command needs the player online, like give, and they had left.
  • The command belongs to a plugin that isn't installed or didn't load.
  • A typo in the product's command.
  • The command doesn't work from the console.

Check the command in Products and the console messages, without running it again: it could grant the perk a second time. Fixing the product applies to future purchases. Each order keeps the commands the product had at the moment of purchase; retries use that copy and don't get changes made afterwards.

Deliver again

  1. Fix the cause: wait for the player to join, install the missing plugin or restart the server.
  2. In Orders, click Deliver again, next to the order.

The order goes back to "Delivering", and the plugin runs again only the commands that failed. The ones that already worked are not repeated.

If the error is in the command stored with the order itself, talk to support and give the order number, without sending the server key. The team checks what has already run and guides the recovery.

How fast

Plugin How it gets deliveries
hasty-VERSION.jar (1.17 onwards) Hasty tells the plugin as soon as the payment is approved. If the notice doesn't arrive, the plugin asks from time to time.
hasty-legacy-VERSION.jar (1.8.9) The plugin asks Hasty every 5 seconds.