Skip to main content
Schema2020-08-27object

order

Order objects are created to handle end customers' purchases of previously defined [products](https://stripe.com/docs/api#products). You can create, retrieve, and pay individual orders, as well as list all orders. Orders are identified by a unique, random ID. Related guide: [Tax, Shipping, and Inventory](https://stripe.com/docs/orders).

Source
openapi/spec3.json
Commit
d70de345383d
Active snapshot
da69df7e6e11

Order

object

Order objects are created to handle end customers' purchases of previously defined [products](https://stripe.com/docs/api#products). You can create, retrieve, and pay individual orders, as well as list all orders. Orders are identified by a unique, random ID. Related guide: [Tax, Shipping, and Inventory](https://stripe.com/docs/orders).

amount integer
required

A positive integer in the smallest currency unit (that is, 100 cents for $1.00, or 1 for ¥1, Japanese Yen being a zero-decimal currency) representing the total amount for the order.

amount_returned integer
optionalnullable

The total amount that was returned to the customer.

application string
optionalnullable

ID of the Connect Application that created the order.

application_fee integer
optionalnullable

A fee in cents that will be applied to the order and transferred to the application owner’s Stripe account. The request must be made with an OAuth key or the Stripe-Account header in order to take an application fee. For more information, see the application fees documentation.

charge
optionalnullable

The ID of the payment used to pay for the order. Present if the order status is `paid`, `fulfilled`, or `refunded`.

created integer (unix-time)
required

Time at which the object was created. Measured in seconds since the Unix epoch.

currency string
required

Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://stripe.com/docs/currencies).

customer
optionalnullable

The customer used for the order.

email string
optionalnullable

The email address of the customer placing the order.

external_coupon_code string
optional

External coupon code to load for this order.

id string
required

Unique identifier for the object.

items array
required

List of items constituting the order. An order can have up to 25 items.

livemode boolean
required

Has the value `true` if the object exists in live mode or the value `false` if the object exists in test mode.

metadata object
optionalnullable

Set of [key-value pairs](https://stripe.com/docs/api/metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format.

object string
required

String representing the object's type. Objects of the same type share the same value.

selected_shipping_method string
optionalnullable

The shipping method that is currently selected for this order, if any. If present, it is equal to one of the `id`s of shipping methods in the `shipping_methods` array. At order creation time, if there are multiple shipping methods, Stripe will automatically selected the first method.

shipping
optionalnullable

The shipping address for the order. Present if the order is for goods to be shipped.

shipping_methods array
optionalnullable

A list of supported shipping methods for this order. The desired shipping method can be specified either by updating the order, or when paying it.

status string
required

Current order status. One of `created`, `paid`, `canceled`, `fulfilled`, or `returned`. More details in the [Orders Guide](https://stripe.com/docs/orders/guide#understanding-order-statuses).

status_transitions
optionalnullable

The timestamps at which the order status was updated.

updated integer (unix-time)
optionalnullable

Time at which the object was last updated. Measured in seconds since the Unix epoch.

upstream_id string
optional

The user's order ID if it is different from the Stripe order ID.