Skip to content

Order lifecycle

The statuses a Kustom order moves through from checkout to settlement — incomplete, complete, authorized, captured, cancelled, expired, closed — where a refund fits, and who moves it at each step.

Paid is not finished. When a customer completes checkout Kustom authorizes the amount — it reserves the money without moving it — and nothing reaches your account until you capture. Every Kustom product touches one stretch of this line, and knowing which stretch is what makes the tabs of these docs fit together.

The first two statuses belong to the Checkout API and describe the checkout session. The rest belong to the Order Management API and describe the money. The order id is the same object in both, and the handover happens the moment the payment authorizes.

  1. checkout_incompleteYouCheckout API

    POST the cart and render the snippet. The customer is in the checkout, and you can still change the order by POSTing any subset of its fields.

    Create an order →
  2. checkout_completeThe customer

    Presses Pay order. Kustom redirects their browser to your confirmation URL and, separately, calls your push URL server-to-server. The order is read-only from here.

    Confirmation & push →
  3. AUTHORIZEDKustomOrder Management API

    The payment method authorizes: the money is reserved, not moved, and none of it has reached you. Acknowledge the order once your own record of it exists.

    • CANCELLEDYou

      Cancel what you cannot fulfill. The reservation is released and nothing is charged.

    • EXPIREDTime

      An authorization lapses after about 28 days with no capture.Extend it →

  4. PART_CAPTURED → CAPTUREDYou

    Capture as you ship, in one call or several. This is where the money moves.

    Refunding does not change the status: it stays CAPTURED and the refunded amount grows.

    Capture an order →
  5. CLOSEDKustom

    Nothing is left to capture or refund, and Kustom closes the order.

Of the two ways you hear that an order reached checkout_complete, only one is reliable. The browser redirect to your confirmation page is a convenience, and a customer who pays and closes the tab never triggers it. The server-to-server push always fires. Create your own order record on the push, and treat the redirect as decoration.

This page is also available as Markdown — append .md to its URL — and is indexed in llms.txt.