> ## Documentation Index
> Fetch the complete documentation index at: https://docs.carbn.xyz/llms.txt
> Use this file to discover all available pages before exploring further.

# Create Custody Wallet

> Create a Carbn custody wallet for a user on the specified chain



## OpenAPI

````yaml /api-reference/openapi.json post /payment/api/v1/custody-wallet
openapi: 3.0.0
info:
  title: Carbn Connect API
  version: 1.0.0
  description: >-
    API documentation for Carbn Connect services including user onboarding, KYC,
    wallet management, and transfers.
servers:
  - url: https://api.carbnconnect.com
    description: Production server
security:
  - ApiKeyAuth: []
paths:
  /payment/api/v1/custody-wallet:
    post:
      tags:
        - Custody Wallet
      summary: Create Custody Wallet
      description: Create a Carbn custody wallet for a user on the specified chain
      operationId: createCustodyWallet
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CustodyWalletCreateRequest'
      responses:
        '200':
          description: Custody wallet created successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CustodyWalletResponse'
        '400':
          description: Invalid request
        '401':
          description: Unauthorized - API key is missing or invalid
      security:
        - ApiKeyAuth: []
components:
  schemas:
    CustodyWalletCreateRequest:
      type: object
      required:
        - user_id
        - chain
      properties:
        user_id:
          type: string
          format: uuid
          example: 810b82b7-bd72-48c2-980f-0887fe20f08e
          description: The unique identifier of the user
        chain:
          type: string
          example: solana
          description: The blockchain network for the custody wallet
        customer_wallet_ref:
          type: string
          format: uuid
          example: ee030180-d114-4545-a4bb-133241edf1b1
          description: Customer-provided wallet reference identifier
    CustodyWalletResponse:
      type: object
      properties:
        id:
          type: string
          format: uuid
          example: c10dad79-4bd8-47f4-933e-4f197c5af680
          description: Unique identifier of the custody wallet
        crypto:
          type: string
          nullable: true
          description: Primary crypto (null when not set; used in create response)
        balances:
          type: array
          nullable: true
          items:
            $ref: '#/components/schemas/CustodyWalletBalanceItem'
          description: Token balances (null on create; populated on get)
        blockchain:
          type: string
          example: solana
          description: Blockchain network
        status:
          type: string
          example: ACTIVE
          description: Wallet status
        user_id:
          type: string
          format: uuid
          example: 810b82b7-bd72-48c2-980f-0887fe20f08e
          description: User who owns the custody wallet
        wallet_address:
          type: string
          example: GZFGBcapshUdpDjPLAjP7qnAu11w1JwzEuwEvBqWTfnT
          description: On-chain wallet address
        customer_wallet_ref:
          type: string
          format: uuid
          example: ee030180-d114-4545-a4bb-133241edf1b1
          description: Customer-provided wallet reference identifier
    CustodyWalletBalanceItem:
      type: object
      properties:
        balance:
          type: number
          example: 0
          description: Token balance
        crypto:
          type: string
          example: usdc
          description: Cryptocurrency symbol
        contract_address:
          type: string
          example: EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v
          description: Token contract address on the blockchain
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key
      description: API key for authentication. Must be included in the x-api-key header.

````