# Escrow & Dispute Contracts

[**TalentLayerEscrow.sol**](https://github.com/TalentLayer/talentlayer-id-contracts/blob/main/contracts/TalentLayerEscrow.sol) is the smart contract that handles escrow transactions for each service, it custody the money and allow hirer to release the money by milestone. Also, in case of a dispute it handle all the workflow and link with the configured arbitrator.&#x20;

It can used to:

* Validate a proposal for a given service and deposit the money
* Release money for the worker&#x20;
* Let the worker reimburse the hirer
* Raise a dispute
* As a platform, claim the fees earned

## Data Structure

![](/files/jsi6ZWzbj7J4BebyNZZk)

## Visualization: TalentLayerEscrow\.sol

<figure><img src="/files/jKIzxuG3YPKQSdpNNDNa" alt=""><figcaption></figcaption></figure>

## Visualization: TalentLayerArbitrator.sol

<figure><img src="/files/98sskaIJxcM3W9ya9wIX" alt=""><figcaption></figcaption></figure>

## Learn More

Learn more about our escrow and dispute system and how they function in workflows:&#x20;

{% content-ref url="/pages/u73Tcoh8q4sCVJGnqTPa" %}
[Escrow and Dispute](/readme/basics/escrow-and-dispute.md)
{% endcontent-ref %}


---

# Agent Instructions: 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:

```
GET https://docs.talentlayer.org/technical-guides/lower-level-guides/smart-contracts/escrow-and-dispute.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
