> For the complete documentation index, see [llms.txt](https://docs.zestprotocol.com/start/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.zestprotocol.com/start/stacks-market-smart-contracts/v2-contracts/dao-contracts/dao-treasury.md).

# DAO Treasury

**Purpose:** Protocol fee accumulation and treasury management. Holds protocol reserves and fees.

## Core functions

* withdraw — Withdraw tokens from treasury

***

## withdraw

Withdraw tokens from treasury to specified recipient. Requires DAO executor authorization via approved proposal.

```rust
// Returns: (response bool uint)
withdraw(token: <ft-trait>, amount: uint, recipient: principal) -> (response bool uint)
```

### Parameters

| Parameter | Type         | Description                                      |
| --------- | ------------ | ------------------------------------------------ |
| token     | `<ft-trait>` | Token contract implementing fungible token trait |
| amount    | uint         | Amount to withdraw                               |
| recipient | principal    | Address to receive withdrawn tokens              |

### Returns

* (response bool uint) — Success or error

### Authorization

* DAO executor only (requires approved proposal)

{% hint style="info" %}
Handles both regular tokens and STX via wstx wrapper contract.
{% endhint %}
