> For the complete documentation index, see [llms.txt](https://docs.sidepit.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.sidepit.com/use-sidepit/beta/onboarding/unlock-bitcoin.md).

# Unlock Bitcoin

Request and follow an owner-signed Bitcoin unlock from reservation through completion.

Only the account owner can request an unlock. A trading agent cannot perform this action.

Funds return **only** to the same full `bc1q` Sidepit ID that owns the account. There is no destination field to enter or change.

## Submit an unlock

1. Connect the owner Sidepit ID at [app.sidepit.com](https://app.sidepit.com).
2. Under **Sidepit Account**, choose **Unlock funds**.
3. Enter a positive whole number of sats or choose **MAX**.
4. Confirm the complete connected Sidepit ID and amount.
5. Sign inside UniSat.

<figure><img src="https://954013533-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F0IyfR8sDr4geAO23BULo%2Fuploads%2Fgit-blob-26d12f67be7b3f36c2a23792851959b57fd9c9d1%2Fplaceholder-unlock.svg?alt=media" alt="Placeholder for the production Unlock funds dialog and lifecycle history"><figcaption><p>Screenshot slot: show explicit/MAX controls, the full Sidepit ID, lifecycle statuses, and a complete Bitcoin transaction ID.</p></figcaption></figure>

The server validates available margin and duplicate requests. Open positions and working orders can reduce the amount available to unlock. Cancel unwanted orders and reduce exposure deliberately before requesting a larger amount.

## Lifecycle

| Status       | Meaning                                                                                                          | What to do                                                                     |
| ------------ | ---------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------ |
| `PENDING`    | The signed request was received. It has not yet passed the engine's account and margin rules.                    | Wait for the same operation ID to advance or reject.                           |
| `RESERVED`   | The amount passed validation and has been reserved from the account's available balance and margin exactly once. | This is irrevocable. There is no cancel-unlock operation. Do not resubmit.     |
| `PROCESSING` | The custodian payout is in progress and the lifecycle record carries the Bitcoin transaction ID when available.  | Inspect the complete transaction ID shown by the web app. Do not infer timing. |
| `COMPLETED`  | The on-chain outflow has been folded into account state and the reservation has been retired or reconciled.      | Confirm the wallet receipt and final account state.                            |
| `REJECTED`   | The request did not pass signature, identity, duplicate, or margin checks.                                       | Read the named reject reason before making a new request.                      |

These display states and their operation IDs survive exchange restart. The public protocol exposes them through `AccountOperations.unlock_records`, with reserved value also reflected in `AccountMarginState.pending_unlock`.

Sidepit does not promise a completion time. Refresh the same history row and never create a duplicate because a status has not changed yet.

## If the owner wallet is unavailable

Restore the seed privately in a compatible wallet and verify that it produces the exact same full Sidepit ID. Then reconnect and sign from that address.

If no valid account key or recovery seed remains, there is no documented alternate signing path. Support should receive only public account, operation, and Bitcoin transaction IDs—never seed words, WIFs, or private keys.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.sidepit.com/use-sidepit/beta/onboarding/unlock-bitcoin.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
