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

# CreateDepositWallet

> Create a dedicated deposit address for a user.

Creates a deposit address bound to your business reference. Idempotent on `(API token, network, ref)`: repeated calls return the same address, so it is safe to retry. An EVM address works on all five chains.

<Tip>
  If you only use one EVM chain, a `ref` like `arbitrum_<user_uuid>` makes wallets easy to tell apart.
</Tip>

<Note>
  Sweep uses a separate API token issued by MPCVault - see the [Sweep Overview](/api-reference/sweep/overview).
</Note>

## Errors

All errors return a JSON object with `code`, `error`, and `reason` fields:

```json theme={null}
{
  "code": 400,
  "error": "Bad Request",
  "reason": "ref required"
}
```

| Reason                                     | Description                                             |
| ------------------------------------------ | ------------------------------------------------------- |
| `network required` / `network unsupported` | `network` missing or unsupported                        |
| `ref required` / `ref invalid`             | `ref` missing, too long, or contains invalid characters |
| `unauthenticated`                          | `x-mtoken` missing or invalid                           |
| `IP is not allowed`                        | Request IP not allowlisted                              |
| `sweep config not configured`              | Sweep parameters not configured; contact MPCVault       |
| `wallet disabled`                          | Address disabled                                        |
| `wallet address conflict; retry`           | Address allocation conflict; retry                      |
| `internal server error`                    | Server-side error                                       |


## OpenAPI

````yaml openapi.json POST /v1/sweep/wallets
openapi: 3.1.0
info:
  title: mpcvault.platform.v1
  version: 0.0.1
servers:
  - url: https://api.mpcvault.com
    description: MPCVault API Server
security:
  - ApiKeyAuth: []
tags:
  - name: mpcvault.platform.v1.PlatformAPI
  - name: mpcvault.sweep.v1.SweepAPI
    description: >-
      Deposit address creation and TRON watch address registration for the Sweep
      product.
paths:
  /v1/sweep/wallets:
    post:
      tags:
        - mpcvault.sweep.v1.SweepAPI
      summary: CreateDepositWallet
      description: >-
        Creates a dedicated deposit address bound to your business reference.
        Idempotent on (API token, network, ref): repeated calls return the same
        address. An EVM address works on all five supported chains.
      operationId: mpcvault.sweep.v1.SweepAPI.CreateDepositWallet
      requestBody:
        content:
          application/json:
            schema:
              $ref: >-
                #/components/schemas/mpcvault.sweep.v1.CreateDepositWalletRequest
        required: true
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/mpcvault.sweep.v1.CreateDepositWalletResponse
components:
  schemas:
    mpcvault.sweep.v1.CreateDepositWalletRequest:
      type: object
      required:
        - network
        - ref
      properties:
        network:
          type: string
          description: Logical network. `EVM` or `SOLANA`, case-insensitive.
          example: EVM
        ref:
          type: string
          description: >-
            Unique business reference, 1-128 characters, no `:` `<` `>` `;`.
            `<network>_<account_id>` recommended.
          example: customer-wallet-001
    mpcvault.sweep.v1.CreateDepositWalletResponse:
      type: object
      properties:
        address:
          type: string
          description: >-
            The deposit address. An EVM address works on all five supported
            chains.
          example: '0x59b4a4Fd7bC1BAA0e6BB65cBFe3e2E4dbFa5E0a1'
        network:
          type: string
          description: Logical network of the address.
          example: EVM
        ref:
          type: string
          description: The business reference the address is bound to.
          example: customer-wallet-001
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: x-mtoken
      description: Your API token. Required for all API requests.

````