---
title: "Add an asset to an external wallet."
method: POST
path: "/external_wallets/{walletId}/{assetId}"
tags: ["External wallets"]
---

# Add an asset to an external wallet.

`POST /external_wallets/{walletId}/{assetId}`

## Request

- Base URL: `https://api.fireblocks.io/v1`
- URL: `https://api.fireblocks.io/v1/external_wallets/{walletId}/{assetId}`
- Auth: none declared
- TypeScript: <https://skmtc.dev/fireblocks/apis/fireblocks-api/docs/external_wallets/:walletId/:assetId/post.ts> (a function with typed inputs; its response is checked against the schema)

Adds an asset to an existing external wallet. Endpoint Permission: Admin, Non-Signing Admin, Signer, Approver, Editor.

## Path parameters

- `walletId` string, required
- `assetId` string, required

## Headers

- `Idempotency-Key` string

## Request body

- union: Request schema for adding an asset to an external wallet
  - BasicAddressRequest: Basic external wallet request with address information
    - `address` string, required: The wallet's address (or xpub) of the external wallet
    - `tag` string: For XRP wallets, the destination tag; for EOS/XLM, the memo; for the fiat providers (BLINC by BCB Group), the Bank Transfer Description
  - AdditionalInfoRequest: External wallet request with additional payment information for various payment rails
    - `additionalInfo` union, required: Additional payment information based on the payment rail type
      - object: IBAN payment information for European bank transfers
        - `accountHolderGivenName` string, required: The given name (first name) of the account holder
        - `accountHolderSurname` string: The surname (last name) of the account holder
        - `accountHolderCity` string, required: The city where the account holder resides
        - `accountHolderCountry` string, required: The country where the account holder resides (ISO 3166-1 alpha-2 code)
        - `accountHolderAddress1` string, required: The primary address line of the account holder
        - `accountHolderAddress2` string: The secondary address line of the account holder (optional)
        - `accountHolderDistrict` string: The district or region where the account holder resides
        - `accountHolderPostalCode` string, required: The postal code of the account holder's address
        - `iban` string, required: The International Bank Account Number (IBAN)
        - `ibanCity` string, required: The city associated with the IBAN
        - `ibanCountry` string, required: The country associated with the IBAN (ISO 3166-1 alpha-2 code)
      - object: ABA payment information for US bank transfers
        - `accountHolderGivenName` string, required: The given name (first name) of the account holder
        - `accountHolderSurname` string: The surname (last name) of the account holder
        - `accountHolderCity` string, required: The city where the account holder resides
        - `accountHolderCountry` string, required: The country where the account holder resides (ISO 3166-1 alpha-2 code)
        - `accountHolderAddress1` string, required: The primary address line of the account holder
        - `accountHolderAddress2` string: The secondary address line of the account holder (optional)
        - `accountHolderDistrict` string: The district or region where the account holder resides
        - `accountHolderPostalCode` string, required: The postal code of the account holder's address
        - `abaRoutingNumber` string, required: The ABA routing number for the bank
        - `abaAccountNumber` string, required: The account number at the bank
        - `abaCountry` string, required: The country for the ABA transfer (ISO 3166-1 alpha-2 code)
      - object: Basic SPEI payment information for Mexican bank transfers
        - `speiClabe` string, required: The CLABE (Clave Bancaria Estandarizada) number for SPEI transfers
        - `speiName` string: The name associated with the SPEI account
      - object: Advanced SPEI payment information for Mexican bank transfers with full details
        - `rail` 'SPEI', required: The payment rail type for SPEI transfers
        - `addressingSystem` 'CLABE', required: The addressing system used for SPEI transfers
        - `accountHolderGivenName` string, required: The given name (first name) of the account holder
        - `accountHolderSurname` string, required: The surname (last name) of the account holder
        - `country` string, required: The country for the transfer (ISO 3166-1 alpha-2 code)
        - `bankName` string: The name of the bank
        - `beneficiaryRfc` string: The RFC (Registro Federal de Contribuyentes) of the beneficiary
        - `senderDocumentId` string: The document ID of the sender
        - `clabe` string, required: The CLABE (Clave Bancaria Estandarizada) number
      - object: PIX payment information for Brazilian instant payments
        - `rail` 'PIX', required: The payment rail type for PIX transfers
        - `addressingSystem` 'PIX', required: The addressing system used for PIX transfers
        - `accountHolderGivenName` string, required: The given name (first name) of the account holder
        - `accountHolderSurname` string, required: The surname (last name) of the account holder
        - `country` string, required: The country for the transfer (ISO 3166-1 alpha-2 code)
        - `pixKey` string, required: The PIX key used for the transfer
        - `bankName` string: The name of the bank
        - `bankCode` string: The bank code (ISPB - Identificador do Sistema de Pagamentos Brasileiros)
        - `keyType` 'CPF' | 'CNPJ' | 'EMAIL' | 'PHONE' | 'RANDOM', required: The type of PIX key being used
      - object: SEPA payment information for European Single Euro Payments Area transfers
        - `rail` 'SEPA', required: The payment rail type for SEPA transfers
        - `addressingSystem` 'IBAN', required: The addressing system used for SEPA transfers
        - `accountHolderGivenName` string, required: The given name (first name) of the account holder
        - `accountHolderSurname` string, required: The surname (last name) of the account holder
        - `accountHolderCountry` string: The country where the account holder resides (ISO 3166-1 alpha-2 code)
        - `accountHolderPostalCode` string: The postal code of the account holder's address
        - `accountHolderCity` string: The city where the account holder resides
        - `accountHolderAddress` string: The address of the account holder
        - `iban` string, required: The International Bank Account Number (IBAN)
        - `country` string, required: The country for the transfer (ISO 3166-1 alpha-2 code)
        - `bic` string: The Bank Identifier Code (BIC/SWIFT code)
        - `bankName` string: The name of the bank
        - `bankBranch` string: The bank branch information
        - `bankAddress` string: The address of the bank
        - `purposeCode` string: The purpose code for the transfer
        - `taxId` string: The tax identification number
      - object: ACH payment information for US Automated Clearing House transfers
        - `rail` 'ACH', required: The payment rail type for ACH transfers
        - `addressingSystem` 'ACH', required: The addressing system used for ACH transfers
        - `accountHolderGivenName` string, required: The given name (first name) of the account holder
        - `accountHolderSurname` string, required: The surname (last name) of the account holder
        - `country` string, required: The country for the transfer (ISO 3166-1 alpha-2 code)
        - `accountNumber` string, required: The bank account number
        - `routingNumber` string, required: The bank routing number (ABA routing number)
        - `accountType` 'CHECKING' | 'SAVINGS', required: The type of bank account
      - object: US Wire payment information for US domestic wire transfers
        - `rail` 'US_WIRE', required: The payment rail type for US wire transfers
        - `addressingSystem` 'ABA', required: The addressing system used for US wire transfers
        - `accountHolderGivenName` string, required: The given name (first name) of the account holder
        - `accountHolderSurname` string, required: The surname (last name) of the account holder
        - `country` string, required: The country for the transfer (ISO 3166-1 alpha-2 code)
        - `accountNumber` string, required: The bank account number
        - `routingNumber` string, required: The bank routing number (ABA routing number)
        - `swiftCode` string, required: The SWIFT/BIC code of the bank
        - `bankName` string, required: The name of the bank
        - `bankAddressLine` string, required: The street address of the bank
        - `bankAddressCity` string, required: The city where the bank is located
        - `bankAddressState` string: The state where the bank is located
        - `bankAddressCountry` string, required: The country where the bank is located (ISO 3166-1 alpha-2 code)
        - `bankAddressPostalCode` string, required: The postal code of the bank's address
        - `branchNumber` string: The branch number of the bank
      - object: Mobile Money (MOMO) payment information for African mobile payment services
        - `rail` 'MOMO', required: The payment rail type for mobile money transfers
        - `addressingSystem` 'MOMO', required: The addressing system used for mobile money transfers
        - `accountHolderGivenName` string, required: The given name (first name) of the account holder
        - `accountHolderSurname` string, required: The surname (last name) of the account holder
        - `country` string, required: The country for the transfer (ISO 3166-1 alpha-2 code)
        - `mobilePhoneNumber` string, required: The mobile phone number associated with the mobile money account
        - `provider` 'M_PESA' | 'AIRTEL' | 'MTN' | 'TIGO' | 'WAVE' | 'ORANGE', required: The mobile money service provider
        - `email` string, email, required: The email address of the account holder
        - `beneficiaryDocumentId` string: The document ID of the beneficiary
        - `beneficiaryRelationship` string: The relationship between sender and beneficiary
      - object: LBT (Lebanese Bank Transfer) payment information for Lebanese bank transfers
        - `rail` 'LBT', required: The payment rail type for Lebanese bank transfers
        - `addressingSystem` 'BAN', required: The addressing system used for Lebanese bank transfers (Bank Account Number)
        - `accountHolderGivenName` string, required: The given name (first name) of the account holder
        - `accountHolderSurname` string, required: The surname (last name) of the account holder
        - `country` string, required: The country for the transfer (ISO 3166-1 alpha-2 code)
        - `accountNumber` string, required: The bank account number
        - `bankName` string, required: The name of the bank
        - `bankCode` string, required: The bank code or identifier
      - object: Interac e-Transfer payment information for Canadian dollar transfers
        - `rail` 'INTERAC', required: The payment rail type for Interac transfers
        - `addressingSystem` 'INTERAC', required: The addressing system used for Interac transfers
        - `accountHolderGivenName` string, required: The given name (first name) of the account holder
        - `accountHolderSurname` string, required: The surname (last name) of the account holder
        - `country` string, required: The country for the transfer (ISO 3166-1 alpha-2 code)
        - `recipientHandleType` 'EMAIL', required: The type of recipient handler being used
        - `recipientHandleValue` string, required: Email address registered for Interac e-Transfer
        - `message` string, required: The message to be sent to the recipient
      - object: PayID payment information for Australian dollar transfers
        - `rail` 'PAYID', required: The payment rail type for PayID transfers
        - `addressingSystem` 'PAYID', required: The addressing system used for PayID transfers
        - `accountHolderGivenName` string, required: The given name (first name) of the account holder
        - `accountHolderSurname` string, required: The surname (last name) of the account holder
        - `country` string, required: The country for the transfer (ISO 3166-1 alpha-2 code)
        - `value` string, required: The PayID identifier (email, phone, ABN, or organization ID)
        - `type` 'EMAIL', required: The type of PayID being used
        - `bsb` string, required: Bank State Branch (BSB) number (6 digits, format XXX-XXX)
        - `accountNumber` string, required: Australian bank account number
      - object: CHAPS payment information for UK pound sterling same-day transfers
        - `rail` 'CHAPS', required: The payment rail type for CHAPS transfers
        - `addressingSystem` 'CHAPS', required: The addressing system used for CHAPS transfers
        - `accountHolderGivenName` string, required: The given name (first name) of the account holder
        - `accountHolderSurname` string, required: The surname (last name) of the account holder
        - `accountHolderCity` string: The city where the account holder resides
        - `accountHolderCountry` string: The country where the account holder resides (ISO 3166-1 alpha-2 code)
        - `accountHolderPostalCode` string: The postal code of the account holder's address
        - `country` string, required: The country for the transfer (ISO 3166-1 alpha-2 code)
        - `sortCode` string, required: UK bank sort code (format XX-XX-XX)
        - `accountNumber` string, required: UK bank account number
        - `bankName` string: The name of the bank
        - `bankAccountCountry` string, required: CHAPS bank account holder name
        - `bankAccountHolderName` string, required: CHAPS bank account holder name
      - object: CIPS payment information for Cross-Border Interbank Payment System transfers (CNY)
        - `rail` 'CIPS', required: The payment rail type for CIPS transfers
        - `addressingSystem` 'CIPS', required: The addressing system used for CIPS transfers
        - `accountHolderGivenName` string, required: The given name (first name) of the account holder
        - `accountHolderSurname` string: The surname (last name) of the account holder
        - `bankName` string, required: Name of the recipient's bank
        - `bankCountry` string, required: ISO 3166-1 alpha-2 country code of the bank
        - `swiftCode` string, required: SWIFT/BIC code of the recipient bank
        - `accountNumber` string, required: Recipient bank account number
        - `referenceId` string: Optional payment reference
      - object: NEQUI payment information for Colombian mobile payment transfers (COP)
        - `rail` 'NEQUI', required: The payment rail type for NEQUI transfers
        - `addressingSystem` 'NEQUI', required: The addressing system used for NEQUI transfers
        - `phone` string, required: Recipient phone number in E.164 format
      - object: FPS UK payment information for UK Faster Payments transfers (GBP)
        - `rail` 'FPS_UK', required: The payment rail type for UK Faster Payments transfers
        - `addressingSystem` 'FPS_UK', required: The addressing system used for UK Faster Payments transfers
        - `accountHolderGivenName` string, required: The given name (first name) of the account holder
        - `accountHolderSurname` string, required: The surname (last name) of the account holder
        - `accountNumber` string, required: UK bank account number
        - `sortCode` string, required: UK sort code (format XX-XX-XX)
        - `bankAccountCountry` string: ISO 3166-1 alpha-2 country code of the bank account
      - object: FPS HK payment information for Hong Kong Faster Payment System transfers (HKD)
        - `rail` 'FPS_HK', required: The payment rail type for Hong Kong FPS transfers
        - `addressingSystem` 'FPS_HK', required: The addressing system used for Hong Kong FPS transfers
        - `recipientLegalName` string: Full legal name of the recipient
        - `accountNumber` string: Recipient bank account number
        - `bankCode` string: Hong Kong bank code
        - `phone` string: Recipient phone number in E.164 format
        - `email` string, email: Recipient email address
        - `fpsId` string: Hong Kong FPS identifier
      - object: InstaPay payment information for Philippine instant payment transfers (PHP)
        - `rail` 'INSTA_PAY', required: The payment rail type for InstaPay transfers
        - `addressingSystem` 'INSTA_PAY', required: The addressing system used for InstaPay transfers
        - `accountHolderGivenName` string, required: The given name (first name) of the account holder
        - `accountHolderSurname` string, required: The surname (last name) of the account holder
        - `accountNumber` string, required: Recipient bank account or wallet number
        - `bankName` string, required: Name of the recipient's bank or wallet (e.g. BDO, BPI, GCash, Maya)
      - object: PesoNet payment information for Philippine batch payment transfers (PHP)
        - `rail` 'PESONET', required: The payment rail type for PesoNet transfers
        - `addressingSystem` 'PESONET', required: The addressing system used for PesoNet transfers
        - `accountHolderGivenName` string, required: The given name (first name) of the account holder
        - `accountHolderSurname` string, required: The surname (last name) of the account holder
        - `accountNumber` string, required: Recipient bank account number
        - `bankName` string, required: Name of the recipient's bank

## Response `200`

A Wallet Asset object

- ExternalWalletAsset
  - `id` string
  - `status` 'WAITING_FOR_APPROVAL' | 'APPROVED' | 'CANCELLED' | 'REJECTED' | 'FAILED'
  - `address` string
  - `balance` number
  - `lockedAmount` number
  - `tag` string
  - `activationTime` string
  - `additionalInfo` WalletAssetAdditionalInfo[]
    - `accountHolderGivenName` string
    - `accountHolderSurname` string
    - `accountHolderCity` string
    - `accountHolderCountry` string
    - `accountHolderAddress1` string
    - `accountHolderAddress2` string
    - `accountHolderDistrict` string
    - `accountHolderPostalCode` string
    - `abaRoutingNumber` string
    - `abaAccountNumber` string
    - `abaCountry` string
    - `iban` string
    - `ibanCity` string
    - `ibanCountry` string
    - `speiClabe` string
    - `speiName` string

## Other responses

- `default`: Error Response

---

[API](https://skmtc.dev/fireblocks/apis/fireblocks-api.md) - [All operations](https://skmtc.dev/fireblocks/apis/fireblocks-api/llms.txt) - [OpenAPI document](https://skmtc.dev/fireblocks/apis/fireblocks-api/revisions/4eba9965659a?raw)
