> For the complete documentation index, see [llms.txt](https://docs.trustlesswork.com/trustless-work/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.trustlesswork.com/trustless-work/v2-en/api-rest/deploy.md).

# Single Release Escrow

Single-release escrow locks the full amount until one final payout.

Use it when work can be tracked in milestones, but funds should move only once.

{% hint style="info" %}
Choose **single-release escrow** when you want one final settlement instead of partial milestone payouts.
{% endhint %}

### What it does

This escrow holds the total amount on Stellar from the start.

Funds stay locked until one of these outcomes happens:

* All required milestones are completed and approved.
* A dispute is resolved.

### Core concepts

* **Full amount locked upfront**: The escrow amount plus `platformFee` is deposited when the contract is funded.
* **Milestones track progress**: Milestones help coordinate delivery, review, and completion.
* **Single payout**: Funds are released once, at the end of the flow.
* **Status flags**: Escrow state is tracked with flags such as `approved`, `dispute`, `released`, and `resolved`.

### Roles

* **Service provider**: Delivers the work for each milestone.
* **Approver**: Reviews the work and approves completion.
* **Dispute resolver**: Decides the outcome if the parties disagree.
* **Receiver**: Gets the final funds if different from the service provider.

### How the flow works

{% stepper %}
{% step %}

### Deploy the escrow

Define the roles, milestones, asset, and conditions for release.
{% endstep %}

{% step %}

### Fund the escrow

Lock the full amount on-chain before work begins.
{% endstep %}

{% step %}

### Track delivery

The service provider updates milestone status as work progresses.
{% endstep %}

{% step %}

### Approve completion

The approver verifies the deliverables and confirms completion.
{% endstep %}

{% step %}

### Release or resolve

Release the full amount once conditions are met, or resolve the dispute if needed.
{% endstep %}
{% endstepper %}

### Why teams use it

* **Simple settlement**: One final release is easier to reason about.
* **Stronger control**: Funds cannot move before approval or dispute resolution.
* **Clear accountability**: Each role has a defined action in the lifecycle.

### Endpoints in this section

#### Setup

* [Deploy](/trustless-work/v2-en/api-rest/deploy/initialize-escrow.md) — Create the escrow and define its properties.
* [Fund Escrow](/trustless-work/v2-en/api-rest/deploy/fund-escrow.md) — Lock funds into the escrow.

#### Progress and updates

* [Change Milestone Status](/trustless-work/v2-en/api-rest/deploy/change-milestone-status.md) — Mark milestone progress.
* [Approve Milestone](/trustless-work/v2-en/api-rest/deploy/change-milestone-flag.md) — Confirm milestone completion.
* [Manage Milestones](/trustless-work/v2-en/api-rest/deploy/manage-milestones.md) — Add or update milestones.
* [Update Escrow](/trustless-work/v2-en/api-rest/deploy/update-escrow-properties.md) — Change escrow properties when allowed.

#### Settlement and disputes

* [Release Funds](/trustless-work/v2-en/api-rest/deploy/release-funds.md) — Release the final payout.
* [Dispute Escrow](/trustless-work/v2-en/api-rest/deploy/change-dispute-flag.md) — Start a dispute.
* [Resolve Dispute](/trustless-work/v2-en/api-rest/deploy/resolving-disputes.md) — Resolve the dispute and distribute funds.
* [Withdraw Remaining Funds](/trustless-work/v2-en/api-rest/deploy/withdraw-remaining-funds.md) — Recover any remaining balance when applicable.

This model gives the payer confidence that funds are locked and controlled by rules.

It gives the service provider confidence that payment is ready once the work is approved.


---

# 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.trustlesswork.com/trustless-work/v2-en/api-rest/deploy.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.
