HelmHelm UniversityTrack 3 › Lesson 3.4

Lesson 3.4

What happens when somebody buys

Eight states, one of which nothing can ever reach, and a first order that will not appear in your list until it is paid.

2 min readTrack 3, Your First OrderFree, no account needed
Helm University track 3, Your First Order

Prefer to listen? This is the same lesson, word for word. The text below is the transcript.

This lesson prepares you to: Follow an order through every state it can occupy, and know which of them you can see.

The states an order can hold

An order moves through a small set of named states.

StateWhat it means
pendingCreated, waiting for the buyer to pay
awaiting_approvalA minor bought it and a parent has to decide
paidMoney taken. This is where your work starts
shippedYou marked it shipped
deliveredCarrier or a person confirmed it landed
cancelledNever paid, or denied by a parent
refundedMoney returned

There is an eighth state that nothing can reach

Helm's order table also allows a fulfilling state, meaning seller preparing. Nothing in the entire codebase ever writes it. It is read in a dozen places and set in none, so no order has ever been in it or ever will be until something writes it. If you are looking for a way to mark an order as being prepared, there is not one: an order goes from paid straight to shipped.

What you see, and when

Your seller order list deliberately hides orders that are pending, awaiting approval or cancelled. You see an order when it is paid, which is the first moment it is actually your problem.

That is the right default. An unpaid order is not a sale, and a list full of abandoned checkouts would bury the real ones.

Before the money, three gates

Between a buyer pressing buy and an order existing, three things are checked in this order.

  1. Are you ready to be paid? If your Stripe connection is not finished, the order is refused outright with This seller cannot accept orders right now. Track 1 lesson 1.3 covers this and it is the most expensive thing on this page to have left undone.
  2. Is the buyer allowed to spend this? If they are a kid or a teen, spend caps are checked before anything is created. Lesson 3.5 covers it.
  3. Is there stock? Taken atomically, so two buyers cannot take the same last one.

Free items skip almost everything

An order that totals zero settles immediately as paid, with no card, no Stripe and no hold. It is used for Helm's own store and for giveaways.

Worth knowing as a seller: a free item is a real order that lands in your list and needs fulfilling like any other.

The price is never the buyer's to decide

At checkout Helm looks up your product's price on the server, applies any live flash sale itself, and charges that. The page the buyer is on never supplies a price and Helm would not trust it if it did.