---
title: "Generate a stablecoin deposit address"
method: POST
path: "/collections/stablecoin/generate-address"
tags: ["Collection"]
---

# Generate a stablecoin deposit address

`POST /collections/stablecoin/generate-address`

## Request

- Base URL: `https://staging.api.mavapay.co/api/v1`
- URL: `https://staging.api.mavapay.co/api/v1/collections/stablecoin/generate-address`
- Auth: one of:
  - API key in header `X-API-KEY`
  - HTTP bearer
- TypeScript: <https://skmtc.dev/stealthmoney/apis/mavapay-api/docs/collections/stablecoin/generate-address/post.ts> (a function with typed inputs; its response is checked against the schema)

Generate a unique USDT deposit address on a supported network. Send this address to customers so they can deposit USDT into your Mavapay stablecoin wallet. You can generate multiple addresses per network and use `label` to identify them.

## Request body

- object
  - `label` string: A human-readable identifier for this address. Returned as `reference` on the address object.
  - `currency` 'USDT', required: The stablecoin to collect. Currently only USDT is supported.
  - `network` 'trc20' | 'erc20' | 'plasma' | 'solana' | 'polygon', required: The blockchain network to generate the address on. Use lowercase values in the request.

## Response `200`

Address generated successfully

- object
  - `status` string
  - `message` string
  - `data` StablecoinDepositAddress
    - `id` string, uuid: The unique identifier for the deposit address
    - `walletId` string, uuid: The USDT wallet this address deposits into
    - `address` string: The on-chain address customers should send USDT to
    - `currency` 'USDT'
    - `network` string: The blockchain network. Responses typically return this in uppercase (e.g. `ERC20`).
    - `memo` string, nullable: Destination memo/tag if required by the network. `null` when not applicable.
    - `reference` string: The label supplied when the address was generated
    - `minAmount` string: Minimum deposit amount in USDT. Deposits below this amount may not be credited. For example, `5` means 5 USDT.
    - `maxAmount` string: Maximum deposit amount in USDT. `0` means there is no maximum.
    - `createdAt` string, date-time
    - `updatedAt` string, date-time

## Other responses

- `400`: Unexpected error

## Changes

- **2026-08-20** `842376cab855`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/stealthmoney/apis/mavapay-api/changes/collections/stablecoin/generate-address/post.md)

---

[API](https://skmtc.dev/stealthmoney/apis/mavapay-api.md) - [All operations](https://skmtc.dev/stealthmoney/apis/mavapay-api/llms.txt) - [OpenAPI document](https://skmtc.dev/stealthmoney/apis/mavapay-api/revisions/6e0362fa13b5?raw)
