The page lives at
/invoices in the dashboard. Orders and invoices are the same object in Shoppex: the order is what the buyer bought, the invoice is what they paid.The list
Each row shows six columns: Order, Amount, Payment method, Status, Date, and an actions menu. Three filters narrow the list:- Status — see below for what each value means.
- Payment method — the gateway that processed the payment.
- Order type — separates normal shop orders from reseller and other order sources.
Order status
Acting on a single order
Open an order to see the buyer, the line items, the payment details, and what was delivered. The page promotes the one action you most likely came for as a button next to the order header, and keeps the rest behind the ⋯ menu.
Fulfill Item and Retry Delivery are not in that menu. They sit on the line item itself, in the Delivery Required strip, and appear only on a completed order whose item has not been delivered. Use Fulfill Item for a Service product waiting on you, and Retry Delivery after you have fixed a Dynamic endpoint that was down.
Which entries you see also depends on your permissions: refunding, resending, resetting downloads, processing, cancelling, recovering, and issuing replacements are each gated separately.
Issuing a replacement
Issue Replacement is not a general order action. It is offered only when the order isCOMPLETED, holds exactly one product, and that product’s mode is Serials. It hands the buyer a fresh key — from the remaining pool, or one you type in yourself — and supersedes the one it replaces. Superseded is a state of the order rather than a badge in this dashboard: the buyer’s portal shows the old key struck through, and later delivery emails list only the keys that are still good. The old key is not “burned”, and it does not return to your stock. See Serials and licenses.
Cancelling an order
Cancel Order is the action theVOIDED status comes from. It works on an unpaid order, and it also works on a paid order held at AWAITING_STOCK — in that case the dialog warns you first, because the buyer has already paid, the payment method cannot be refunded automatically, and you have to refund by hand. Cancelling cannot be undone.
When an order looks stuck
Work through these in order:- Check the status. If it is
PENDING, the gateway has not confirmed yet. Crypto needs its confirmations before anything happens. - Check the fulfillment state on the order. A paid order with nothing delivered means fulfillment failed, not payment.
- For dynamic products, look at whether your endpoint answered. Shoppex makes one attempt with a 15-second timeout and does not retry on its own. Fix your endpoint, then use Retry Delivery on the line item.
- For Discord roles, confirm the buyer completed the Discord authorization. Without it the grant cannot run. See Discord roles.
- Still stuck? Open View History on the order. It records every state change with a timestamp.