Static Wallets
Reusable deposit addresses for continuous per-customer balance tracking.
A static wallet is a reusable deposit address — one EVM address, valid across every supported EVM chain — that a customer or account can fund any number of times. Use it for continuous, per-customer balance tracking, unlike a payment (one address, one asset, one amount, single-use).
Each incoming transfer is recorded as an individual deposit and moves through Detected → Accepted → Confirmed as on-chain finality accrues; a reorg rolls it back to Invalidated.
Accepted-asset allow-list. A wallet accepts only the assets in allowedAssets; a deposit of any other asset is recorded for audit as Ignored — not credited and not delivered as a webhook.
Crediting. The gross amount is credited to your balance; fee and networkFee are informational and are not deducted. Balance updates are atomic and reorg-safe.
Settings. Idempotent creation by externalId, a per-wallet webhookUrl override, and arbitrary metadata. Drive a synthetic deposit through its lifecycle with POST /v1/static-wallets/{staticWalletId}/simulate (test assets only).
Conventions shared by every endpoint — auth, amounts, timestamps, pagination — are on the reference overview. The full walkthrough lives in the Static wallets guide.
Endpoints
/v1/static-walletsList the project's static wallets, newest first. Paginated via limit and lastId.POSTCreate static wallet/v1/static-walletsCreate a reusable deposit address with an accepted-asset allow-listGETGet static wallet/v1/static-wallets/{staticWalletId}Fetch a single static wallet by its id.PATCHUpdate static wallet/v1/static-wallets/{staticWalletId}Update a static wallet's accepted-asset allow-list, metadata, or webhook URL. Only the fields present in the body are changed.DELETEDelete static wallet/v1/static-wallets/{staticWalletId}Delete a static wallet. Its address stops being monitored and can no longer receive new deposits; previously recorded deposits are unaffected.GETList static wallet deposits/v1/static-wallets/{staticWalletId}/depositsPaginated list of the deposits received by a static wallet, newest first.GETGet static wallet deposit/v1/static-wallets/{staticWalletId}/deposits/{depositId}Fetch a single static-wallet deposit by its id.POSTSimulate static wallet deposit/v1/static-wallets/{staticWalletId}/simulateDrive a synthetic deposit through its lifecycle (no on-chain activity, no balance credit). Available for test-coin assets only.Objects
Each endpoint page lists its own request and response fields. The wallet and deposit objects in full, plus every shared enumeration: Objects & enums
Something unclear? payments@suward.com — we treat every integration question as a documentation defect.