Prerequisites
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.
- Testnet XLM or USDC in your Freighter wallet. You can fund a new testnet account for free using the Stellar Friendbot (also known as Stellar Laboratory).
- The Aven dashboard URL: 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.
- Visit freighter.app and install the extension for your browser.
- Create a new wallet or import an existing one and securely store your recovery phrase.
- 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.
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.
- Open Freighter and copy your testnet wallet address (a string beginning with
G). - Navigate to Stellar Laboratory — Account Creator and paste your address into the Public Key field.
- Click Get test network lumens. Your account will be funded with testnet XLM within a few seconds.
3
Connect to the Aven dashboard
- Navigate to the Aven dashboard at https://aven-chi.vercel.app.
- Click Connect Wallet in the top navigation bar.
- Freighter will open and ask you to approve the connection — click Connect.
- 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.
/dashboard view shows your sent and received payment streams.4
Create a stream
Navigate to /stream/create or click New Stream in the dashboard. Aven guides you through a four-step form.Fill in the following fields:
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.
- Review the recipient address, asset, rate, total budget, and duration carefully. Once the contract is funded these parameters are fixed.
- Click Confirm and Fund (or the equivalent button on the confirmation step).
- Freighter will open showing the transaction details. Verify the deposit amount matches the total budget you entered, then click Approve.
- 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: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
What happens next
After you share the stream ID, your freelancer will:- Run
npx aven-stellar startinside their Git repository. - Enter the dashboard URL and stream ID when prompted.
- Open the
/cli/authorizepage and sign the authorization request with their Freighter wallet. - Begin tracking work sessions against your funded stream.
/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.
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.
