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

# Deactivate Spotflow Static Virtual Accounts

> Deactivates a static virtual account, preventing it from receiving any further payments. Once deactivated, the account number can no longer be credited and any incoming transfers to it will be rejected or returned. Use this when a customer's account is closed, when rotating account numbers for security reasons, or when a static account is no longer needed.



## OpenAPI

````yaml openapi.json DELETE /accounts/{id}/deactivate
openapi: 3.1.0
info:
  title: Spotflow
  description: ''
  license:
    name: MIT
  version: 1.0.0
servers:
  - description: Production server
    url: https://api.spotflow.co/api/v1
security:
  - bearerAuth: []
paths:
  /accounts/{id}/deactivate:
    delete:
      description: >-
        Deactivates a static virtual account, preventing it from receiving any
        further payments. Once deactivated, the account status is set to
        inactive and any incoming transfers to it will be rejected or returned.
        This action cannot be undone through this endpoint — a new static
        virtual account must be created if collections need to resume.
      operationId: DeactivateStaticVirtualAccount
      parameters:
        - name: id
          in: path
          required: true
          description: The unique identifier of the static virtual account to deactivate.
          schema:
            type: string
            format: uuid
            example: 65122475-eef0-47e6-8c47-ac461e0a080d
      responses:
        '200':
          description: The static virtual account has been deactivated.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeactivateStaticVirtualAccountResponse'
        '400':
          description: >-
            Bad Request - The account could not be deactivated (e.g. already
            inactive).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error400'
        '401':
          description: Unauthorized - Invalid or missing authentication token.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error401'
        '404':
          description: Not Found - No static virtual account found for the given ID.
          content:
            application/json:
              schema:
                $ref: f4eee7b8-67f0-4fb9-ba7f-6cbb6c9afb21
components:
  schemas:
    DeactivateStaticVirtualAccountResponse:
      type: object
      properties:
        id:
          type: string
          format: uuid
          example: 65122475-eef0-47e6-8c47-ac461e0a080d
        parentAccountId:
          type: string
          format: uuid
          example: 0863bce7-2202-4f9a-8546-06fcbf7203e0
        autoSweep:
          type: boolean
          example: false
        currency:
          type: string
          example: NGN
        mode:
          type: string
          enum:
            - test
            - live
          example: live
        accountTag:
          type: string
          example: sub-account
        status:
          type: string
          example: inactive
          description: Reflects the account's current state after deactivation.
        createdAt:
          type: string
          format: date-time
          example: '2026-08-06T09:59:21.074471Z'
        updatedAt:
          type: string
          format: date-time
          example: '2026-08-14T09:52:22.830371Z'
        accountDetails:
          $ref: '#/components/schemas/VirtualAccountDetails'
        virtualAccounts:
          type: array
          items:
            $ref: '#/components/schemas/VirtualAccountDetails'
    Error400:
      type: object
      properties:
        error:
          type: string
          example: Missing Parameter
        message:
          type: string
          example: missing_parameter
        status:
          type: integer
          format: float
          example: 400
    Error401:
      type: object
      properties:
        error:
          type: string
          example: Unauthorized
        message:
          type: string
          example: invalid_credentials
        status:
          type: integer
          format: float
          example: 401
    VirtualAccountDetails:
      type: object
      properties:
        provider:
          type: string
          example: AELLA
        accountName:
          type: string
          example: SP/pord
        accountNumber:
          type: string
          example: '0217222147'
        bankName:
          type: string
          example: Aella Microfinance Bank
        default:
          type: boolean
          example: true
        depositAddresses:
          type: array
          items:
            type: string
        countryCode:
          type: string
          example: NG
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer

````