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

# Delete a recipient

> Deactivates a payout recipient. The recipient must belong to your account. Deleted recipients cannot be used in future transfers.

`wallet` is a conditionally required query-string parameter (DELETE requests carry no body): it is only needed if your account requires KYC verification. When required, it must be a KYC-verified wallet — unverified wallets are rejected with `403` (verify at kyc.madhousewallet.com). If KYC is not enabled for your account, it may be omitted.

If any transfers for this recipient are still in progress (not yet completed or failed), they are immediately marked as **failed** before deletion proceeds. The `transfers_failed` field in the response indicates how many transfers were cancelled. Associated deposit wallets created by the platform are cleaned up automatically.

**Rate limit:** 30 requests/minute.



## OpenAPI

````yaml /openapi.json delete /api/payouts/recipients/{id}
openapi: 3.0.3
info:
  title: MW Payouts API
  version: 1.0.0
  description: >-
    The MW Payouts API lets you programmatically retrieve exchange-rate quotes,
    calculate platform fees, and submit USDC-to-fiat payout transfers on behalf
    of your account.


    All requests must be authenticated with an API key obtained from the
    **Developers** section of the dashboard. API keys are for **server-side use
    only** — never embed them in client-side code.
  contact:
    name: MW Support
    email: support@madhousewallet.com
servers:
  - url: https://business.madhousewallet.com
    description: Production
security:
  - BearerAuth: []
tags:
  - name: Payouts
    description: USDC-to-fiat payout operations
  - name: Recipients
    description: Payout recipient management
paths:
  /api/payouts/recipients/{id}:
    delete:
      tags:
        - Recipients
      summary: Delete a recipient
      description: >-
        Deactivates a payout recipient. The recipient must belong to your
        account. Deleted recipients cannot be used in future transfers.


        `wallet` is a conditionally required query-string parameter (DELETE
        requests carry no body): it is only needed if your account requires KYC
        verification. When required, it must be a KYC-verified wallet —
        unverified wallets are rejected with `403` (verify at
        kyc.madhousewallet.com). If KYC is not enabled for your account, it may
        be omitted.


        If any transfers for this recipient are still in progress (not yet
        completed or failed), they are immediately marked as **failed** before
        deletion proceeds. The `transfers_failed` field in the response
        indicates how many transfers were cancelled. Associated deposit wallets
        created by the platform are cleaned up automatically.


        **Rate limit:** 30 requests/minute.
      operationId: deleteRecipient
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: integer
            example: 12345678
          description: Recipient account ID
        - name: wallet
          in: query
          required: false
          schema:
            type: string
            example: '0xAb5801a7D398351b8bE11C439e05C5B3259aeC9B'
          description: >-
            Your wallet address (EVM `0x` + 40 hex, or Solana base58 32–44
            chars). Conditionally required: only needed if your account requires
            KYC verification, in which case it must be a KYC-verified wallet.
            May be omitted if KYC is not enabled for your account.
      responses:
        '200':
          description: Recipient deleted
          content:
            application/json:
              schema:
                type: object
                properties:
                  deleted:
                    type: boolean
                    example: true
                  id:
                    type: string
                    example: '12345678'
                  transfers_failed:
                    type: integer
                    example: 0
                    description: >-
                      Number of in-progress transfers that were cancelled
                      (marked failed) as a result of this deletion. `0` means no
                      transfers were in flight.
        '400':
          description: >-
            `wallet` query parameter is invalid, or missing when your account
            requires KYC verification (must be a valid EVM or SVM address)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '401':
          description: Missing or invalid API key
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '403':
          description: >-
            Recipient not owned by your account, or `wallet` is not KYC-verified
            — verify it at kyc.madhousewallet.com
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: Recipient not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '429':
          description: Rate limit exceeded (30 req/min)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '503':
          description: Wallet verification service unavailable. Retry after a short delay.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
components:
  schemas:
    Error:
      type: object
      properties:
        error:
          type: string
          description: Human-readable error message
      required:
        - error
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      description: >-
        Pass your API key as a Bearer token: `Authorization: Bearer
        mw_live_<keyId>_<secret>`

````