> ## Documentation Index
> Fetch the complete documentation index at: https://docs.ollie.shop/llms.txt
> Use this file to discover all available pages before exploring further.

# Checkout Order Types

Type definitions for the order data returned by [useCheckoutOrder](/ollie-shop/api/use-checkout-order).

***

## CheckoutOrder

The main order object returned after checkout completion.

| Property            | Type                  | Description                     |
| ------------------- | --------------------- | ------------------------------- |
| `id`                | `string`              | Unique identifier for the order |
| `sessionId`         | `string \| undefined` | Associated checkout session ID  |
| `fulfillmentOrders` | `FulfillmentOrder[]`  | Array of fulfillment orders     |

***

## FulfillmentOrder

Represents a single fulfillment order containing items, customer data, shipping, payment, and totals.

| Property     | Type                                   | Description                                 |
| ------------ | -------------------------------------- | ------------------------------------------- |
| `id`         | `string`                               | Unique identifier for the fulfillment order |
| `status`     | `OrderStatus`                          | Current status of the order                 |
| `orderItems` | `OrderItem[]`                          | Items included in this fulfillment          |
| `customer`   | `OrderCustomer`                        | Customer information                        |
| `shipping`   | `OrderShipping`                        | Shipping addresses and packages             |
| `payment`    | `OrderPayment`                         | Payment details                             |
| `campaign`   | `Campaign`                             | Applied coupons and promotions              |
| `taxes`      | `TaxLine[]`                            | Tax breakdown                               |
| `totals`     | `Totals`                               | Order totals                                |
| `locale`     | `LocaleInfo`                           | Currency and language information           |
| `createdAt`  | `string`                               | Timestamp when the order was created        |
| `extensions` | `Record<string, unknown> \| undefined` | Custom platform-specific fields             |

***

## OrderItem

A single item in the order.

| Property         | Type                                  | Description                              |
| ---------------- | ------------------------------------- | ---------------------------------------- |
| `id`             | `string`                              | Unique identifier (e.g., SKU code)       |
| `sellerId`       | `string \| undefined`                 | Marketplace seller ID                    |
| `name`           | `string`                              | Display name                             |
| `variant`        | `string \| undefined`                 | Variant name (e.g., "Size Large", "Red") |
| `brand`          | `string \| undefined`                 | Brand name                               |
| `category`       | `string \| undefined`                 | Product category                         |
| `price`          | `number`                              | Current price in minor units (cents)     |
| `originalPrice`  | `number`                              | Original price in minor units            |
| `quantity`       | `number`                              | Quantity ordered                         |
| `index`          | `number`                              | Item index                               |
| `image`          | `string`                              | Image URL                                |
| `uniqueId`       | `string`                              | Unique item ID                           |
| `url`            | `string \| undefined`                 | Product details URL                      |
| `variantDetails` | `Record<string, string> \| undefined` | Variant details (color, size, etc.)      |

***

## OrderCustomer

Customer information associated with the order.

| Property    | Type                  | Description                    |
| ----------- | --------------------- | ------------------------------ |
| `id`        | `string \| undefined` | Customer ID                    |
| `email`     | `string`              | Customer email (required)      |
| `firstName` | `string`              | First name (required)          |
| `lastName`  | `string`              | Last name (required)           |
| `phone`     | `string`              | Phone number (required)        |
| `document`  | `string \| undefined` | Tax ID or document (e.g., CPF) |

***

## OrderShipping

Shipping information for the order.

| Property    | Type                | Description                |
| ----------- | ------------------- | -------------------------- |
| `addresses` | `ShippingAddress[]` | List of shipping addresses |
| `packages`  | `ShippingPackage[]` | Shipping packages          |

### ShippingAddress

| Property          | Type                       | Description                       |
| ----------------- | -------------------------- | --------------------------------- |
| `id`              | `string \| undefined`      | Address ID                        |
| `type`            | `AddressType \| undefined` | Type of address                   |
| `street`          | `string \| undefined`      | Street address                    |
| `number`          | `string \| undefined`      | Street number                     |
| `complement`      | `string \| undefined`      | Additional address info           |
| `reference`       | `string \| undefined`      | Reference landmark                |
| `neighborhood`    | `string \| undefined`      | Neighborhood or district          |
| `city`            | `string \| undefined`      | City                              |
| `country`         | `string`                   | Country code (e.g., "USA", "BRA") |
| `stateOrProvince` | `string \| undefined`      | State or province                 |
| `postalCode`      | `string`                   | Postal/zip code                   |
| `receiverName`    | `string \| undefined`      | Recipient name                    |

### ShippingPackage

| Property                | Type                                 | Description                       |
| ----------------------- | ------------------------------------ | --------------------------------- |
| `id`                    | `string`                             | Package ID                        |
| `items`                 | `number[]`                           | Cart item indexes in this package |
| `carrier`               | `string`                             | Carrier name (e.g., "FedEx")      |
| `method`                | `string`                             | Shipping method (e.g., "Express") |
| `vendor`                | `string \| undefined`                | Package vendor                    |
| `estimatedDeliveryTime` | `EstimatedDeliveryTime \| undefined` | Delivery estimate                 |
| `price`                 | `number`                             | Shipping price in minor units     |
| `addressId`             | `string`                             | Associated address ID             |
| `type`                  | `"delivery" \| "pick_up"`            | Delivery or pickup                |
| `storeName`             | `string \| undefined`                | Store name for pickups            |

### EstimatedDeliveryTime

| Property | Type                          | Description                     |
| -------- | ----------------------------- | ------------------------------- |
| `value`  | `number`                      | Numerical value                 |
| `unit`   | `Intl.RelativeTimeFormatUnit` | Time unit (e.g., "day", "hour") |

***

## OrderPayment

Payment information for the order.

| Property   | Type                     | Description           |
| ---------- | ------------------------ | --------------------- |
| `payments` | `SelectedPaymentOrder[]` | List of payments used |

### SelectedPaymentOrder

| Property           | Type                  | Description                       |
| ------------------ | --------------------- | --------------------------------- |
| `id`               | `string`              | Payment ID                        |
| `methodId`         | `string`              | Payment method ID                 |
| `name`             | `string`              | Payment method display name       |
| `type`             | `string`              | Payment type (e.g., "creditCard") |
| `referenceValue`   | `number`              | Base amount for this payment      |
| `total`            | `number`              | Total amount paid                 |
| `installments`     | `number \| undefined` | Number of installments            |
| `savedCardId`      | `string \| null`      | Saved card ID if applicable       |
| `lastDigits`       | `string \| null`      | Last digits of card               |
| `paymentSessionId` | `string \| undefined` | Payment session ID                |

***

## Campaign

Marketing campaign data with coupons and promotions.

| Property     | Type          | Description          |
| ------------ | ------------- | -------------------- |
| `coupons`    | `string[]`    | Applied coupon codes |
| `promotions` | `Promotion[]` | Applied promotions   |

### Promotion

| Property        | Type                  | Description                    |
| --------------- | --------------------- | ------------------------------ |
| `id`            | `string`              | Promotion ID                   |
| `name`          | `string \| undefined` | Display name                   |
| `discountValue` | `number \| undefined` | Discount amount in minor units |

***

## TaxLine

A single tax applied to the order.

| Property | Type     | Description                         |
| -------- | -------- | ----------------------------------- |
| `name`   | `string` | Tax name (e.g., "VAT", "State Tax") |
| `value`  | `number` | Tax amount in minor units           |

***

## Totals

Order totals breakdown. All values in minor units (cents).

| Property    | Type                  | Description                |
| ----------- | --------------------- | -------------------------- |
| `items`     | `number`              | Total cost of items        |
| `shipping`  | `number`              | Total shipping cost        |
| `tax`       | `number \| undefined` | Total tax                  |
| `discounts` | `number \| undefined` | Total discounts            |
| `giftCard`  | `number \| undefined` | Gift card amount applied   |
| `interest`  | `number \| undefined` | Interest from installments |
| `change`    | `number \| undefined` | Change amount              |
| `total`     | `number`              | Grand total                |

***

## LocaleInfo

Locale and currency information.

| Property   | Type     | Description                          |
| ---------- | -------- | ------------------------------------ |
| `currency` | `string` | ISO 4217 currency code (e.g., "USD") |
| `language` | `string` | Language code (e.g., "en", "pt-BR")  |
| `country`  | `string` | Country code in ISO 3166-1 alpha-3   |

***

## OrderStatus

Possible order status values:

| Value        | Description                        |
| ------------ | ---------------------------------- |
| `"waiting"`  | Order is waiting to be processed   |
| `"approved"` | Order has been approved            |
| `"pending"`  | Order is pending confirmation      |
| `"canceled"` | Order has been canceled            |
| `"ready"`    | Order is ready for pickup/delivery |
| `"other"`    | Other status                       |

***

## AddressType

Possible address type values:

| Value       | Description     |
| ----------- | --------------- |
| `"home"`    | Home address    |
| `"billing"` | Billing address |
| `"work"`    | Work address    |
| `"pick_up"` | Pickup location |
| `"search"`  | Search address  |
| `"other"`   | Other type      |
