> ## Documentation Index
> Fetch the complete documentation index at: https://second.tech/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Manage your VTXOs

> Inspect the VTXOs behind your Bark wallet's off-chain balance in BTCPay Server, refresh, offboard, or exit them manually, and track exit progress.

The VTXOs page shows a list of the [VTXOs](/docs/learn/vtxo) that make up your off-chain balance, each with its expiry block height, an estimated expiry time, and its status.

<Frame>
  <img src="https://mintcdn.com/second-0659a37d/oyMVF3OPOvsi31EU/images/btcpay/vtxos.png?fit=max&auto=format&n=oyMVF3OPOvsi31EU&q=85&s=9661f92bddc190d552c6fbe56db61ea7" alt="Screenshot of the VTXOs page listing spendable VTXOs with their expiry block heights and estimated expiry times, the auto-refresh badge, and the next round countdown" width="1520" height="440" data-path="images/btcpay/vtxos.png" />
</Frame>

A VTXO shows as **Spendable** most of its life, as **Locked** while an operation uses it, and as **Exiting** or **Exited** during and after an [emergency exit](/docs/btcpay/settings#danger-zone). Use the status filter above the list to show one kind at a time.

## The plugin refreshes VTXOs for you

VTXOs have a limited [lifetime](/docs/learn/lifetime): your wallet must periodically refresh them before expiry.

A badge at the top of the list shows the current auto-refresh threshold. By default, the plugin refreshes any VTXO whose lifetime drops below one day, which keeps automatic refreshes free. You can widen the threshold, or set the wallet to refresh every VTXO right after it's received, in [settings](/docs/btcpay/settings#refresh-on-receive).

The plugin submits queued refreshes to [rounds](/docs/learn/rounds). The countdown at the top of the page shows when the next round starts, and how often the Ark server runs them.

If an automatic refresh fails, or a VTXO gets within half the threshold of expiry before the plugin refreshes it, BTCPay sends you a **VTXO refresh alert** notification. It asks you to refresh manually.

## Refresh, offboard, or exit manually

You may sometimes want granular control over your VTXOs. For example, if you receive a particularly large VTXO, you might prefer to refresh it before it reaches the refresh threshold, or to bring its bitcoin on-chain.

To act on individual VTXOs, select one or more in the list, then select an action in the bar that appears at the bottom of the page:

* **Refresh:** Mark the selected VTXOs for refresh in the next [round](/docs/learn/rounds). You forfeit the selected VTXOs and receive fresh ones.
* **Offboard:** Make an on-chain payment from the selected VTXOs. Leave **Destination address** empty to deliver the bitcoin to your [Bark on-chain wallet](/docs/btcpay/dashboard#the-bark-on-chain-balance-is-a-separate-wallet). Select **Use BTCPay Server wallet** to deliver it to your store's regular wallet instead, or paste any on-chain address. Once an address is in the field, the dialog quotes the fee and the amount you receive. BTCPay notifies you when the payment completes.
* **Emergency Exit:** Reclaim the selected VTXOs' bitcoin on-chain without the Ark server's cooperation: the per-VTXO version of the [emergency exit](/docs/btcpay/settings#danger-zone), with the same warnings.

<Frame caption="Selecting VTXOs brings up the Refresh, Offboard, and Emergency Exit actions">
  <img src="https://mintcdn.com/second-0659a37d/oyMVF3OPOvsi31EU/images/btcpay/vtxos-selected.png?fit=max&auto=format&n=oyMVF3OPOvsi31EU&q=85&s=72c7676eceb949798af8957429a4620a" alt="Screenshot of the VTXOs page with one VTXO selected and the action bar at the bottom showing the Refresh, Offboard, and Emergency Exit buttons" width="1520" height="885" data-path="images/btcpay/vtxos-selected.png" />
</Frame>

<Note>
  On Second's server, refreshing is free during a VTXO's final two days of lifetime. Refreshing earlier costs [liquidity fees](/docs/btcpay/settings#auto-refresh-threshold). The plugin deducts the [offboard fee](/docs/btcpay/send-receive#bark-wallet-fees), on-chain fee included, from the offboarded amount.
</Note>

The plugin only acts on VTXOs that the current filter shows and that are spendable. If it can't confirm that against the wallet, it refuses the action and asks you to check the BTCPay Server logs.

## Track exits

If an [emergency exit](/docs/btcpay/settings#danger-zone) is in progress, this page is where you follow it. Exiting VTXOs show an **Exiting** status with the count of confirmed transactions, then switch to **Exited** once the plugin claims their bitcoin into the Bark on-chain wallet. A **Pending exit** sub-balance appears under the main balance until every VTXO has been claimed.

## Refresh an expired VTXO

If a VTXO has [expired](/docs/learn/lifetime#what-happens-when-vtxos-expire), the **Expiry block height** column shows **Expired** next to its height. The plugin refreshes it when the next round starts, as long as BTCPay Server is running. Let the refresh complete before you send an Ark payment:

1. After the **Next round in** countdown reaches zero, reload the page. The VTXO's status shows **Locked**.
2. If it still shows **Spendable**, tick the VTXO and select **Refresh**. A banner confirms that the plugin queued it for the next round.
3. About one block after the round, reload the page. A fresh VTXO has replaced the expired one.

<Frame caption="An expired VTXO stays Spendable until the plugin refreshes it in the next round">
  <img src="https://mintcdn.com/second-0659a37d/sWpp6Y7pxlHxdWXE/images/btcpay/vtxos-expired.png?fit=max&auto=format&n=sWpp6Y7pxlHxdWXE&q=85&s=452e3330e8f21870cec00d3080db0778" alt="Screenshot of the VTXOs page with one VTXO whose expiry block height is marked Expired while its status still shows Spendable" width="1030" height="500" data-path="images/btcpay/vtxos-expired.png" />
</Frame>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.