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

# Refund deposit

> Request a refund for a cryptocurrency deposit sent to a WhiteBIT account via the V4 API.



## OpenAPI

````yaml /openapi/private/main_api_v4.yaml POST /api/v4/main-account/refund-deposit
openapi: 3.0.3
info:
  title: WhiteBIT Private HTTP API V4
  description: |
    WhiteBIT Private HTTP API V4 for Main balance changes.

    Base URL: https://whitebit.com

    All endpoints return time in Unix-time format.
    All endpoints return either a JSON object or array.
    For receiving responses from API calls please use http method POST.
  version: 4.0.0
  contact:
    name: WhiteBIT Support
    email: support@whitebit.com
    url: https://whitebit.com
servers:
  - url: https://whitebit.com
    description: WhiteBIT Global Server
  - url: https://whitebit.eu
    description: WhiteBIT EU Server
security:
  - ApiKeyAuth: []
    PayloadAuth: []
    SignatureAuth: []
tags:
  - name: Main Account
    description: Main account balance and operations
  - name: Deposit
    description: Cryptocurrency and fiat deposit operations
  - name: Withdraw
    description: Cryptocurrency and fiat withdrawal operations
  - name: Transfer
    description: Balance transfer operations
  - name: Codes
    description: WhiteBIT codes operations
  - name: Crypto Lending - Fixed
    description: Fixed crypto lending plans
  - name: Crypto Lending - Flex
    description: Flexible crypto lending plans
  - name: Fees
    description: Fee information
  - name: Sub-Account
    description: Sub-account management
  - name: Sub-Account API Keys
    description: Sub-account API key management
  - name: Mining Pool
    description: Mining pool operations
  - name: Credit Line
    description: Credit line information
  - name: JWT
    description: JWT token management
paths:
  /api/v4/main-account/refund-deposit:
    post:
      tags:
        - Deposit
      summary: Refund a deposit
      description: >
        Refund a deposit.


        The system processes refunds only for deposits with status `canceled`.


        Obtain `transactionId` from the `deposit.canceled` webhook (`uniqueId`)
        or from the deposit/withdraw history in the WhiteBIT interface after
        support confirms refund availability.


        The refund address must support the same network and asset as the
        original deposit. The refund address must not be a WhiteBIT address. The
        refund address can differ from the original deposit sender address.


        <Accordion title="Errors">

        ```json

        {
          "code": 0,
          "message": "Transaction not refundable"
        }

        ```


        ```json

        {
          "code": 0,
          "message": "Validation failed",
          "errors": {
            "transactionId": ["The transaction id field is required."],
            "address": ["The address field is required."]
          }
        }

        ```

        </Accordion>


        <Warning>

        Rate limit: 1000 requests/10 sec.

        </Warning>


        <Note>

        The API does not cache the response.

        </Note>


        <Note>

        Refund processing does not complete instantly. Use the
        [refund.successful](/platform/webhook#whitebit-refund-successful) and
        [refund.failed](/platform/webhook#whitebit-refund-failed) webhooks to
        receive refund status updates.

        </Note>
      operationId: refundDeposit
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
                - transactionId
                - address
                - request
                - nonce
              properties:
                transactionId:
                  type: string
                  format: uuid
                  description: >
                    Transaction UUID of the deposit. Obtain from the
                    [deposit.canceled](/platform/webhook) webhook (`uniqueId`
                    field) or from the deposit/withdraw history in the WhiteBIT
                    interface.
                  example: 54bffeb7-7a8f-43f8-bcd8-f14ec10fee85
                address:
                  type: string
                  description: >
                    Destination wallet address for the refund. The address must
                    support the same network and asset as the original deposit.
                    Cannot be a WhiteBIT address. Does not have to match the
                    original deposit address.
                  example: '0x1234567890abcdef1234567890abcdef12345678'
                request:
                  type: string
                  description: >
                    Base64-encoded request body. See the [authentication
                    guide](/private/http-auth) for signature generation details.
                  example: '{{request}}'
                nonce:
                  type: integer
                  description: >
                    A unique identifier for the request. Use a monotonically
                    increasing value such as a Unix timestamp in milliseconds.
                  example: 1594297865000
            example:
              transactionId: 54bffeb7-7a8f-43f8-bcd8-f14ec10fee85
              address: '0x1234567890abcdef1234567890abcdef12345678'
              request: '{{request}}'
              nonce: 1594297865000
      responses:
        '200':
          description: System accepts refund request
          content:
            application/json:
              schema:
                type: object
                required:
                  - id
                properties:
                  id:
                    type: string
                    format: uuid
                    description: Transaction ID of the deposit (echoed from request)
                example:
                  id: 54bffeb7-7a8f-43f8-bcd8-f14ec10fee85
        '400':
          description: Validation fails or transaction does not qualify for refund
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
components:
  schemas:
    Error:
      type: object
      properties:
        code:
          type: integer
        message:
          type: string
        errors:
          type: object
          additionalProperties:
            type: array
            items:
              type: string
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: X-TXC-APIKEY
      description: The public WhiteBIT API key.
    PayloadAuth:
      type: apiKey
      in: header
      name: X-TXC-PAYLOAD
      description: Base64-encoded JSON request body.
    SignatureAuth:
      type: apiKey
      in: header
      name: X-TXC-SIGNATURE
      description: >-
        HMAC-SHA512 signature of the payload, hex-encoded. Computed as
        hex(HMAC-SHA512(payload, api_secret)).

````