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

# Employer Quickstart: Create Your First Payment Stream

> Set up a Freighter wallet on Stellar testnet, connect to the Aven dashboard, create a funded payment stream, and share your stream ID with a freelancer.

This guide walks you through everything you need to fund your first Aven payment stream — from installing a Stellar wallet to depositing your project budget into escrow and handing your freelancer a stream ID. The entire flow takes place in your browser and uses the Stellar testnet, so you can explore Aven without risking real funds.

## Prerequisites

> [!NOTE]
>
> Before you begin, make sure you have the following ready:
>
> * **Freighter browser extension** installed and configured for the **Stellar testnet** network. Download it at [freighter.app](https://www.freighter.app/).
> * **Testnet XLM or USDC** in your Freighter wallet. You can fund a new testnet account for free using the [Stellar Friendbot](https://laboratory.stellar.org/#account-creator?network=test) (also known as Stellar Laboratory).
> * The **Aven dashboard URL**: [https://aven-chi.vercel.app](https://aven-chi.vercel.app)

## Steps

**1. Install and configure Freighter**

Freighter is the Stellar browser wallet Aven uses for authentication and transaction signing. Aven never stores your wallet secret key — Freighter signs every transaction locally in your browser.

1. Visit [freighter.app](https://www.freighter.app/) and install the extension for your browser.
2. Create a new wallet or import an existing one and securely store your recovery phrase.
3. Open the Freighter extension, click the network selector in the top-right corner, and switch to **Testnet**. All Aven streams currently run on Stellar testnet.

> [!NOTE]
>
> If Freighter is set to Mainnet, Aven will still connect, but your testnet account balance will not be visible and transactions will fail. Always confirm the network is set to **Testnet** before proceeding.

**2. Fund your testnet wallet**

Testnet XLM is free and used only for testing. You need a funded account to cover Stellar transaction fees and to deposit funds into your payment stream's escrow.

1. Open Freighter and copy your testnet wallet address (a string beginning with `G`).
2. Navigate to [Stellar Laboratory — Account Creator](https://laboratory.stellar.org/#account-creator?network=test) and paste your address into the **Public Key** field.
3. Click **Get test network lumens**. Your account will be funded with testnet XLM within a few seconds.

For testnet USDC, you can acquire it through the Stellar Laboratory swap interface or a testnet USDC faucet. The Aven stream creation form shows both XLM and testnet USDC as selectable assets.

**3. Connect to the Aven dashboard**

1. Navigate to the Aven dashboard at [https://aven-chi.vercel.app](https://aven-chi.vercel.app).
2. Click **Connect Wallet** in the top navigation bar.
3. Freighter will open and ask you to approve the connection — click **Connect**.
4. Aven will present an authentication message for you to sign. Click **Sign** in the Freighter prompt. This signs a short-lived, scoped message that proves wallet ownership without creating a blockchain transaction or spending any XLM.

Once authenticated, your wallet address appears in the navigation bar and your `/dashboard` view shows your sent and received payment streams.

**4. Create a stream**

Navigate to [/stream/create](https://aven-chi.vercel.app/stream/create) or click **New Stream** in the dashboard. Aven guides you through a four-step form.

Fill in the following fields:

| Field | What to enter |
| - | - |
| **Recipient** | The freelancer's Stellar wallet address (starts with `G`) |
| **Asset** | `XLM` or `USDC` — the currency the freelancer will be paid in |
| **Rate per second** | Payment rate in the chosen asset per active second of verified work |
| **Total budget** | The maximum total amount this stream can pay out (deposited into escrow) |
| **Duration** | How long the stream remains active, expressed in Stellar ledgers |
| **Category** | The type of work (e.g., `development`, `design`, `research`) |
| **Title** | A short human-readable name for the stream, visible to the freelancer |

> [!NOTE]
>
> The smart contract independently validates all stream parameters. The payment amount workers can receive is always capped by the contract — you never need to trust the worker to enter the correct amount.

**5. Review and fund the stream**

After completing the form, Aven displays a full summary of the stream parameters before any funds move.

1. Review the **recipient address**, **asset**, **rate**, **total budget**, and **duration** carefully. Once the contract is funded these parameters are fixed.
2. Click **Confirm and Fund** (or the equivalent button on the confirmation step).
3. Freighter will open showing the transaction details. Verify the deposit amount matches the total budget you entered, then click **Approve**.
4. Wait for the Stellar network to confirm the transaction — this typically takes 5–10 seconds on testnet. Once confirmed, the stream status changes to **Active** and the budget is held in escrow by the smart contract.

**6. Share the stream ID with your freelancer**

Once the stream is active, Aven assigns it a numeric stream ID visible in the stream detail page URL:

```
https://aven-chi.vercel.app/stream/[stream-id]
```

Copy the stream ID and send it to your freelancer along with the dashboard URL. They will need both when running `aven-stellar start` for the first time. The stream ID is not secret — it is a public on-chain identifier — but only the designated recipient wallet can authorize the CLI against it and submit work sessions.

## Stream creation field reference

| Field | Description |
| - | - |
| **Recipient** | The freelancer's Stellar wallet address. Only this address can be authorized to submit sessions against the stream. |
| **Asset** | The Stellar asset used for payment. Aven supports native XLM and testnet USDC. |
| **Rate per second** | The payment rate used to calculate every session payout. Expressed in the chosen asset per active second of verified work. |
| **Total budget** | The full escrow amount deposited at stream creation. This is the maximum the contract will ever release to the recipient. |
| **Duration** | The stream's active window expressed in Stellar ledgers (approximately 5 seconds per ledger on testnet). After this window the stream expires. |
| **Category** | A label that classifies the work type. Used for filtering in the dashboard and on reputation profiles. |
| **Title** | A human-readable stream name visible to both parties in the dashboard and on the public stream page. |

## What happens next

After you share the stream ID, your freelancer will:

1. Run `npx aven-stellar start` inside their Git repository.
2. Enter the dashboard URL and stream ID when prompted.
3. Open the `/cli/authorize` page and sign the authorization request with their Freighter wallet.
4. Begin tracking work sessions against your funded stream.

Each completed session appears under **WORK SESSIONS** on your stream detail page at `/stream/[id]`. You review the full report — timing, Git statistics, and the worker's delivery summary — and then **approve** or **dispute** it. Approving releases the reserved payment directly to the freelancer's wallet and mints a permanent on-chain attestation.

> [!NOTE]
>
> You can monitor payment reservations, remaining escrow, and session history at any time by returning to the stream detail page. The contract balance updates in real time as sessions are reserved and released.


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