---
title: "Update VA Alias"
method: POST
path: "/collection/vaAlias/update"
tags: ["VA Code & Alias"]
---

# Update VA Alias

`POST /collection/vaAlias/update`

## Request

- Base URL: `https://jiof.trxns.in`
- URL: `https://jiof.trxns.in/collection/vaAlias/update`
- Auth: HTTP bearer

Updates an existing STATIC VA Alias. Dynamic VA aliases cannot be updated — they are temporary and auto-expire. Updatable fields: alias holder details (name, email, mobile), remitter list, activation/deactivation dates, amount limits, IMPS/NEFT/RTGS/IFT limits, and UDF fields 1–15.

**Failure conditions** (all return `statusCode: 900` with the description below):

| Condition | Status Description |
|---|---|
| No changes detected | No changes detected |
| Invalid or missing va_code | va_code is mandatory and must be 5 characters long |
| VA Code not found | VA Code does not exist |
| Invalid or missing va_alias | va_alias must be alphanumeric and up to 7 characters long |
| VA Alias does not exist | VA Alias does not exist |
| Dynamic alias update not allowed | Dynamic VA can't be updated. |
| Invalid email | Invalid email format |
| Invalid mobile number | va_mobile must be a valid 10-digit number |
| Invalid activation datetime | Invalid va_activation_dt format |
| Invalid deactivation datetime | Invalid va_deactivation_dt format |
| Activation must be before deactivation | va_activation_dt must be before va_deactivation_dt |
| Minimum &gt; Maximum amount | va_min_amount_limit cannot be greater than va_max_amount_limit |
| Invalid minimum amount | va_min_amount_limit must be numeric |
| Invalid maximum amount | va_max_amount_limit must be numeric |
| Invalid remitter list | va_allowed_remitter must be a non-empty array |
| Invalid remitter account number | Invalid account_number in authorized_remitter |
| Invalid remitter IFSC | Invalid account_ifsc in authorized_remitter |
| Internal server error | Internal Server Error |

## Request body

- UpdateVAAliasRequest: Updates an existing STATIC VA Alias. Dynamic VA aliases cannot be updated — they are temporary and auto-expire.
  - `va_code` string, required: Parent VA Code.
  - `va_alias` string, required: Alias identifier to update.
  - `va_name` string: Account holder name.
  - `va_email` string: Account holder email.
  - `va_mobile` string: Account holder mobile.
  - `va_range_start` string: Start of alias range, if updating a range.
  - `va_range_end` string: End of alias range, if updating a range.
  - `va_allowed_remitter` VAAllowedRemitter[]: Array of allowed remitters.
    - `account_number` string: Remitter's bank account number (5–24 digits).
    - `account_ifsc` string: Remitter's bank IFSC code.
  - `va_activation_dt` string: Activation datetime.
  - `va_deactivation_dt` string: Deactivation datetime.
  - `va_min_amount_limit` number: Minimum credit amount.
  - `va_max_amount_limit` number: Maximum credit amount.
  - `va_udf1` string: Merchant-defined custom field 1.
  - `va_udf2` string: Merchant-defined custom field 2.
  - `va_udf3` string: Merchant-defined custom field 3.
  - `va_udf4` string: Merchant-defined custom field 4.
  - `va_udf5` string: Merchant-defined custom field 5.
  - `va_udf6` string: Merchant-defined custom field 6.
  - `va_udf7` string: Merchant-defined custom field 7.
  - `va_udf8` string: Merchant-defined custom field 8.
  - `va_udf9` string: Merchant-defined custom field 9.
  - `va_udf10` string: Merchant-defined custom field 10.
  - `va_udf11` string: Merchant-defined custom field 11.
  - `va_udf12` string: Merchant-defined custom field 12.
  - `va_udf13` string: Merchant-defined custom field 13.
  - `va_udf14` string: Merchant-defined custom field 14.
  - `va_udf15` string: Merchant-defined custom field 15.

## Response `200`

Success or failure — see statusCode in the body.

- union
  - UpdateVAAliasResponse
    - `statusCode` integer
    - `statusDesc` string
    - `data` object
      - `id` integer
      - `type` 'STATIC' | 'DYNAMIC'
      - `va_alias` string
      - `va_activation_dt` string
      - `va_deactivation_dt` string
      - `va_min_amount_limit` string: Decimal string in this endpoint's response example.
      - `va_max_amount_limit` string: Decimal string in this endpoint's response example.
      - `is_active` integer
      - `updated_at` string
  - VAFailureResponse
    - `statusCode` integer: Application-level status code. 900 indicates failure; the specific reason is in statusDesc.
    - `statusDesc` string: Human-readable description of the failure.

---

[API](https://skmtc.dev/jiopay/apis/virtual-accounts.md) - [All operations](https://skmtc.dev/jiopay/apis/virtual-accounts/llms.txt) - [OpenAPI document](https://skmtc.dev/jiopay/apis/virtual-accounts/revisions/069638c81b20?raw)
