Affirm · JSON Structure

Checkout Checkout Request Structure

Request body for creating or updating an Affirm checkout session, containing all order and customer information required to initiate the Affirm financing flow.

Type: object Properties: 15 Required: 4
FintechBNPLLendingPaymentsConsumer

CheckoutRequest is a JSON Structure definition published by Affirm, describing 15 properties, of which 4 are required. It conforms to the https://json-structure.org/meta/core/v0/# meta-schema.

Properties

merchant shipping billing store items discounts metadata order_id currency financing_program shipping_amount tax_amount total checkout_expiration expiration_time

Meta-schema: https://json-structure.org/meta/core/v0/#

JSON Structure

Raw ↑
{
  "$schema": "https://json-structure.org/meta/core/v0/#",
  "$id": "https://raw.githubusercontent.com/api-evangelist/affirm/refs/heads/main/json-structure/checkout-checkout-request-structure.json",
  "name": "CheckoutRequest",
  "description": "Request body for creating or updating an Affirm checkout session, containing all order and customer information required to initiate the Affirm financing flow.",
  "type": "object",
  "properties": {
    "merchant": {
      "$ref": "#/components/schemas/MerchantObject"
    },
    "shipping": {
      "$ref": "#/components/schemas/ContactObject"
    },
    "billing": {
      "$ref": "#/components/schemas/ContactObject"
    },
    "store": {
      "$ref": "#/components/schemas/StoreObject"
    },
    "items": {
      "type": "array",
      "description": "Array of item objects representing the products being purchased in this checkout.",
      "items": {
        "$ref": "#/components/schemas/ItemObject"
      },
      "example": [
        "example_value"
      ]
    },
    "discounts": {
      "type": "object",
      "description": "A map of discount codes to discount objects. Each key is the discount code and each value contains the discount amount and name.",
      "additionalProperties": {
        "$ref": "#/components/schemas/DiscountObject"
      },
      "example": {}
    },
    "metadata": {
      "type": "object",
      "description": "Arbitrary key-value metadata for merchant tracking. Values must be strings.",
      "additionalProperties": {
        "type": "string"
      },
      "example": {}
    },
    "order_id": {
      "type": "string",
      "description": "The merchant's internal order identifier. Stored for future reference and reconciliation.",
      "example": "500123"
    },
    "currency": {
      "type": "string",
      "description": "Three-letter ISO 4217 currency code in uppercase. Supported values are USD, CAD, and GBP.",
      "enum": [
        "USD",
        "CAD",
        "GBP"
      ],
      "example": "USD"
    },
    "financing_program": {
      "type": "string",
      "description": "Financing program code to apply to this checkout, if applicable. Determines the available loan terms presented to the customer.",
      "example": "example_value"
    },
    "shipping_amount": {
      "type": "int32",
      "description": "The total shipping amount in cents.",
      "minimum": 0,
      "example": 1
    },
    "tax_amount": {
      "type": "int32",
      "description": "The total tax amount in cents.",
      "minimum": 0,
      "example": 1
    },
    "total": {
      "type": "int32",
      "description": "The total amount of the checkout in cents (USD, CAD) or pence (GBP).",
      "minimum": 0,
      "example": 1
    },
    "checkout_expiration": {
      "type": "datetime",
      "description": "ISO 8601 timestamp specifying when the checkout session expires.",
      "example": "2025-03-15T14:30:00Z"
    },
    "expiration_time": {
      "type": "datetime",
      "description": "Time-to-live deadline by which the customer must confirm the checkout.",
      "example": "2025-03-15T14:30:00Z"
    }
  },
  "required": [
    "merchant",
    "items",
    "currency",
    "total"
  ]
}

Work with this as data

Every JSON Structure here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for json structure

4 MCP tools reach this
  • find_json_structuresBrowse and filter every JSON Structure in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This JSON Structure
curl "https://apis.io/api/v1/json-structures/checkout-checkout-request-structure"
All json structure
curl "https://apis.io/api/v1/json-structures?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.