# System Components

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

### OfferHub Frontend

* Marketplace UI (browse, buy, sell)
* Balance UI (top-up, withdraw)
* Order timeline UI (funded, in progress, disputed, released)

### OfferHub Orchestrator (Backend API)

* Creates and manages orders
* Coordinates Airtm and Trustless Work calls
* Handles webhooks and escrow events
* Maintains audit log and internal state

### Airtm Integration Module

* Create pay-in intents
* Receive pay-in webhooks
* Initiate pay-outs / withdrawals
* Retrieve transaction status

### Trustless Work Integration Module

* Create escrow per order
* Update milestone states
* Raise disputes
* Execute release/refund transactions

### Backoffice&#x20;

For this prototype it is expected that the dispute resolving and manual releases through our [Bakcoffice dApp](/trustless-work/v2-en/oss-dapps/backoffice.md). We will also leverage the [escrow viewer](/trustless-work/v2-en/oss-dapps/escrow-viewer.md).

* Dispute case management
* Manual overrides and retries
* Monitoring and audit export


---

# 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.trustlesswork.com/trustless-work/v2-en/oss-dapps/offerhub-marketplace/system-components.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.
