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

# Crypto

> Issue a deposit address and list supported tokens

List tokens, create a wallet for a customer, listen for deposits. Wallets are **live mode only**.

## List tokens

Use this before telling a customer what to send, and before a [crypto payout](/guides/payouts). Pass `networks[].chain` as `destination.crypto.chain` — not `evm`.

```bash theme={"theme":{"light":"min-light","dark":"poimandres"}}
curl "https://api.puplar.com/crypto/tokens" \
  -H "Authorization: Bearer sk_live_your_key"
```

```bash theme={"theme":{"light":"min-light","dark":"poimandres"}}
curl "https://api.puplar.com/crypto/tokens?chain=ethereum&currency=usdc" \
  -H "Authorization: Bearer sk_live_your_key"
```

## Create a wallet

The customer must already exist. One wallet per customer per `chain_type` — recreating returns the same address.

```bash theme={"theme":{"light":"min-light","dark":"poimandres"}}
curl -X POST https://api.puplar.com/crypto/wallets \
  -H "Authorization: Bearer sk_live_your_key" \
  -H "Content-Type: application/json" \
  -d '{
    "customer_id": "64f1a2b3c4d5e6f7a8b9c0d1",
    "chain_type": "evm"
  }'
```

Deposits credit your **USD** wallet.

## Retrieve

```bash theme={"theme":{"light":"min-light","dark":"poimandres"}}
curl "https://api.puplar.com/crypto/wallets?customer=64f1a2b3c4d5e6f7a8b9c0d1" \
  -H "Authorization: Bearer sk_live_your_key"
```

```bash theme={"theme":{"light":"min-light","dark":"poimandres"}}
curl "https://api.puplar.com/crypto/wallets/64f9b3c4d5e6f7a8b9c0d1e2" \
  -H "Authorization: Bearer sk_live_your_key"
```

Listen for `crypto.deposit`. See [Webhooks](/guides/webhooks).

```json theme={"theme":{"light":"min-light","dark":"poimandres"}}
{
  "id": "64f1a2b3c4d5e6f7a8b9c0d1",
  "type": "crypto.deposit",
  "timestamp": "2026-07-26T12:00:00.000Z",
  "payload": {
    "id": "64f9b3c4d5e6f7a8b9c0d1e2",
    "status": "completed",
    "method": "crypto",
    "amount": 10000,
    "livemode": true,
    "direction": "credit",
    "currency": "usd",
    "metadata": {},
    "source": {
      "tx_hash": "0xabc123",
      "wallet_address": "0x1111111111111111111111111111111111111111",
      "chain": "ethereum",
      "token": "usdc",
      "contract_address": "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
      "raw_amount": "10000000"
    },
    "hash": "0xabc123",
    "customer": "64aa11b2c3d4e5f6a7b8c9d0"
  }
}
```
