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

Prerequisites

  • MicroVaults enabled for your organization
  • A base asset returned by GET /v2/microvaults/yield-sources?chainId=11155111
  • A fee recipient address

1. Submit the vault settings

Fees use basis points: 100 is 1%. Use 0 for no fee.
The response describes the asynchronous creation task. Save task.id to identify this creation attempt.

2. Track provisioning

Find the provisioning entry with id equal to the saved task.id. Retain its chainId, customerId, and customerVaultNonce. Match the active item by the same chainId and customerVaultNonce, with its onchainCustomerId equal to the provisioning entry’s customerId. Verify the resulting vault address against the confirmed creation receipt. Follow nextCursor if it is on a later page. If the task has already left provisionings, use its creation transaction receipt and the deployed factory ABI to obtain the created vault address, then match that address in items. Share names are not unique identifiers. Keep the task ID and transaction hashes when reporting an unresolved provisioning attempt.

Confirm creation

Creation is complete when the vault appears in items with status: "active". Save its id for API calls. Its address is both the vault contract address and the ERC-20 share-token address. If the provisioning entry reports failed, do not create a duplicate vault with the same settings. Record its task ID and error, correct the reported cause, and retry with a new idempotency key.