> For the complete documentation index, see [llms.txt](https://smilee-finance.gitbook.io/gbera-docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://smilee-finance.gitbook.io/gbera-docs/system-architecture/workflows/operational-workflows.md).

# Operational Workflows

Since user withdrawals often times will imply shutting down a validator node and withdrawing from the Consensus Layer, both async actions, the protocol employs a queue-based system that processes requests in batches in a FIFO mannet. This method ensures fair ordering and the certainty to withdraw when funds are available, avoiding bank runs on the protocol.

*Staking Process:*

1. A user deposits $BERA and receives gBera tokens in return
2. The Asset Manager allocates the deposited $BERA to selected validator or to gFund
3. The Node Registry stores these allocations

*Withdrawal Process:*

1. A user initiates a withdrawal request, resulting in their gBera tokens being locked in the queue
2. The Asset Manager processes these withdrawal requests
3. Upon processing, $BERA is returned to the user via the a final withdrawal
4. The corresponding gBera tokens are burned once the withdrawal is successfully completed.
