---
title: "Create a wallet"
description: "Create a new blockchain wallet for a customer on the specified network."
protocol: rest
method: POST
endpoint: "/v1/wallets"
baseUrl: "https://api.gravv.xyz"
group: "Wallets"
auth:
  label: "Api-Key"
  name: "Api-Key"
  in: header
---

# Create a wallet

<Endpoint method="POST" path="/v1/wallets" />

Create a new blockchain wallet for a customer on the specified network.

## Headers

<ParamField name="Idempotency-Key" header="Idempotency-Key" type="string" required>
  Required for POST requests. Reuse only for an identical retry.
</ParamField>

## Request Body

<ParamField name="customer_id" body="customer_id" type="string" required>
  ID of the customer to create a wallet for
</ParamField>

<ParamField name="name" body="name" type="string">
  Optional custom name for the wallet
</ParamField>

<ParamField name="network" body="network" type="string" required>
  Blockchain network for the wallet

  Possible values: `stellar`, `polygon`, `ethereum`, `base`, `solana`, `avalanche`, `sui`, `tron`
</ParamField>

### Request Examples

<RequestExample>

```json title="Stellar wallet example"
{
  "customer_id": "9e3cccad-e9ae-47a0-81ee-063af0159310",
  "name": "my wallet",
  "network": "stellar"
}
```

```json title="Polygon wallet example"
{
  "customer_id": "9e3cccad-e9ae-47a0-81ee-063af0159310",
  "name": "my wallet",
  "network": "polygon"
}
```

```json title="Ethereum wallet example"
{
  "customer_id": "9e3cccad-e9ae-47a0-81ee-063af0159310",
  "name": "my wallet",
  "network": "ethereum"
}
```

</RequestExample>

## Responses

| Status | Description |
| --- | --- |
| `200` | Wallet created successfully |
| `400` | Bad request — invalid input or missing required fields |

### 200 response

<ResponseField name="data" type="object">

  <Expandable title="properties">
    <ResponseField name="id" type="string">
      Unique identifier for the wallet
    </ResponseField>

    <ResponseField name="customer_id" type="string">
      ID of the customer who owns this wallet
    </ResponseField>

    <ResponseField name="address" type="string">
      Blockchain wallet address
    </ResponseField>

    <ResponseField name="network" type="string">
      Blockchain network

      Possible values: `stellar`, `polygon`, `ethereum`, `base`, `solana`, `avalanche`, `sui`, `tron`
    </ResponseField>

    <ResponseField name="name" type="string,null">
      Wallet name or identifier
    </ResponseField>

    <ResponseField name="date_created" type="string">
      Timestamp when the wallet was created
    </ResponseField>

  </Expandable>
</ResponseField>

<ResponseField name="error" type="string,null">
</ResponseField>

<ResponseExample>

```json title="Response"
{
  "data": {
    "address": "GDZQAF4A2E5VZMMQVW7XG4FKWZ5KDSUEZF5VQBDQVM53TMU2YLE54NTX",
    "customer_id": "9e3cccad-e9ae-47a0-81ee-063af0159310",
    "date_created": "2025-10-30T12:18:34.484+00:00",
    "id": "2d52eb6d-4fac-44db-a225-d0e6aa13b0e3",
    "name": "my wallet",
    "network": "stellar"
  },
  "error": null
}
```

</ResponseExample>

### 400 response

<ResponseField name="data" type="null">
</ResponseField>

<ResponseField name="error" type="string">
</ResponseField>

## Authorization

- **ApiKeyAuth**
