> ## Documentation Index
> Fetch the complete documentation index at: https://www.cashfree.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Edit VBA

> Use this API to edit the details of the created virtual bank account.



## OpenAPI

````yaml /openapi/pgvba/pgvba.yaml put /pg/vba/{virtual_account_id}
openapi: 3.0.3
info:
  title: PG VBA APIs
  version: '1'
servers:
  - url: https://sandbox.cashfree.com/
    description: Sandbox server
  - url: https://api.cashfree.com/
    description: Production server
security: []
tags:
  - name: Virtual Bank Account APIs
    description: Use these APIs to manage VBA
  - name: VBA Payment APIs
    description: Use these APIs fetch VBA payments
  - name: VBA Notification APIs
    description: Use these APIs to manage notification groups
paths:
  /pg/vba/{virtual_account_id}:
    put:
      tags:
        - Virtual Bank Account APIs
      summary: Edit Virtual Bank Account Details
      description: Use this API to edit the details of the created virtual bank account.
      operationId: edit-virtual-bank-account-details
      parameters:
        - name: virtual_account_id
          in: path
          description: >-
            It is the unique ID you created to identify the virtual bank
            account.
          schema:
            type: string
            example: User01
          required: true
        - name: x-client-id
          in: header
          description: >-
            Client app ID. You can find your app id in the [Merchant
            Dashboard](https://merchant.cashfree.com/merchants/pg/developers/api-keys?env=prod).
          required: true
          schema:
            type: string
        - name: x-client-secret
          in: header
          description: >-
            Client secret key. You can find your secret key in the [Merchant
            Dashboard](https://merchant.cashfree.com/merchants/pg/developers/api-keys?env=prod).
          required: true
          schema:
            type: string
        - name: x-api-version
          in: header
          required: true
          description: API version to be used. The accepted format is YYYY-MM-DD.
          schema:
            type: string
            enum:
              - '2024-07-10T00:00:00.000Z'
        - name: x-request-id
          in: header
          required: false
          description: >-
            Request ID for the API call. Can be used to resolve tech issues.
            Communicate this in your tech related queries to Cashfree.
          schema:
            type: string
            example: 4dfb9780-46fe-11ee-be56-0242ac120002
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              description: Request parameters for editing a virtual bank account.
              properties:
                virtual_account_name:
                  type: string
                  example: John Doe
                  description: >-
                    It is the unique name you give to identify a virtual bank
                    account. The parameter allows alphanumeric characters and
                    whitespaces.
                virtual_account_email:
                  type: string
                  example: user@cashfree.com
                  description: >-
                    It is the email ID to associate with the virtual bank
                    account.
                virtual_account_phone:
                  type: string
                  example: 9876543210
                  description: >-
                    It is the phone number to associate with the virtual bank
                    account.
                kyc_details:
                  type: object
                  description: >-
                    It contains the KYC information of the virtual bank account
                    holder.
                  properties:
                    gst:
                      type: string
                      description: >-
                        It is the GSTIN information to associate with the
                        virtual bank account.
                      example: 29AAICP2912R1ZR
                    pan:
                      type: string
                      description: >-
                        It is the PAN information to associate with the virtual
                        bank account.
                      example: ABCPV1234D
                    aadhaar:
                      type: string
                      description: >-
                        It is the aadhaar information to associate with the
                        virtual bank account.
                      example: 655675523712
                remitter_lock_details:
                  type: object
                  description: It contains the bank account information of the remitter.
                  properties:
                    allowed_remitters:
                      type: array
                      items:
                        type: object
                        properties:
                          account_number:
                            type: string
                            description: It is the bank account number of the remitter.
                            example: 26291800001191
                          ifsc:
                            type: string
                            description: >-
                              It is the IFSC information associated with the
                              bank account number.
                            example: YESB0000262
                amount_lock_details:
                  type: object
                  description: It contains the details of the amount for the remittance.
                  properties:
                    min_amount:
                      type: integer
                      description: It is the minimum amount for the remittance.
                      example: 1000
                    max_amount:
                      type: integer
                      description: It is the maximum amount for the remittance.
                      example: 5000
                bank_codes:
                  type: array
                  description: >-
                    It is the respective code used to create a virtual bank
                    account in the corresponding bank. UTIB - Axis Bank ICIC -
                    ICICI Bank YESB - Yes Bank Each bank code corresponds to a
                    specific bank name.
                  items:
                    type: string
                    example: YESB
                notification_group:
                  type: string
                  description: >-
                    It is the group you created with the recipients to receive
                    notificiations regarding the payment details. The parameter
                    allows alphanumeric characters, hyphen (-), underscore
                  example: finance_team
      responses:
        '200':
          description: |
            Success response for editing a virtual bank account.
          content:
            application/json:
              schema:
                type: object
                properties:
                  virtual_bank_accounts:
                    description: It contains the details of the virtual bank account.
                    type: array
                    items:
                      type: object
                      properties:
                        vba_bank_code:
                          description: >-
                            It displays the respective bank code you used to
                            create the virtual bank account.
                          type: string
                          example: UTIB
                        vba_account_number:
                          description: >-
                            It displays the account number of the virtual bank
                            account.
                          type: string
                          example: 94351020001772
                        vba_ifsc:
                          description: >-
                            It displays the IFSC information of the virtual bank
                            account.
                          type: string
                          example: UTIB0CCH274
                        vba_status:
                          description: It displays the status of the virtual bank account.
                          type: string
                          example: ACTIVE
                        vba_created_on:
                          description: >-
                            It displays the creation date and time of the
                            virtual bank account.
                          type: string
                          example: '2019-08-24T14:15:22Z'
                        vba_last_updated_on:
                          description: >-
                            It displays the updation date and time of the
                            virtual bank account.
                          type: string
                          example: '2019-08-24T14:15:22Z'
                        virtual_account_details:
                          description: It contains the details of the virtual bank account.
                          type: object
                          properties:
                            virtual_account_id:
                              type: string
                              description: >-
                                It displays the unique ID of the virtual bank
                                account.
                              example: User01
                            virtual_account_name:
                              type: string
                              description: >-
                                It displays the name of the virtual bank
                                account.
                              example: John Doe
                            virtual_account_email:
                              type: string
                              description: >-
                                It displays the email address associated with
                                the virtual bank account.
                              example: user@cashfree.com
                            virtual_account_phone:
                              type: string
                              description: >-
                                It displays the phone number associated with the
                                virtual bank account.
                              example: 9876543210
                        kyc_details:
                          type: object
                          description: >-
                            It contains the KYC information of the virtual bank
                            account holder.
                          properties:
                            gst:
                              type: string
                              description: >-
                                It is the GSTIN information to associate with
                                the virtual bank account.
                              example: 29AAICP2912R1ZR
                            pan:
                              type: string
                              description: >-
                                It is the PAN information to associate with the
                                virtual bank account.
                              example: ABCPV1234D
                            aadhaar:
                              type: string
                              description: >-
                                It is the aadhaar information to associate with
                                the virtual bank account.
                              example: '655675523712'
                        remitter_lock_details:
                          type: object
                          description: >-
                            It contains the bank account information of the
                            remitter.
                          properties:
                            allowed_remitters:
                              type: array
                              items:
                                type: object
                                properties:
                                  account_number:
                                    type: string
                                    description: >-
                                      It is the bank account number of the
                                      remitter.
                                    example: '026291800001191'
                                  ifsc:
                                    type: string
                                    description: >-
                                      It is the IFSC information associated with
                                      the bank account number.
                                    example: YESB0000262
                        amount_lock_details:
                          type: object
                          description: >-
                            It contains the details of the amount for the
                            remittance.
                          properties:
                            min_amount:
                              type: integer
                              description: It is the minimum amount for the remittance.
                              example: 1000
                            max_amount:
                              type: integer
                              description: It is the maximum amount for the remittance.
                              example: 5000
                        notification_group:
                          type: string
        '400':
          description: Bad Request Error
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
                    example: bad URL, please check API documentation
                  code:
                    type: string
                    example: request_failed
                  type:
                    type: string
                    example: invalid_request_error
          headers:
            x-api-version:
              $ref: '#/components/headers/x-api-version'
            x-ratelimit-limit:
              $ref: '#/components/headers/x-ratelimit-limit'
            x-ratelimit-remaining:
              $ref: '#/components/headers/x-ratelimit-remaining'
            x-ratelimit-retry:
              $ref: '#/components/headers/x-ratelimit-retry'
            x-ratelimit-type:
              $ref: '#/components/headers/x-ratelimit-type'
            x-request-id:
              $ref: '#/components/headers/x-request-id'
            x-idempotency-key:
              $ref: '#/components/headers/x-idempotency-key'
            x-idempotency-replayed:
              $ref: '#/components/headers/x-idempotency-replayed'
        '401':
          description: Authentication Error
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
                    example: authentication Failed
                  code:
                    type: string
                    example: request_failed
                  type:
                    type: string
                    example: authentication_error
          headers:
            x-api-version:
              $ref: '#/components/headers/x-api-version'
            x-ratelimit-limit:
              $ref: '#/components/headers/x-ratelimit-limit'
            x-ratelimit-remaining:
              $ref: '#/components/headers/x-ratelimit-remaining'
            x-ratelimit-retry:
              $ref: '#/components/headers/x-ratelimit-retry'
            x-ratelimit-type:
              $ref: '#/components/headers/x-ratelimit-type'
            x-request-id:
              $ref: '#/components/headers/x-request-id'
            x-idempotency-key:
              $ref: '#/components/headers/x-idempotency-key'
            x-idempotency-replayed:
              $ref: '#/components/headers/x-idempotency-replayed'
        '404':
          description: Resource Not Found
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
                    example: something is not found
                  code:
                    type: string
                    example: somethind_not_found
                  type:
                    type: string
                    example: invalid_request_error
          headers:
            x-api-version:
              $ref: '#/components/headers/x-api-version'
            x-ratelimit-limit:
              $ref: '#/components/headers/x-ratelimit-limit'
            x-ratelimit-remaining:
              $ref: '#/components/headers/x-ratelimit-remaining'
            x-ratelimit-retry:
              $ref: '#/components/headers/x-ratelimit-retry'
            x-ratelimit-type:
              $ref: '#/components/headers/x-ratelimit-type'
            x-request-id:
              $ref: '#/components/headers/x-request-id'
            x-idempotency-key:
              $ref: '#/components/headers/x-idempotency-key'
            x-idempotency-replayed:
              $ref: '#/components/headers/x-idempotency-replayed'
        '409':
          description: Resource Already Present
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
                    example: order with same id is already present
                  code:
                    type: string
                    example: order_already_exists
                  type:
                    type: string
                    example: invalid_request_error
          headers:
            x-api-version:
              $ref: '#/components/headers/x-api-version'
            x-ratelimit-limit:
              $ref: '#/components/headers/x-ratelimit-limit'
            x-ratelimit-remaining:
              $ref: '#/components/headers/x-ratelimit-remaining'
            x-ratelimit-retry:
              $ref: '#/components/headers/x-ratelimit-retry'
            x-ratelimit-type:
              $ref: '#/components/headers/x-ratelimit-type'
            x-request-id:
              $ref: '#/components/headers/x-request-id'
            x-idempotency-key:
              $ref: '#/components/headers/x-idempotency-key'
            x-idempotency-replayed:
              $ref: '#/components/headers/x-idempotency-replayed'
        '422':
          description: Idempotency Error
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
                    example: something is not found
                  code:
                    type: string
                    example: request_invalid
                  type:
                    type: string
                    example: idempotency_error
          headers:
            x-api-version:
              $ref: '#/components/headers/x-api-version'
            x-ratelimit-limit:
              $ref: '#/components/headers/x-ratelimit-limit'
            x-ratelimit-remaining:
              $ref: '#/components/headers/x-ratelimit-remaining'
            x-ratelimit-retry:
              $ref: '#/components/headers/x-ratelimit-retry'
            x-ratelimit-type:
              $ref: '#/components/headers/x-ratelimit-type'
            x-request-id:
              $ref: '#/components/headers/x-request-id'
            x-idempotency-key:
              $ref: '#/components/headers/x-idempotency-key'
            x-idempotency-replayed:
              $ref: '#/components/headers/x-idempotency-replayed'
        '429':
          description: Rate Limit Error
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
                    example: Too many requests from IP. Check headers
                  code:
                    type: string
                    example: request_failed
                  type:
                    type: string
                    example: rate_limit_error
          headers:
            x-api-version:
              $ref: '#/components/headers/x-api-version'
            x-ratelimit-limit:
              $ref: '#/components/headers/x-ratelimit-limit'
            x-ratelimit-remaining:
              $ref: '#/components/headers/x-ratelimit-remaining'
            x-ratelimit-retry:
              $ref: '#/components/headers/x-ratelimit-retry'
            x-ratelimit-type:
              $ref: '#/components/headers/x-ratelimit-type'
            x-request-id:
              $ref: '#/components/headers/x-request-id'
            x-idempotency-key:
              $ref: '#/components/headers/x-idempotency-key'
            x-idempotency-replayed:
              $ref: '#/components/headers/x-idempotency-replayed'
        '502':
          description: Bank Related Error
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
                    example: something is not found
                  code:
                    type: string
                    example: bank_processing_failure
                  type:
                    type: string
                    example: api_error
          headers:
            x-api-version:
              $ref: '#/components/headers/x-api-version'
            x-ratelimit-limit:
              $ref: '#/components/headers/x-ratelimit-limit'
            x-ratelimit-remaining:
              $ref: '#/components/headers/x-ratelimit-remaining'
            x-ratelimit-retry:
              $ref: '#/components/headers/x-ratelimit-retry'
            x-ratelimit-type:
              $ref: '#/components/headers/x-ratelimit-type'
            x-request-id:
              $ref: '#/components/headers/x-request-id'
            x-idempotency-key:
              $ref: '#/components/headers/x-idempotency-key'
            x-idempotency-replayed:
              $ref: '#/components/headers/x-idempotency-replayed'
      deprecated: false
components:
  headers:
    x-api-version:
      description: >
        This header has the version of the API. The current version is
        2022-09-01.
      schema:
        type: string
    x-ratelimit-limit:
      description: |
        Ratelimit set for your account for this API per minute
      schema:
        type: integer
    x-ratelimit-remaining:
      description: |
        Contains number of seconds to wait if rate limit is breached
      schema:
        type: integer
    x-ratelimit-retry:
      description: |
        Contains number of seconds to wait if rate limit is breached
        - Is 0 if withing the limit
        - Is between 1 and 59 if breached
      schema:
        type: integer
    x-ratelimit-type:
      description: >
        either ip or app_id

        - ip if making a call from the browser. True for API where you don't
        need x-client-id and x-client-secret

        - app_id for authenticated API calls i.e using x-client-id and
        x-client-secret
      schema:
        type: string
    x-request-id:
      description: >
        Request ID for your API call. Is blank or null if no x-request-id is
        sent during the request.
      schema:
        type: string
    x-idempotency-key:
      description: >
        An idempotency key is a unique identifier you include with your API
        call. If the request fails or times out, you can safely retry it using
        the same key to avoid duplicate actions.
      schema:
        type: string
    x-idempotency-replayed:
      description: |
        In conjunction with x-idempotency-key this means
        - true if the response was replayed
        - false if the response has not been replayed
      schema:
        type: string

````