---
title: "Update Requested Currency"
source_url: https://docs.rapyd.net/en/update-requested-currency.html
lang: en
---

# Update Requested Currency

Define, change, or cancel the currency to which funds received by a virtual account are converted.

The status of the virtual account must be **ACT** (active) or **PEN** (pending).

To cancel a previously defined currency conversion, set `requested_currency` to null.

> **Note:**
>
> - This endpoint replaces the deprecated endpoint - `POST v1/issuing/bankaccounts/:virtual_account`
> - Rapyd no longer supports the deprecated endpoint.
> - The code samples include successful requests (200) and bad requests (400).
>
>   - For error messages that appear due to bad requests (400), see:
>
>     - [General Errors](https://docs.rapyd.net/en/general-errors.md "General Errors")
>     - [Virtual Account Errors](https://docs.rapyd.net/en/virtual-account-errors.md "Virtual Account Errors")
>   - For information about unauthorized request (401) and other authentication errors, see [Troubleshooting Authentication and Authorization Errors](https://docs.rapyd.net/en/troubleshooting-authentication-and-authorization-errors.md "Troubleshooting Authentication and Authorization Errors").

**Prerequisites**

- [Create Wallet](https://docs.rapyd.net/en/create-wallet.md "Create Wallet")
- [Verify Identity](https://docs.rapyd.net/en/verify-identity.md "Verify Identity")
- [Issue Virtual Account to Wallet](https://docs.rapyd.net/en/issue-virtual-account-to-wallet.md "Issue Virtual Account to Wallet")

### Parameters

### Request Path Parameters

- - virtual_account
  - ID of the virtual account number object. String starting with **issuing_**.

### Request Header Parameters

- - access_key
  - Unique access key provided by Rapyd for each authorized user.

    See [Developers](https://docs.rapyd.net/en/developers.md "Developers").
- - Content-Type
  - Indicates that the data appears in JSON format. Set to **application/json**.
- - idempotency
  - A unique key that prevents the platform from creating the same object twice.

    See [Idempotency](https://docs.rapyd.net/en/idempotency.md "Idempotency").
- - salt
  - Random string. Recommended length: 8-16 characters.
- - signature
  - Signature calculated for each request individually.

    See [Request Signatures](https://docs.rapyd.net/en/request-signatures.md "Request Signatures").
- - timestamp
  - Timestamp for the request, in [Unix time](https://docs.rapyd.net/en/glossary.md#UUID-945d98cf-adae-e1cf-2606-c7fae8b4a7e1_unix_time "Unix time") (seconds).

### Request Body Parameters

- - requested_currency
  - Currency received by the virtual account after conversion. Uppercase. One of the following:

    - **AUD** - Australian Dollar
    - **EUR** - Euro
    - **GBP** - Pound Sterling
    - **HKD** - Hong Kong Dollar
    - **SGD** - Singapore Dollar
    - **USD** - US Dollar

    When not specified, the funds appear in the wallet’s currency account for the currency of the transaction.

### Response Parameters

- - bank_account
  - Details about the virtual account, including the following fields:

    - - aba
      - 9-digit ABA routing number of the virtual account.
    - - aba_routing_number
      - 9-digit ABA routing number of the virtual account.
    - - account_holder
      - Name of the virtual account holder.
    - - account_no
      - The actual account number that was assigned to the virtual account when it was created.
    - - account_number
      - The actual account number that was assigned to the virtual account when it was created.
    - - address
      - Street address of the branch of the bank that issued the virtual account number.
    - - beneficiary_name
      - Name of the owner of the Rapyd Wallet that the virtual account number was issued to.
    - - bic
      - [Bank Identifier Code (BIC)](https://docs.rapyd.net/en/glossary.md#UUID-945d98cf-adae-e1cf-2606-c7fae8b4a7e1_bic "Bank Identifier Code") of the virtual account.
    - - branch_code
      - Number of the bank branch.
    - - city
      - City of the branch of the bank that issued the virtual account number.
    - - country
      - Two-letter ISO 3166-1 ALPHA-2 code of the country of the virtual account.
    - - country_iso
      - Two-letter ISO 3166-1 ALPHA-2 code of the country of the virtual account.
    - - iban
      - [International bank account number (IBAN)](https://docs.rapyd.net/en/glossary.md#UUID-945d98cf-adae-e1cf-2606-c7fae8b4a7e1_iban "International Bank Account Number") of the virtual account.
    - - payment_type
      - Method of transferring funds to and from the virtual account.
    - - sort_code
      - A six-digit bank identification number. Relevant to certain country-currency combinations.
- - currency
  - Currency for the virtual account. Three-letter ISO 4217 code.
- - description
  - Description of the transaction, as defined by the client.
- - ewallet
  - ID of the Rapyd Wallet that the virtual account is attached to. String starting with **ewallet_**.
- - funding_instructions
  - Reserved.
- - id
  - ID of the virtual account number object. String starting with **issuing_**.
- - merchant_reference_id
  - Identifier defined by the client for reference purposes. Limit: 45 characters.
- - metadata
  - A JSON object defined by the client. See [Metadata](https://docs.rapyd.net/en/metadata.md "Metadata").
- - requested_currency
  - Currency received by the virtual account after conversion. One of the following:

    - **AUD** - Australian Dollar
    - **EUR** - Euro
    - **GBP** - Pound Sterling
    - **HKD** - Hong Kong Dollar
    - **SGD** - Singapore Dollar
    - **USD** - US Dollar
- - status
  - Indicates the status of the virtual account.

    - **ACT** - Active.
    - **CLO** - Closed.
    - **ERR** - Error.
    - **PEN** - Pending.
    - **REJ** - Rejected.
- - transactions
  - List that describes individual transactions in the wallet that were done via the virtual account number. Each object has the following fields:

    - - id
      - ID of the transaction. String starting with **isutran_**.
    - - amount
      - The amount credited to the virtual account, in units of the currency defined in `currency`.
    - - created_at
      - Timestamp for the transaction, in [Unix time](https://docs.rapyd.net/en/glossary.md#UUID-945d98cf-adae-e1cf-2606-c7fae8b4a7e1_unix_time "Unix time").
    - - currency
      - The currency credited to the virtual account. Three-letter ISO 4217 code.

        - **Transactions without FX** - The currency sent by the sender.
        - **FX transactions** - Determined by `requested_currency` in the virtual account.
    - - fx_rate
      - Currency conversion rate for the transaction.
    - - original_amount
      - The amount sent by the sender to the virtual account, in units of the currency defined in `original_currency`.
    - - original_currency
      - The currency sent by the sender to the virtual account. Three-letter ISO 4217 code.

- /v1/virtual_accounts/:virtual_account

- Update Requested Currency
- ```curl
  curl -X post 'https://sandboxapi.rapyd.net/v1/virtual_accounts/issuing_59fd68cb3837f632abdcb5ddaa75045b' \
  -H 'access_key: your-access-key-here' \
  -H 'Content-Type: application/json' \
  -H 'idempotency: your-idempotency-parameter-here' \
  -H 'salt: your-random-string-here' \
  -H 'signature: your-calculated-signature-here' \
  -H 'timestamp: your-unix-timestamp-here' \
  --data-raw '{
      "requested_currency": "USD"
  }'
  ```
- ```json
  {
      "status": {
          "error_code": "",
          "status": "SUCCESS",
          "message": "",
          "response_code": "",
          "operation_id": "cf126b8b-b6d4-4250-9221-18dc9ea22fad"
      },
      "data": {
          "id": "issuing_59fd68cb3837f632abdcb5ddaa75045b",
          "merchant_reference_id": "issuing_59fd68cb3837f632abdcb5ddaa75045b",
          "ewallet": "ewallet_b16ab040e51deda7f6a786862bd3fe7b",
          "bank_account": {
              "beneficiary_name": "Rapyd Holdings Pte. Ltd.",
              "country_iso": "ID",
              "bank": "Bank Sahabat Sampoerna",
              "country": "Indonesia",
              "local_bank_code": "523",
              "account_number": "4010299991035202"
          },
          "metadata": {},
          "status": "ACT",
          "description": "Issue test bank account",
          "funding_instructions": null,
          "currency": "IDR",
          "requested_currency": "USD",
          "transactions": [
              {
                  "id": "isutran_5ac346053c6b65b3bdcf4baa7aad67c0",
                  "amount": 1,
                  "currency": "IDR",
                  "original_amount": 1,
                  "original_currency": "IDR",
                  "fx_rate": 1,
                  "created_at": 1677495859
              },
              {
                  "id": "isutran_5fbe2b43f4aa143eea2147e3967dd2ac",
                  "amount": 1,
                  "currency": "IDR",
                  "original_amount": 1,
                  "original_currency": "IDR",
                  "fx_rate": 1,
                  "created_at": 1760277099
              },
              {
                  "id": "isutran_c4410cfa3b8b46d47368323e26f358a4",
                  "amount": 1,
                  "currency": "IDR",
                  "original_amount": 1,
                  "original_currency": "IDR",
                  "fx_rate": 1,
                  "created_at": 1760277964
              }
          ]
      }
  }
  ```

- Cancel Requested Currency
- ```curl
  curl -X post 'https://sandboxapi.rapyd.net/v1/virtual_accounts/issuing_59fd68cb3837f632abdcb5ddaa75045b' \
  -H 'access_key: your-access-key-here' \
  -H 'Content-Type: application/json' \
  -H 'idempotency: your-idempotency-parameter-here' \
  -H 'salt: your-random-string-here' \
  -H 'signature: your-calculated-signature-here' \
  -H 'timestamp: your-unix-timestamp-here' \
  --data-raw '{
      "requested_currency": null
  }'
  ```
- ```json
  {
      "status": {
          "error_code": "",
          "status": "SUCCESS",
          "message": "",
          "response_code": "",
          "operation_id": "2205ef11-951e-448f-b038-39f8289cf95b"
      },
      "data": {
          "id": "issuing_59fd68cb3837f632abdcb5ddaa75045b",
          "merchant_reference_id": "issuing_59fd68cb3837f632abdcb5ddaa75045b",
          "ewallet": "ewallet_b16ab040e51deda7f6a786862bd3fe7b",
          "bank_account": {
              "beneficiary_name": "Rapyd Holdings Pte. Ltd.",
              "country_iso": "ID",
              "bank": "Bank Sahabat Sampoerna",
              "country": "Indonesia",
              "local_bank_code": "523",
              "account_number": "4010299991035202"
          },
          "metadata": {},
          "status": "ACT",
          "description": "Issue test bank account",
          "funding_instructions": null,
          "currency": "IDR",
          "requested_currency": null,
          "transactions": [
              {
                  "id": "isutran_5ac346053c6b65b3bdcf4baa7aad67c0",
                  "amount": 1,
                  "currency": "IDR",
                  "original_amount": 1,
                  "original_currency": "IDR",
                  "fx_rate": 1,
                  "created_at": 1677495859
              },
              {
                  "id": "isutran_5fbe2b43f4aa143eea2147e3967dd2ac",
                  "amount": 1,
                  "currency": "IDR",
                  "original_amount": 1,
                  "original_currency": "IDR",
                  "fx_rate": 1,
                  "created_at": 1760277099
              },
              {
                  "id": "isutran_c4410cfa3b8b46d47368323e26f358a4",
                  "amount": 1,
                  "currency": "IDR",
                  "original_amount": 1,
                  "original_currency": "IDR",
                  "fx_rate": 1,
                  "created_at": 1760277964
              }
          ]
      }
  }
  ```

- Bad Request - Requested Currency Not Valid
- ```curl
  curl -X post 'https://sandboxapi.rapyd.net/v1/virtual_accounts/issuing_59fd68cb3837f632abdcb5ddaa75045b' \
  -H 'access_key: your-access-key-here' \
  -H 'Content-Type: application/json' \
  -H 'idempotency: your-idempotency-parameter-here' \
  -H 'salt: your-random-string-here' \
  -H 'signature: your-calculated-signature-here' \
  -H 'timestamp: your-unix-timestamp-here' \
  --data-raw '{
      "requested_currency": "PHP"
  }'
  ```
- ```json
  {
      "status": {
          "error_code": "ERROR_UNSUPPORTED_REQUESTED_CURRENCY",
          "status": "ERROR",
          "message": "Unsupported requested currency.",
          "response_code": "ERROR_UNSUPPORTED_REQUESTED_CURRENCY",
          "operation_id": "8fca14dd-c1a6-44b7-98d1-59606987dcc4"
      }
  }
  ```

- Bad Request - Virtual Account Not Found
- ```curl
  curl -X post 'https://sandboxapi.rapyd.net/v1/virtual_accounts/issuing_59fd68cb3837f632abdcb5ddaa75045' \
  -H 'access_key: your-access-key-here' \
  -H 'Content-Type: application/json' \
  -H 'idempotency: your-idempotency-parameter-here' \
  -H 'salt: your-random-string-here' \
  -H 'signature: your-calculated-signature-here' \
  -H 'timestamp: your-unix-timestamp-here' \
  --data-raw '{
      "requested_currency": "USD"
  }'
  ```
- ```json
  {
      "status": {
          "error_code": "ERROR_GET_ISSUING",
          "status": "ERROR",
          "message": "The request tried to retrieve a virtual account number issued to a wallet, but the ID of the object was not recognized. The request was rejected. Corrective action: Provide the ID of a valid Virtual Account Number object, a string starting with 'issuing_'.",
          "response_code": "ERROR_GET_ISSUING",
          "operation_id": "c9ddf30d-cecf-4ca5-b491-4a07bdb33074"
      }
  }
  ```
