Skip to main content
Creating a MicroVault deploys a non-upgradeable vault and its ERC-20 share token. The vault address is also the share-token address.

Prerequisites

  • Completed organization onboarding
  • The CUSTOMER_ID returned by GET /v2/microvaults/customers
  • A unique base-10 integer customerVaultNonce
  • The Ethereum Sepolia base-asset address
  • A fee-recipient EVM address and fee rates expressed in basis points

1. Prepare the deployment

One basis point is 0.01%; 100 basis points is 1%. Use 0 for no management or performance fee.
A 201 response means the action was prepared and simulated. Save its id as INTENT_ID. Reusing the idempotency key is valid only for an identical retry.

2. Authorize the deployment

When turnkeyActivityId is present, the managed authority approval has already started. Poll the authorization endpoint. When it is null, sign the returned EIP-712 signingPayload with the required authority and submit the signature:
The relay returns 202 when it accepts the transaction for submission. That is not yet onchain confirmation.

3. Wait for confirmation

4. Wait for the vault to become active

The list endpoint reports the deployment under provisionings while the vault is being indexed. It then moves to items.

Confirm creation

Creation is complete when the authorization is confirmed and the vault appears in items with status: "active". Save the vault id and address. The new vault starts with 100% of its assets in idle USDC. Setting a target allocation later does not itself move assets; the rebalance workflow performs the movement. If a provisioning entry changes to failed, read its error and create a new vault with a new nonce and idempotency key after correcting the cause. Do not reuse a nonce from a failed or confirmed deployment.