---
title: "Create a Customer for a Deposit"
method: POST
path: "/v1/deposit-customers/api-key"
tags: ["Deposits"]
---

# Create a Customer for a Deposit

`POST /v1/deposit-customers/api-key`

Creates a new customer linked to a specific deposit using the depositId

## Query parameters

- `apiKey` string, required

## Request body

- CreateDepositCustomer
  - `customerId` string, required — Merchant-defined unique identifier used to reference the customer in the merchant’s system.
  - `depositId` string, required — Identifier of the deposit.
  - `recipientPublicKeys` string[], required — List of recipient public keys.
  - `defaultOnrampAmount` integer — The default on-ramp amount to prefill for the customer.
  - `customerEmail` string — Prefills the email field in the MoonPay on-ramp widget for the customer.
  - `additionalJSON` string — Optional JSON string containing metadata.
  - `blockchainEngineTypes` string[] — Optional list of blockchain engines to provision deposit wallets for. When omitted, wallets are created for all supported engines (SOL, BTC, EVM, TRON, HYPERCORE, DOGE). Use this to limit which deposit addresses are generated — for example, pass ["EVM", "BTC"] to skip SOL if you handle Solana deposits yourself.

## Response `200`

The deposit customer was created successfully

- CreateDepositCustomer[]
  - `customerId` string, required — Merchant-defined unique identifier used to reference the customer in the merchant’s system.
  - `depositId` string, required — Identifier of the deposit.
  - `recipientPublicKeys` string[], required — List of recipient public keys.
  - `defaultOnrampAmount` integer — The default on-ramp amount to prefill for the customer.
  - `customerEmail` string — Prefills the email field in the MoonPay on-ramp widget for the customer.
  - `additionalJSON` string — Optional JSON string containing metadata.
  - `blockchainEngineTypes` string[] — Optional list of blockchain engines to provision deposit wallets for. When omitted, wallets are created for all supported engines (SOL, BTC, EVM, TRON, HYPERCORE, DOGE). Use this to limit which deposit addresses are generated — for example, pass ["EVM", "BTC"] to skip SOL if you handle Solana deposits yourself.

## Other responses

- `401` — Provided API key has no access to the resource.

---

[API](https://skmtc.net/hel/apis/helio-open-api.md) · [All operations](https://skmtc.net/hel/apis/helio-open-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/hel/helio-open-api/versions/5732beb2d39f/schema)
