---
title: "Store"
method: POST
path: "/checkout/store"
tags: ["Checkout"]
---

# Store

`POST /checkout/store`

## Request

- Base URL: `https://sandbox.affirm.com/api/v2`
- URL: `https://sandbox.affirm.com/api/v2/checkout/store`
- Auth: HTTP basic

Initiate an Affirm checkout directly with your customers.

## Request body

- StoreRequest
  - `merchant` object, required: A list of items specific to the merchant.
    - `public_api_key` string, required: The merchant's public api key.
    - `user_cancel_url` string, required: On customer cancellation redirect them to this merchant URL.
    - `user_confirmation_url` string, required: On customer confirmation redirect them to this merchant URL.
    - `user_confirmation_url_action` string: Supported values -'GET' -'POST'
    - `name` string: If you have multiple sites operating under a single Affirm account, you can override the external company/brand name that the customer sees. This affects all references to your company name in the Affirm UI.
    - `use_vcn` boolean: A flag to enable virtual card integration (default is 'false').
  - `billing` object: The customer billing information.
    - `name` object, nullable
      - `first` string: The first name of the customer.
      - `full` string: The full name of the customer, which must contain at least two words.
      - `last` string: The last name of the customer.
    - `phone_number` string, nullable: The phone number of the customer. It must be a valid U.S. phone number represented as a 10-digit string without any delimiters.
    - `email` string, nullable: The email address of the customer.
    - `address` object
      - `city` string: The name of the city.
      - `country` string: The abbreviated name of the country.
      - `line1` string: A U.S. street address.
      - `line2` string: The apartment number, floor or suite that complements the street address.
      - `state` string: The 2-letter postal abbreviation or full name of the U.S. state.
      - `zipcode` string: The 5-digit postal code of the address.
  - `total` integer: The total amount in cents of the purchase.
  - `order_id` string: The merchant id for this order.
  - `tax_amount` integer: The shipping tax amount.
  - `shipping_amount` integer: The amount to ship the item.
  - `shipping` object: The shipping information. Required for scenarios where goods are shipped.
    - `name` object
      - `full` string: The customer's name.
      - `first` string: The customer's first name.
      - `last` string: The customer's last name.
    - `address` object
      - `city` string: The name of the city.
      - `country` string: The abbreviated name of the country.
      - `line1` string: A U.S. street address.
      - `line2` string: The apartment number, floor or suite that complements the street address.
      - `state` string: The 2-letter postal abbreviation or full name of the U.S. state.
      - `zipcode` string: The 5-digit postal code of the address.
    - `email` string, nullable: The email address of the customer.
    - `phone_number` string, nullable: The phone number of the customer. It must be a valid U.S. phone number represented as a 10-digit string without any delimiters.
  - `items` object: An array of items based on the cart contents.
  - `discounts` object: An array of discount codes based on the merchant.
  - `financing_program` string: The applicable Affirm financing program.
  - `checkout_expiration` string: A date-timestamp of when the `checkout_id` will expire.

## Response `200`

HTTP 200 OK

- Store
  - `redirect_url` string: URL the consumer should be directed to in order to complete their loan.
  - `checkout_id` string: Specific Checkout ID for the related request. This ID is embedded in the redirect_url.

## Other responses

- `400`: HTTP 400 Bad Request
- `401`: HTTP 401 Unauthorized
- `404`: HTTP 404 Not Found

---

[API](https://skmtc.dev/affirm/apis/checkout-api.md) - [All operations](https://skmtc.dev/affirm/apis/checkout-api/llms.txt) - [OpenAPI document](https://skmtc.dev/affirm/apis/checkout-api/revisions/6f74c90a66df?raw)
