> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.mitu.ai/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.mitu.ai/_mcp/server.

# Issue your first wallet

Agent Wallets let you give your customers wallets that their AI agents can spend from. You decide which customer the wallet belongs to and configure the spending controls that apply when their agents make payments.

You need an existing customer before you can issue a wallet. If you have not created one yet, follow [Create your first customer](/guides/quick-start/create-your-first-customer) first.

> **When to use Agent Wallets**
>
> Use Agent Wallets when you want your customers' AI agents to make payments on their behalf. If you only want to accept payments from AI agents, you do not need to issue wallets. Continue to [Accept your first payment](/guides/quick-start/accept-your-first-payment) instead.

#### Create an Agent Wallet

Create a wallet for the customer and give it a name that describes what it will be used for. You can also configure spending controls when you create the wallet.

**`Request`**

```bash title="Request"
curl --request POST \
  --url https://api.mitu.ai/v1/customers/cus_ds9hazr8jd3l/wallets \
  --header "x-api-key: $MITU_API_KEY" \
  --header "Content-Type: application/json" \
  --data '{
    "name": "Travel",
    "limits": {
      "per_payment": 250,
      "monthly": 2000,
      "approve_above": 150
    }
  }'
```

A successful request returns the wallet, its status and its spending controls. Read the addresses that fund it from [Get wallet addresses](/api-reference/agent-wallets/get-wallet-addresses).

**`201 Created`**

```json title="201 Created"
{
  "id": "wal_fc2ff966abc04de09c22",
  "customer_id": "cus_ds9hazr8jd3l",
  "name": "Travel",
  "currency": "USDC",
  "status": "active",
  "frozen_at": null,
  "frozen_reason": null,
  "limits": {
    "per_payment": 250,
    "session": 0,
    "daily": 0,
    "monthly": 2000,
    "approve_above": 150,
    "currency": "USD"
  },
  "created_at": "2026-09-11T15:01:32.760Z"
}
```

Choose a name that makes the purpose of the wallet easy for the customer and their AI agents to understand. A customer can have multiple wallets for different purposes.

Wallet names are unique for each customer. If you create another wallet with the same name for the same customer, the existing wallet is returned.

#### Configure spending controls

Spending controls determine how the wallet can be used when an AI agent makes a payment on behalf of the customer.

| Control         | Description                                                      |
| --------------- | ---------------------------------------------------------------- |
| `per_payment`   | Sets the amount the wallet can spend on an individual payment.   |
| `session`       | Sets the amount the agent can spend in one session.              |
| `daily`         | Sets the amount the wallet can spend in a UTC day.               |
| `monthly`       | Sets the amount the wallet can spend during a calendar month.    |
| `approve_above` | Sets the amount above which the customer must approve a payment. |

The limits are expressed in USD while the wallet balance is held in USDC.

If you do not provide a limit when creating the wallet, the wallet inherits the corresponding limit configured for the customer. A value of `0` represents no limit.

Every control is enforced when the agent pays. A payment over any of them is held for the customer to approve. See [Limits and controls](/platform/agent-wallets/limits-and-controls).

#### Fund the wallet

The customer needs to fund the wallet before their AI agents can use it to make payments.

[Get wallet addresses](/api-reference/agent-wallets/get-wallet-addresses) returns an address for each supported network. When funding with stablecoins, send USDC to the address associated with the network being used.

> **Always show the network**
>
> Always present the wallet address together with its network. An address alone is not enough to determine where funds should be sent.

Agent Wallets can also support funding through local bank transfers where available. The funding options available to a customer depend on the currencies and funding methods supported for their account.

Learn more about the available funding methods in [Funding Agent Wallets](/platform/agent-wallets/funding).

#### Confirm the wallet is funded

When funds are credited to the wallet, a `wallet.credited` event is created. You can use this event to update your application when the customer's wallet balance changes.

**`wallet.credited`**

```json title="wallet.credited"
{
  "event": "wallet.credited",
  "event_data": {
    "wallet_id": "wal_fc2ff966abc04de09c22",
    "amount": "50.000000",
    "currency": "USDC",
    "network": "base",
    "balance_after": "50.000000"
  }
}
```

You can also retrieve the customer's wallets through the API.

**`Request`**

```bash title="Request"
curl --request GET \
  --url https://api.mitu.ai/v1/customers/cus_ds9hazr8jd3l/wallets \
  --header "x-api-key: $MITU_API_KEY"
```

Once the wallet has a balance, the customer's AI agents can use it to make supported payments after the customer connects through an AI client.

## You have issued your first Agent Wallet

The customer now has an Agent Wallet that can be funded and used by their AI agents within the spending controls you have configured.

#### [Accept your first payment](/guides/quick-start/accept-your-first-payment)

Create a payment experience and receive your first payment.

#### [Issue wallets to customers](/guides/integration-guides/issue-wallets-to-customers)

Learn how to issue, fund and manage Agent Wallets for your customers.