---
updatedAt: 2025-11-13T14:20:09.000Z
agentTools:
  siteIndex: https://docs.affirm.com/llms.txt
  projectIndex: https://docs.affirm.com/payments/llms.txt
---

# Create a checkout object

## Checkout properties

<Table align={["left","left","left"]}>
  <thead>
    <tr>
      <th style={{ textAlign: "left" }}>
        Attributes
      </th>
      <th style={{ textAlign: "left" }}>
        Data type
      </th>
      <th style={{ textAlign: "left" }}>
        Description
      </th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style={{ textAlign: "left" }}>
        **merchant**
        <span style={{ color: "red" }}>required</span>
      </td>
      <td style={{ textAlign: "left" }}>
        *object*
      </td>
      <td style={{ textAlign: "left" }}>
        Merchant specific information. See [details](https://docs.affirm.com/developers/reference/the-merchant-object).
      </td>
    </tr>
    <tr>
      <td style={{ textAlign: "left" }}>
        **shipping** 
        <span style={{ color: "red" }}>required</span>
      </td>
      <td style={{ textAlign: "left" }}>
        *object*
      </td>
      <td style={{ textAlign: "left" }}>
        The [shipping details](https://docs.affirm.com/affirm-developers/reference/shipping-billing-object)
      </td>
    </tr>
    <tr>
      <td style={{ textAlign: "left" }}>
        **billing**
      </td>
      <td style={{ textAlign: "left" }}>
        *object*
      </td>
      <td style={{ textAlign: "left" }}>
        The [billing details](https://docs.affirm.com/affirm-developers/reference/shipping-billing-object)
      </td>
    </tr>
    <tr>
      <td style={{ textAlign: "left" }}>
        **items**
        <span style={{ color: "red" }}>required</span>
      </td>
      <td style={{ textAlign: "left" }}>
        *Array*
      </td>
      <td style={{ textAlign: "left" }}>
        An array of [item](https://docs.affirm.com/payments/reference/the-item-object).
      </td>
    </tr>
    <tr>
      <td style={{ textAlign: "left" }}>
        **discounts**
      </td>
      <td style={{ textAlign: "left" }}>
        *object*
      </td>
      <td style={{ textAlign: "left" }}>
        A list of [discount](https://docs.affirm.com/developers/reference/the-discount-object). Each discount must have their discount code.
      </td>
    </tr>
    <tr>
      <td style={{ textAlign: "left" }}>
        **metadata**
      </td>
      <td style={{ textAlign: "left" }}>
        *object*
      </td>
      <td style={{ textAlign: "left" }}>
        See [details](https://docs.affirm.com/developers/reference/the-discount-object).
      </td>
    </tr>
    <tr>
      <td style={{ textAlign: "left" }}>
        **order\_id**
      </td>
      <td style={{ textAlign: "left" }}>
        *string*
      </td>
      <td style={{ textAlign: "left" }}>
        The merchant order id. This is stored for your own future reference.
      </td>
    </tr>
    <tr>
      <td style={{ textAlign: "left" }}>
        **financing\_program**
      </td>
      <td style={{ textAlign: "left" }}>
        *string*
      </td>
      <td style={{ textAlign: "left" }}>
        A financing program applied on this checkout.
      </td>
    </tr>
    <tr>
      <td style={{ textAlign: "left" }}>
        **shipping\_amount**
      </td>
      <td style={{ textAlign: "left" }}>
        *integer*
      </td>
      <td style={{ textAlign: "left" }}>
        The total shipping amount in cents.
      </td>
    </tr>
    <tr>
      <td style={{ textAlign: "left" }}>
        **tax\_amount**
      </td>
      <td style={{ textAlign: "left" }}>
        *integer*
      </td>
      <td style={{ textAlign: "left" }}>
        The total tax amount in cents.
      </td>
    </tr>
    <tr>
      <td style={{ textAlign: "left" }}>
        **total**
        <span style={{ color: "red" }}>required</span>
      </td>
      <td style={{ textAlign: "left" }}>
        *integer*
      </td>
      <td style={{ textAlign: "left" }}>
        The total amount of the checkout in cents.
      </td>
    </tr>
    <tr>
      <td style={{ textAlign: "left" }}>
        **checkout\_expiration**
      </td>
      <td style={{ textAlign: "left" }}>
        *timestamp*
      </td>
      <td style={{ textAlign: "left" }}>
        A date-timestamp of when the `checkout_id` will expire.  

        * ISO timestamp format
        * No milliseconds
      </td>
    </tr>
  </tbody>
</Table>