---
title: "Transfer Between Subaccounts"
method: POST
path: "/portfolio/subaccounts/transfer"
tags: ["portfolio"]
---

# Transfer Between Subaccounts

`POST /portfolio/subaccounts/transfer`

Transfers funds between the authenticated user's subaccounts. Use 0 for the primary account, or 1-63 for numbered subaccounts. Set exchange_index to apply the transfer on a specific exchange shard (defaults to 0).

## Request body

- ApplySubaccountTransferRequest
  - `client_transfer_id` string, uuid, required — Unique client-provided transfer ID for idempotency.
  - `from_subaccount` integer, required — Source subaccount number (0 for primary, 1-63 for numbered subaccounts).
  - `to_subaccount` integer, required — Destination subaccount number (0 for primary, 1-63 for numbered subaccounts).
  - `amount_cents` integer, required — Amount to transfer in cents.
  - `exchange_index` integer — Identifier for an exchange shard.

## Response `200`

Transfer completed successfully

- ApplySubaccountTransferResponse — Empty response indicating successful transfer.

## Other responses

- `400` — Bad request - invalid input
- `401` — Unauthorized - authentication required
- `500` — Internal server error

---

[API](https://skmtc.net/kalshi/apis/kalshi-trade-api-manual-endpoints.md) · [All operations](https://skmtc.net/kalshi/apis/kalshi-trade-api-manual-endpoints/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/kalshi/kalshi-trade-api-manual-endpoints/revisions/872588d0a576/schema)
