---
title: "Confirm a completed Checkout setup session."
method: PUT
path: "/usage/v2/payment-methods/setup-intent/"
tags: ["usage"]
---

# Confirm a completed Checkout setup session.

`PUT /usage/v2/payment-methods/setup-intent/`

## Request

- Base URL: `http://localhost:8000`
- URL: `http://localhost:8000/usage/v2/payment-methods/setup-intent/`
- Auth: one of:
  - API key in header `X-Api-Key`
  - API key in header `X-Secret-Key`

Verifies the session, and if the customer has no default payment
method yet, sets the newly-attached card as the default. Parity
with UpgradeToPaygView.put so both card-collection flows produce
the same end state.

## Request body

- SetupIntentConfirmRequest
  - `session_id` string, required

## Response `200`

OK

- PaymentMethodConfirmResponse
  - `status` boolean, required
  - `result` PaymentMethodConfirmResult, required
    - `payment_method_id` string, required
    - `set_as_default` boolean, required

## Other responses

- `400`: Bad Request
- `401`: Unauthorized
- `402`: Payment Required
- `403`: Forbidden
- `404`: Not Found
- `500`: Internal Server Error
- `default`: Default error response

---

[API](https://skmtc.dev/futureagi/apis/future-agi-management-api.md) · [All operations](https://skmtc.dev/futureagi/apis/future-agi-management-api/llms.txt) · [OpenAPI document](https://skmtc.dev/futureagi/apis/future-agi-management-api/revisions/c8684118e142?raw)
