# Simulate incoming bank transfer

Simulates a bank transfer into a profile's account details. This will create a payment into the user's account details and balance for the specified amount and currency.
Please refer to the [Bank Account Details API reference](/api-reference/legacy/bank-account-details) for more information on setting up bank details to receive money.
This functionality only works for the following currencies: `USD`, `EUR`, `GBP`. Returns a 400 error when account details for the specified currency do not exist.

Endpoint: POST /v1/simulation/profiles/{profileId}/bank-transactions/import
Security: UserToken

## Path parameters:

  - `profileId` (integer, required)
    The profile ID.

## Header parameters:

  - `X-External-Correlation-Id` (string)
    Optional UUID for correlating requests across systems. If provided, Wise echoes it back in the response. Maximum 36 characters. [Learn more](/guides/developer/headers/correlation-id).

## Request fields (application/json):

  - `currency` (string, required)
    ISO 4217 currency code
    Example: USD

  - `amount` (number, required)
    The payment amount.

  - `reference` (string)
    Custom payment reference to identify the payment.
    Example: Test transfer

  - `senderName` (string)
    Sender full name.
    Example: Jane Doe

  - `senderBankCode` (string)
    Sender bank code.
    Example: 101019628

  - `senderAccountNumber` (string)
    Sender's bank account number.
    Example: 1234567890

  - `beneficiaryName` (string)
    Beneficiary name - defaults to account holder name.
    Example: John Doe

  - `senderAddress` (object)

  - `senderAddress.addressFirstLine` (string)
    Address line: street, house, apartment.

  - `senderAddress.city` (string)
    City name.

  - `senderAddress.postalCode` (string)
    Postal code.

  - `senderAddress.stateCode` (string)
    State code.

  - `senderAddress.country` (string)
    Country code (ISO 3166-1 alpha-2).

