> For the complete documentation index, see [llms.txt](https://city-protocol.gitbook.io/docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://city-protocol.gitbook.io/docs/software-development-kit/deposit-add-fund/common-frontend-flow.md).

# Common Frontend Flow

#### Fund Account Flow

1. Call `fundClient.getSupportedAssets()` to populate an asset picker in your UI.
2. Once the user selects an asset and network, call `fundClient.getUdaAddress(...)` via your backend route to retrieve a deposit address.
3. Display the UDA to the user with the expected asset, network, and any minimum-amount guidance.
4. Poll or subscribe to on-chain events on the destination network to confirm asset arrival at `recipientAddr`.
5. Once confirmed, update the UI to reflect the user's new balance — at which point they can trade, save, or allocate into vaults using `CityClient`.
