---
title: "Create card session"
method: POST
path: "/v2/session/card"
tags: ["Virtual"]
---

# Create card session

`POST /v2/session/card`

Creates a Sezzle virtual card session. A card session represents the issuance of a Sezzle virtual card to a Sezzle user and/or the agreement of a Sezzle user to use the virtual card as payment. Use the card session endpoints to create and update a card session.

## Request body

- CardSessionRequest
  - `amount_in_cents` integer, required — The amount in cents
  - `currency` string, required — The 3 character currency code as defined by ISO 4217
  - `origin` string, required — The window origin of the host
  - `mode` 'iframe' | 'popup' | 'redirect', required — The mode for the order checkout. Defaults to redirect if not provided. If iframe or popup is provided, then the cancel and complete URLs must include the origin of the parent window.
  - `merchant_reference_id` string, required — The checkout or cart ID from the merchant, currently used for tracking only (must contain only alphanumeric characters, dashes (-), and underscores (_))
  - `card_response_format` string — Value of token required to use tokenization
  - `items` LineItem[]
    - `name` string — The name of the item
    - `sku` string — The sku identifier
    - `quantity` integer — The quantity purchased
    - `price` Price
      - `amount_in_cents` integer, required — The amount in cents
      - `currency` string, required — The 3 character currency code as defined by ISO 4217
    - `category_path` string — The category path where the product is located. Use `>` only as the category delimiter, not as part of a product or category name. Example: Camping Gear & Supplies > Tents & Shelters.
    - `brand` string — The products brand name as customers would recognize. Examples: Nike, Kelty, Brooks, Carhartt, Columbia
    - `image_url` string — The fully qualified URL that shows the image
    - `product_url` string — The fully qualified URL that links directly to the product being purchased
    - `global_trade_item_number` string — The products Global Trade Item Number (GTIN). Common types include UPC, ISBN, EAN. Exclude dashes and spaces.
    - `manufacturer_part_number` string — The products Manufacturer Part Number (MPN) which together with brand can uniquely identify a product.
  - `customer` Customer
    - `first_name` string — The customer's first name
    - `last_name` string — The customer's last name
    - `email` string — The customer's email address
    - `phone` string — The customer's phone number
    - `billing_address` AddressV2
      - `name` string — The name on the address
      - `street` string — The street and number of the address
      - `street2` string — The apt or unit
      - `city` string — The city
      - `state` string — The 2 character state code
      - `postal_code` string — The postal delivery code
      - `country_code` string — The 2 character country code
      - `phone` string — The phone number at the delivery location

## Response `201`

Successful Operation

- object
  - `uuid` string — The unique identifier for this session
  - `dashboard_url` string — The dashboard_url is a URL which the customer should be redirected to. Upon accepting the agreements there will be a postMessage returned for the payload of the card data.

## Other responses

- `400` — Invalid request
- `401` — Unauthorized. Returned for any failed bearer or basic auth, including expired bearer tokens.
- `404` — The specified resource was not found
- `422` — Unable to process the request entity

---

[API](https://skmtc.dev/sezzle/apis/sezzle-api-v2.md) · [All operations](https://skmtc.dev/sezzle/apis/sezzle-api-v2/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/sezzle/sezzle-api-v2/revisions/878c32abbb37/schema)
