---
title: "Get a contactable checkout intent"
method: GET
path: "/v3/checkout-intents/{checkout_intent_id}"
tags: ["Checkout Intents"]
---

# Get a contactable checkout intent

`GET /v3/checkout-intents/{checkout_intent_id}`

## Request

- Base URL: `https://api.scalev.com`
- URL: `https://api.scalev.com/v3/checkout-intents/{checkout_intent_id}`
- Auth: one of:
  - HTTP bearer
  - API key in header `authorization`
  - OAuth 2
    - Authorization code: `https://api.scalev.com/v3/oauth/authorize`
    - Token URL: `https://api.scalev.com/v3/oauth/token` scopes: `checkout_intent:read`

Requires the `checkout_intent:read` scope. Returns a contactable intent belonging to the selected business, including captured fields, item snapshots, safe attribution and a recovery URL when available. recovery_url and recovery_url_expires_at are null for completed intents or a missing or untrusted source URL. Recovery URLs are customer capabilities; protect them as customer data.

## Response `200`

Contactable checkout intent.

- CheckoutIntentDetail
  - `id` string, uuid, required
  - `form_widget_id` string, required
  - `status` 'active' | 'abandoned' | 'completed', required
  - `contactable` boolean, required
  - `is_email_follow_up_already_sended` boolean, required
  - `customer` object, required
    - `name` string, nullable, required
    - `email` string, nullable, required
    - `phone` string, nullable, required
  - `store` object, nullable, required
    - `id` string, required
    - `unique_id` string, required
    - `name` string, required
  - `page` object, nullable, required: Null for store-scoped checkout intents.
    - `id` integer, required
    - `unique_id` string, required
    - `name` string, required
  - `cart_summary` object, required
    - `item_quantity` integer, required
    - `estimated_total` string, required
    - `currency` string, required
  - `handler` object, nullable, required
    - `id` integer
    - `email` string, nullable
    - `phone` string, nullable
    - `is_phone_verified` boolean
    - `fullname` string, nullable
    - `avatar` string, nullable
  - `source_url` string, nullable, required
  - `started_at` string, date-time, required
  - `last_activity_at` string, date-time, required
  - `follow_up_eligible_at` string, date-time, nullable, required
  - `completed_at` string, date-time, nullable, required
  - `order` object, nullable, required
    - `id` string, uuid, required
    - `order_id` string, required
    - `secret_slug` string, required
  - `fields` object, required
    - `shipping_address` string, nullable
    - `shipping_province` string, nullable
    - `shipping_city` string, nullable
    - `shipping_subdistrict` string, nullable
    - `shipping_postal_code` string, nullable
    - `payment_method` string, nullable
    - `sub_payment_method` string, nullable
    - `notes` string, nullable
    - `discount_code_code` string, nullable
    - `shipping_location_id` integer, nullable
    - `custom_fields` object[]
      - `key` string, required
      - `label` string, required
      - `value` union
        - string, nullable
        - number
        - boolean
  - `items` CheckoutIntentStoredItem[], required
    - `type` 'variant' | 'bundle_price_option', required
    - `variant_id` integer
    - `bundle_price_option_id` integer
    - `quantity` integer, required
    - `name` string, nullable, required
    - `unit_price` string, required
    - `line_total` string, required
    - `currency` string, required
  - `attribution` object, required
    - `ad_source` string, nullable
    - `utm_source` string, nullable
    - `utm_medium` string, nullable
    - `utm_campaign` string, nullable
    - `utm_content` string, nullable
    - `utm_term` string, nullable
    - `affiliate_code` string, nullable
  - `recovery_url` string, uri, nullable, required: Trusted checkout source URL with a cip_ prefill token. Null when completed or no trusted source is available.
  - `recovery_url_expires_at` string, date-time, nullable, required

## Other responses

- `400`: Malformed request.
- `401`: Missing or invalid business API key or OAuth access token.
- `403`: Checkout intent is not included in the active business subscription, or authorization failed.
- `404`: Checkout intent or source was not found in this scope.
- `429`: Too Many Requests. Storefront public requests using `X-Scalev-Storefront-Api-Key` or `X-Scalev-Guest-Token` are rate-limited as direct client/browser requests. Machine-authenticated business requests are rate-limited per API key or OAuth installation. Rate-limit responses may be plain text instead of the normal JSON error shape.

## Changes

- **2026-09-16** `40f39d0fda73`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/scalev/apis/nexus-commerce-api/changes/v3/checkout-intents/:checkout_intent_id/get.md)

---

[API](https://skmtc.dev/scalev/apis/nexus-commerce-api.md) - [All operations](https://skmtc.dev/scalev/apis/nexus-commerce-api/llms.txt) - [OpenAPI document](https://skmtc.dev/scalev/apis/nexus-commerce-api/revisions/6b9152f04622?raw)
