---
title: "Create Deposit"
method: POST
path: "/deposits"
tags: ["Deposits"]
---

# Create Deposit

`POST /deposits`

Retrieve the deposit methods for an account, including crypto and bank transfer.

## Headers

- `Idempotency-Key` string

## Request body

- object
  - `amount` number — Amount to prefill on hosted deposit page.
  - `destination` union, required — Destination account ID or wallet address. Object form is supported for compatibility. Any business resolves by its account ID without authentication; a user account resolves only for that same authenticated user.
    - string
    - object
      - `account_id` string — Destination account ID.
      - `address` string — Destination wallet address.
      - `network` 'ethereum' | 'polygon' | 'base' | 'solana' — Destination wallet network.
  - `metadata` object — Metadata to include with the deposit response.
  - `network` 'ethereum' | 'polygon' | 'base' | 'solana' | 'null', nullable — Destination network override. Defaults to the destination wallet's own network.

## Response `201`

deposit created

- object
  - `account_id` string, nullable, required — Account ID of the destination owner. Null for raw wallet address destinations.
  - `amount` string — Requested deposit amount.
  - `hosted_url` string, nullable, required — URL of the hosted deposit page. Only present for business destinations.
  - `metadata` object, required — Metadata from the request.
  - `methods` object, required — Available deposit methods for destination.
    - `bank` object, nullable, required — Bank deposit details. Only present when bank deposits are active for the destination account.
      - `currencies` object[], required — Bank transfer currencies available for this deposit.
        - `account_number` string, nullable, required — Bank account number for deposits in this currency.
        - `currency` string, required — Currency supported by these bank instructions.
        - `deposit_bank_address` string, nullable, required — Receiving bank address.
        - `deposit_bank_name` string, nullable, required — Receiving bank name.
        - `deposit_beneficiary_name` string, nullable, required — Beneficiary name to use for transfer.
        - `deposit_reference` string, nullable, required — Reference to include with bank transfer.
        - `rails` string[], required — Active deposit rails for this currency.
        - `routing_number` string, nullable, required — Bank routing number for deposits in this currency.
        - `swift_bic` string, nullable, required — SWIFT/BIC code for international wires, when available.
    - `crypto` object[], required — Crypto networks available for this deposit, each with its on-chain deposit address and the tokens accepted on that network.
      - `deposit_address` string, nullable, required — Address to send funds to on this network. Null when the provider has not issued one yet.
      - `icon_url` string, nullable, required — Network icon URL.
      - `name` 'Ethereum' | 'Solana' | 'Base' | 'BNB Smart Chain' | 'Hyperliquid' | 'Hypercore' | 'MegaETH' | 'Polygon' | 'Plasma' | 'Arbitrum', required — Network display name.
      - `supported_currencies` object[], required — Tokens accepted for deposit on this network.
        - `icon_url` string, nullable, required — Token icon URL. Null when no icon is available.
        - `name` 'ARB' | 'BNB' | 'ETH' | 'EURC' | 'HYPE' | 'PYUSD' | 'SOL' | 'USD1' | 'USDC' | 'USDC.e' | 'USDG' | 'USDT' | 'USDT0' | 'USDe' | 'USDm' | 'XO' | 'XPL' | 'pUSD' | 'wETH', required — Token symbol.
  - `object` 'deposit', required

## Other responses

- `400` — Invalid Parameters

---

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