Orders

Two statuses, never typed in

Every order has a payment status and a fulfilment status. Neither is a field somebody sets. Both are worked out from the records underneath, every time they are read.

That matters because a status field and the records it summarises drift apart the first time something fails halfway. Here they cannot.

Payment status

Derived from the payment transactions on the order:

StatusMeans
PendingNothing captured yet.
AuthorizedThe money is held but not taken.
Partially paidSome captured, less than the total.
PaidCaptured in full.
Partially refundedSome given back.
RefundedAll of it given back.
VoidedCancelled before capture.

Fulfilment status

Derived from how much of each line has shipped: unfulfilled, partially fulfilled, or fulfilled.

Order numbers

Order numbers are sequential per shop and never reused, including for orders that are later cancelled. A gap in the sequence would be more alarming than a cancelled order in it.

Payments

Payments are recorded as transactions — authorize, capture, void, refund — with the gateway that handled each one. Online orders are paid through Stripe; there is no way to mark an online order paid by hand, because money that moves outside the gateway is money the ledger cannot verify. Counter sales are different: the register takes cash, a card on a Stripe reader, or a card on your own terminal, and each is recorded with the tender it came in on so close of day can reconcile them separately.

Editing an order

An order can be edited after it is placed: add a line, change a quantity, remove something. Every edit is recorded, and the difference in money becomes something owed to you or to the customer. Editing does not silently rewrite what was originally agreed.

Stock follows the edit. Adding a line commits stock; removing one releases it.

Cancelling

Cancelling an order releases its committed stock and voids or refunds the payment. It does not delete the order — you keep the record of what happened.

Draft orders

Not every sale starts on the storefront. A customer rings up, or emails, or stands in front of you wanting something you have to order in — a draft order is how you take that one.

Build the order line by line, apply a discount if you are giving one, and it is priced by the same engine that prices a cart on the web. There is no second set of arithmetic for orders you type in, which is the point: a phone order and a web order that contain the same things cost the same.

Then either mark it paid — for money you have already taken — or email the customer a payment link. They pay it themselves, and the draft becomes a real order with stock committed and fulfilment to do, exactly like any other.

This is also the honest answer to "do you do wholesale?" at this size. It is not a B2B price list, and it does not do net terms — see what UniShopping does not do — but it covers the invoice sale it is usually asked about.

Risk and payment review

Orders that a payment provider flags arrive in payment review rather than being accepted silently. They sit at the top of your dashboard until you decide, because an order you have not looked at is more urgent than one that is simply waiting to be picked.

Where to find it

Sell → Orders in the sidebar. Sell → Draft orders is beside it, for the phone and invoice sales you take payment for with an emailed link.