Sentra

Create Wallets

Learn how to create and manage crypto wallets for recipients in Sentra

Overview

Wallets in Sentra represent crypto addresses where recipients can receive funds. Each wallet is associated with a specific recipient and blockchain network (chain).

Prerequisites

Before creating a wallet, you must have:

  • A valid recipient ID
  • The wallet address on the desired blockchain
  • The blockchain network (chain) the wallet is on

Supported Chains

Sentra currently supports wallets on the following blockchain networks:

  • ETHEREUM
  • Polygon
  • Base
  • Solana

Supported Tokens

Sentra supports the following stablecoins for payments:

  • USDC - USD Coin
  • USDT - Tether USD

Creating a Wallet

To create a wallet for a recipient, you'll need to provide:

  • The recipient ID (as a path parameter)
  • The wallet address
  • The blockchain network (chain)
  • An optional reference ID for tracking

Example Request

POST /wallets/{recipientId}
Content-Type: application/json
X-API-KEY: sk_dev_your_api_key

{
  "address": "0x7434...5238",
  "chain": "ETHEREUM",
  "referenceId": "550e8400-e29b-41d4-a716-446655440000"
}

Example Response

{
  "id": "7f8d9a1b-2c3d-4e5f-6a7b-8c9d0e1f2a3b",
  "address": "0x7434...5238",
  "chain": "ETHEREUM",
  "isDeleted": false,
  "metadata": null,
  "createdAt": "2024-01-15T10:30:00Z",
  "updatedAt": "2024-01-15T10:30:00Z"
}

Managing Wallets

Update a Wallet

You can update the wallet address for an existing wallet:

PUT /wallets/{walletId}
Content-Type: application/json
X-API-KEY: sk_dev_your_api_key

{
  "address": "0x7434...5238"
}

Get Wallet by ID

Retrieve a specific wallet by its ID:

GET /wallets/{id}
X-API-KEY: sk_dev_your_api_key

Get All Wallets for a Recipient

Retrieve all wallets associated with a specific recipient:

GET /wallets/recipient/{recipientId}
X-API-KEY: sk_dev_your_api_key

Get All Wallets for a User

Retrieve all wallets across all recipients for a specific user:

GET /wallets/user/{userId}
X-API-KEY: sk_dev_your_api_key

Delete a Wallet

Soft delete a wallet (it will be marked as deleted but not removed):

DELETE /wallets/{id}
X-API-KEY: sk_dev_your_api_key

Best Practices

Common Use Cases

Multi-Chain Support

If your recipient needs to receive payments on multiple blockchains, create a separate wallet for each chain:

# Create Ethereum wallet
POST /wallets/{recipientId}
{
  "address": "0x7434...5238",
  "chain": "ETHEREUM"
}

# Create Base wallet (same address format as EVM chains)
POST /wallets/{recipientId}
{
  "address": "0x7434...5238",
  "chain": "BASE"
}

# Create Solana wallet (different address format)
POST /wallets/{recipientId}
{
  "address": "DYw8jCTfwHNRJhhmFcbXvVDTqWMEVFBX6ZKUmG5CNSKK",
  "chain": "SOLANA"
}

Next Steps