---
title: "Create a fiat deposit account"
method: POST
path: "/v1/wallets/{wallet_id}/deposit_accounts/fiat"
tags: ["Fiat"]
---

# Create a fiat deposit account

`POST /v1/wallets/{wallet_id}/deposit_accounts/fiat`

## Request

- Base URL: `https://api.privy.io`
- URL: `https://api.privy.io/v1/wallets/{wallet_id}/deposit_accounts/fiat`
- Auth: HTTP basic

Creates a Bridge Virtual Account linked to a wallet. Fiat sent to the returned deposit instructions will be converted to the specified crypto asset and delivered to the wallet.

## Path parameters

- `wallet_id` string, required: The ID of the wallet.

## Headers

- `privy-app-id` string, required: ID of your Privy app.

## Request body

- CreateFiatDepositAccountRequestBody: Request body for creating a Bridge fiat deposit account linked to a wallet.
  - `provider` 'bridge', required: Discriminator: the fiat deposit account is orchestrated via Bridge.
  - `environment` 'sandbox' | 'production': The Privy API environment.
  - `source` CreateFiatDepositAccountSource, required: The source fiat currency for a fiat deposit account.
    - `currency` string, required
  - `destination` FiatDepositAccountDestination, required: The destination crypto asset and chain for a fiat deposit account.
    - `asset` string, required: Destination crypto asset (e.g. "usdc").
    - `chain` string, required: Destination chain (e.g. "base", "tempo").
  - `developer_fee_percent` string: A fee your app keeps on each deposit, as a percentage of the deposit amount. Omit for no fee.
  - `travel_rule` object: Who sends deposits into this account, for EU travel rule compliance. Omit to use the customer.
    - `source` union, required
      - object: The bank account holder sending the deposits: the travel rule originator.
        - `type` 'self', required
      - object: The bank account holder sending the deposits: the travel rule originator.
        - `type` 'individual', required
        - `name` string, required: Full legal name of the person.
        - `address` VerificationAddress: A postal address used in KYC and KYB data submission.
          - `street_line_1` string, required: Street address line 1.
          - `street_line_2` string: Street address line 2.
          - `city` string, required: City.
          - `subdivision` string: ISO 3166-2 state or province code. Required for US addresses.
          - `postal_code` string: Postal code. Required for countries that use them.
          - `country` string, required: ISO 3166-1 alpha-3 country code.
      - object: The bank account holder sending the deposits: the travel rule originator.
        - `type` 'business', required
        - `name` string, required: Legal name of the business.
        - `address` VerificationAddress: A postal address used in KYC and KYB data submission.
          - `street_line_1` string, required: Street address line 1.
          - `street_line_2` string: Street address line 2.
          - `city` string, required: City.
          - `subdivision` string: ISO 3166-2 state or province code. Required for US addresses.
          - `postal_code` string: Postal code. Required for countries that use them.
          - `country` string, required: ISO 3166-1 alpha-3 country code.
        - `legal_entity_identifier` string, required: An official business identifier, such as an LEI, VAT number or company registration number.

## Response `200`

The created fiat deposit account.

- FiatDepositAccountResponse: Response containing a single fiat deposit account.
  - `fiat_deposit_account` FiatDepositAccount, required: A Bridge fiat deposit account linked to a wallet.
    - `id` string, required
    - `wallet_id` string, required
    - `provider` 'bridge', required: Discriminator: the fiat deposit account is orchestrated via Bridge.
    - `environment` 'sandbox' | 'production', required: The Privy API environment.
    - `status` 'activated' | 'deactivated', required: Activation status of a fiat deposit account.
    - `source` FiatDepositAccountSource, required: The source fiat currency and available payment rails for a fiat deposit account.
      - `currency` string, required
      - `payment_rails` string[], required
    - `destination` FiatDepositAccountDestination, required: The destination crypto asset and chain for a fiat deposit account.
      - `asset` string, required: Destination crypto asset (e.g. "usdc").
      - `chain` string, required: Destination chain (e.g. "base", "tempo").
    - `developer_fee_percent` string, required: The fee your app keeps on each deposit, as a percentage. "0" when none was set.
    - `deposit_instructions` FiatDepositInstructions, required: Bank or payment deposit instructions for a fiat deposit account. Shape varies by source currency.
      - `bank_name` string
      - `bank_address` string
      - `bank_account_number` string
      - `bank_routing_number` string
      - `bank_beneficiary_name` string
      - `bank_beneficiary_address` string
      - `iban` string
      - `bic` string
      - `clabe` string
      - `br_code` string
      - `account_number` string
      - `sort_code` string
      - `bre_b_key` string
      - `account_holder_name` string
      - `deposit_message` string
      - `payment_rails` string[]
    - `created_at` string, required

## Changes

- **2026-10-22** `f09c8fa8dbc4`: 1 info
  - added the new optional request property `oneOf[subschema #1: BridgeCreateFiatDepositAccountRequestBody]/travel_rule`
- **2026-10-16** `4facbfa7f9d4`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/privy-io/apis/privy-api/changes/v1/wallets/:wallet_id/deposit_accounts/fiat/post.md)

---

[API](https://skmtc.dev/privy-io/apis/privy-api.md) - [All operations](https://skmtc.dev/privy-io/apis/privy-api/llms.txt) - [OpenAPI document](https://skmtc.dev/privy-io/apis/privy-api/revisions/3a2288470053?raw)
