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

# Deactivate an Onramper Virtual Bank Account

> Deactivate a virtual account so it no longer accepts deposits.

Use this endpoint to deactivate an Onramper Account. Once deactivated, the account stops processing new fiat deposits — any funds deposited to the virtual bank account after deactivation will not be converted and forwarded. The account's deposit instructions remain unchanged and the account can be reactivated at any time using the [reactivate endpoint](/api-reference/virtual-account/reactivate).

<Warning>
  Deactivating an account stops all new deposit processing immediately. Inform your customer before deactivating their virtual account to avoid unexpected rejections of incoming funds.
</Warning>


## OpenAPI

````yaml openapi/spherepay.yaml PATCH /v2/virtual-account/{virtualAccountId}/deactivate
openapi: 3.0.0
info:
  title: ''
  description: ''
  version: 1.0.0
  contact: {}
servers:
  - url: https://api.spherepay.co
    description: Production
security:
  - bearer: []
tags: []
paths:
  /v2/virtual-account/{virtualAccountId}/deactivate:
    patch:
      summary: Deactivate a Virtual Account
      description: Deactivate a virtual account so it no longer accepts deposits.
      parameters:
        - name: virtualAccountId
          required: true
          in: path
          schema:
            type: string
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VirtualAccountResponseDto'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetailsDto'
              examples:
                Bad Request:
                  summary: Bad Request
                  value:
                    status: 400
                    detail: Invalid request parameters
                    code: address/invalid
                    correlationId: 28c61e885c6e5eaa78c1a2183a9b883c
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetailsDto'
              examples:
                Not Found:
                  summary: Not Found
                  value:
                    status: 404
                    detail: Resource not found
                    code: resource/not-found
                    correlationId: 28c61e885c6e5eaa78c1a2183a9b883c
        '422':
          description: Unprocessable Entity - Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetailsDto'
              examples:
                Validation Error:
                  summary: Validation Error
                  value:
                    status: 422
                    detail: Validation failed
                    code: validation/failed
                    correlationId: 28c61e885c6e5eaa78c1a2183a9b883c
                    errors:
                      - detail: Invalid email format
                        pointer: /email
                      - detail: Name is required
                        pointer: /name
components:
  schemas:
    VirtualAccountResponseDto:
      type: object
      properties:
        id:
          description: Unique identifier for the virtual account.
          example: virtualAccount_a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6
          type: string
        customer:
          description: The customer ID who owns the virtual account.
          example: customer_b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6e7
          type: string
        active:
          description: >-
            Whether the virtual account is currently active and accepting
            deposits.
          example: true
          type: boolean
        depositInstructions:
          description: >-
            Bank account details that depositors should use to send fiat funds
            into the virtual account.
          type: object
          properties:
            currency:
              description: >-
                The fiat currency accepted for deposits into the virtual
                account.
              example: usd
              type: string
              enum:
                - usd
                - eur
            bankName:
              description: Name of the bank holding the virtual account.
              example: Lead Bank
              type: string
            bankAddress:
              description: Address of the bank holding the virtual account.
              example: 1801 Main St, Kansas City, MO 64108
              type: string
            bankAccountNumber:
              description: >-
                Bank account number for deposits (USD accounts). Null for EUR
                accounts.
              example: '9876543210'
              type: string
              nullable: true
            bankRoutingNumber:
              description: >-
                Bank routing number for deposits (USD accounts). Null for EUR
                accounts.
              example: '021000089'
              type: string
              nullable: true
            bankBeneficiaryName:
              description: Name of the beneficiary on the account.
              example: Bridge Financial Inc.
              type: string
            bankBeneficiaryAddress:
              description: Address of the beneficiary on the account.
              example: 123 Finance St, San Francisco, CA 94105
              type: string
            iban:
              description: IBAN for deposits (EUR accounts). Null for USD accounts.
              example: DE89370400440532013000
              type: string
              nullable: true
            bic:
              description: >-
                BIC/SWIFT code for deposits (EUR accounts). Null for USD
                accounts.
              example: COBADEFFXXX
              type: string
              nullable: true
          required:
            - currency
            - bankName
            - bankAddress
            - bankAccountNumber
            - bankRoutingNumber
            - bankBeneficiaryName
            - bankBeneficiaryAddress
            - iban
            - bic
        destination:
          description: The crypto destination where converted funds are sent after deposit.
          type: object
          properties:
            currency:
              description: The crypto currency deposited funds are converted into.
              example: usdc
              type: string
              enum:
                - usdc
                - usdt
                - eurc
            walletAddress:
              description: The on-chain wallet address where converted crypto is sent.
              example: '0x4838B106FCe9647Bdf1E7877BF73cE8B0BAD5f97'
              type: string
            network:
              description: The blockchain network the destination wallet is on.
              example: ethereum
              type: string
              enum:
                - arbitrum
                - avalanche
                - base
                - ethereum
                - polygon
                - sol
                - tron
          required:
            - currency
            - walletAddress
            - network
        fee:
          description: >-
            Fee breakdown for the virtual account, including integrator and
            platform fees.
          type: object
          properties:
            totalBpsRate:
              description: >-
                Total fee rate in basis points (integrator + platform). 1 bps =
                0.01%.
              example: '130'
              type: string
            integratorFee:
              description: Fee charged by the integrator.
              type: object
              properties:
                bpsRate:
                  description: Integrator fee rate in basis points (1 bps = 0.01%).
                  example: '100'
                  type: string
              required:
                - bpsRate
            platformFee:
              description: Fee charged by the platform.
              type: object
              properties:
                bpsRate:
                  description: Platform fee rate in basis points (1 bps = 0.01%).
                  example: '30'
                  type: string
              required:
                - bpsRate
          required:
            - totalBpsRate
            - integratorFee
            - platformFee
        created:
          description: Timestamp when the virtual account was created (ISO 8601).
          example: '2025-01-15T10:30:00.000Z'
          type: string
        updated:
          description: Timestamp when the virtual account was last updated (ISO 8601).
          example: '2025-01-15T12:00:00.000Z'
          type: string
      required:
        - id
        - active
        - depositInstructions
        - destination
        - created
        - updated
    ProblemDetailsDto:
      type: object
      properties:
        title:
          type: string
        status:
          type: integer
        detail:
          type: string
        code:
          type: string
        errors:
          type: array
          items:
            type: object
            properties:
              detail:
                type: string
              pointer:
                type: string
              parameter:
                type: string
              header:
                type: string
            required:
              - detail
        correlationId:
          type: string
      required:
        - status
        - detail
  securitySchemes:
    bearer:
      scheme: bearer
      bearerFormat: JWT
      type: http

````