---
title: "Set up a payment method"
method: POST
path: "/ais/{aiId}/billing/payment-method-setup"
tags: ["Billing"]
---

# Set up a payment method

`POST /ais/{aiId}/billing/payment-method-setup`

## Request

- Base URL: `https://api.darwin.so/api/v1`
- URL: `https://api.darwin.so/api/v1/ais/{aiId}/billing/payment-method-setup`
- Auth: one of:
  - API key in header `x-api-key`
  - HTTP bearer

Creates a SetupIntent for an explicitly consented saved payment method. A saved method is required before automatic wallet top-ups can be enabled.

## Path parameters

- `aiId` string, required

## Headers

- `Idempotency-Key` string, required

## Response `201`

Client details for confirming the SetupIntent.

- PaymentIntentClientDetails
  - `clientSecret` string, nullable, required
  - `publishableKey` string, required

## Other responses

- `400`: The request was invalid.
- `401`: The API key or access token is missing, invalid, expired, or revoked.
- `403`: The principal does not have the required scope or resource access.
- `404`: The resource was not found for this principal.

---

[API](https://skmtc.dev/darwin/apis/darwin-api.md) · [All operations](https://skmtc.dev/darwin/apis/darwin-api/llms.txt) · [OpenAPI document](https://skmtc.dev/darwin/apis/darwin-api/revisions/56166fce7bfb?raw)
