---
title: "Create a wallet"
method: POST
path: "/v2/wallets"
tags: ["wallet"]
---

# Create a wallet

`POST /v2/wallets`

This endpoint creates a wallet within a specified namespace and associates it with a team using the team ID. The request body defines the wallet's attributes, including its name, currency, spending limits, and archival status.

## Request body

- V2CreateWalletRequest
  - `wallet` V2Wallet, required
    - `id` string — The wallet identifier.
    - `namespaceId` string, required — The namespace identifier that associates the wallet with a team.
    - `teamId` string, required — The unique team identifier assigned for the wallet.
    - `name` string, required — The wallet name.
    - `externalId` string — The optional external ID field for storing custom identifiers such as Placement IO numbers, purchase order numbers, or Salesforce numbers for tracking purposes. Partners can use this field to associate external identifiers with the wallet. Must be shorter than 255 characters.
    - `currencyCode` string, required — The wallet currency code using the 3-letter ISO 4217 standard.
    - `dailyBudget` string — The daily spending limit for the wallet.

## Response `200`

Details of the created wallet.

- V2CreateWalletResponse
  - `wallet` V2WalletRes
    - `id` string — The wallet identifier.
    - `namespaceId` string — The namespace identifier that associates the wallet with a team.
    - `teamId` string — The unique team identifier assigned for the wallet.
    - `name` string — The wallet name.
    - `externalId` string — The optional external ID field for storing custom identifiers such as Placement IO numbers, purchase order numbers, or Salesforce numbers for tracking purposes. Partners can use this field to associate external identifiers with the wallet. Must be shorter than 255 characters.
    - `currencyCode` string — The wallet currency code using the 3-letter ISO 4217 standard.
    - `creditLimit` string — The maximum credit limit for the wallet.
    - `dailyBudget` string — The daily spending limit for the wallet.
    - `archived` boolean — Whether the wallet is archived.

## Other responses

- `400` — There was a problem with input.
- `401` — Login failed or token not valid.
- `403` — Access denied due to insufficient permissions.
- `default` — An unexpected error response.

---

[API](https://skmtc.net/citrusad/apis/citrus-auth-api.md) · [All operations](https://skmtc.net/citrusad/apis/citrus-auth-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/citrusad/citrus-auth-api/versions/a040003c7378/schema)
