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.
Mark Shipped, Edit Tracking, and Mark Delivered are not in that menu either. They sit in the Ship This Order strip, which appears on a paid order with Physical items. One shipment covers every physical item in the order. See Shipping an order.
Which entries you see also depends on your permissions: refunding, resending, resetting downloads, processing, cancelling, recovering, and issuing replacements are each gated separately.
Downloads of an order
The download actions are not in the ⋯ menu. They sit in the Delivered goods card, next to the files they act on. Each file shows what the buyer used: “2 of 3 downloads · last Oct 19, 14:20 from Germany”, “not downloaded yet”, or “5 downloads (unlimited)”. Under the files, one line says how long downloads stay open (“Downloads open until Nov 18”, “Downloads open, no end date”, or “Downloads ended on Nov 18”) and which limit applies. The limit and the end date are the product’s rules when the order was paid. Later changes to the product do not change them.
Each action writes a row to the order timeline with the team member’s name, for example “Downloads extended to Nov 18 · By Mia”. Downloads also appear on the timeline with the file and the country.
A refunded order keeps these actions: a partial refund never ends downloads, and a full refund ends them only when End Access on Refund or Chargeback is on (see Refunds). A disputed order shows “Downloads closed”: the buyer can’t download from it, so only Revoke is offered.
Reset Count and Extend need the reset-downloads permission. Revoke and Restore Access need the process-orders permission.
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.
Fulfillment state of the items
The order status says whether the money arrived. Each line item has its own delivery state, shown on the item:
To Ship and Shipped come from the order’s shipment. In the API and in webhooks, a Physical item stays
AWAITING_FULFILLMENT until you mark the order delivered.
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 physical products, check the Shipping card. An unpaid order without an address waits for the buyer: Process Order and Mark as paid refuse it, because the order has no destination and no shipping price yet.
- 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.