Skip to main content
As an employer (stream sender) on Aven, you fund a smart-contract escrow, share a stream ID with your freelancer, and review verified work-session reports before payment is released. This page walks you through every stage of that journey — from connecting your wallet to the final attestation.

Step-by-step guide

1

Connect your Freighter wallet

Open the Aven dashboard and connect your Freighter wallet. Make sure Freighter is configured for Stellar testnet — Aven currently operates on testnet only.
Aven never stores your wallet secret key. All transactions are signed locally in Freighter and broadcast to the Stellar network.
2

Create a stream

Navigate to /stream/create. The guided four-step form collects everything the smart contract needs to set up an escrow agreement.Fill in each field:
Set your rate per second carefully — the contract enforces the exact payment amount. Workers never enter their own payment figure; the calculation is active seconds × rate, capped by the remaining escrow.
3

Fund the stream — approve the Freighter transaction

After completing the form, Aven constructs a Stellar transaction that locks the full budget in the stream contract escrow. Freighter will prompt you to review and sign the transaction.Once you sign, the stream is live and the escrow is funded. You will be redirected to the stream page at /stream/[id].
4

Share the stream ID with your freelancer

Copy the stream ID from the stream page URL or the stream details panel and send it to your freelancer. They will need it when authorizing the aven-stellar CLI for the first time.
The stream ID is not sensitive — it is a public contract identifier. Anyone can view the stream’s on-chain state, but only the designated recipient can submit work sessions.
5

Monitor the stream page

Visit /stream/[id] at any time to see the live state of the engagement:
  • Funding panel — total budget, amount reserved for pending/approved sessions, and remaining unreserved escrow.
  • Work sessions tab — all submitted sessions with their current status (Pending, Reserved, Approved, Disputed).
  • Active session indicator — shows whether the freelancer has an active CLI session running right now.
No action is required from you while the freelancer is working. Check back when a session is submitted for your review.
6

Review a submitted work session

When the freelancer stops a session and submits it, it appears under the WORK SESSIONS tab on the stream page. Click any submitted session to expand the full report. You will see:
  • Active time — the total tracked active seconds, minus idle periods detected by the watcher.
  • Git changes summary — the branch, starting commit, ending commit, list of changed file paths (relative paths only — no file contents), additions count, and deletions count.
  • Delivery statement — the freelancer’s written summary of what was accomplished.
  • Payment amount — the contract-calculated figure (active seconds × rate), capped by the remaining escrow. This number is enforced by the smart contract and cannot be altered manually.
  • Evidence hash — a cryptographic commitment to the report data, which is included in the on-chain attestation.
The Aven verifier independently validates the payment calculation before reserving funds. You are approving the work itself — the contract always enforces the correct payment amount.
7

Approve or dispute the session

After reviewing, choose one of two actions:Approve
  • Calls approve_withdrawal on the stream contract.
  • Immediately triggers withdraw_approved, transferring the reserved amount to the recipient’s wallet.
  • Mints a permanent on-chain attestation linking the work record to both addresses.
Dispute
  • Changes the session’s WithdrawalStatus to Disputed.
  • Freezes the reserved funds in escrow — neither party can access them.
  • Opens the resolution process (see the Disputes guide).
If you neither approve nor dispute within the configured timeout period, the finalize_timeout path can be called and payment will release automatically. Act promptly to retain control over the decision.
8

Payment is released automatically on approval

Once you approve, the contract executes the fund transfer without any further interaction. The payment appears in the recipient’s Freighter wallet and a verifiable attestation is minted on-chain.The stream remains open for additional sessions until the budget is exhausted, the duration expires, or you cancel it.

Stream management

After a stream is live you can perform additional management actions from the stream page:

Pause

Temporarily suspends the stream. The freelancer’s CLI will not be able to submit new sessions while the stream is paused. Existing reserved amounts are unaffected.

Resume

Re-activates a paused stream. The freelancer can start new work sessions immediately.

Cancel

Ends the stream permanently and returns all unreserved escrow funds to your wallet.
Cancelling a stream returns unreserved funds to you, but pending and approved withdrawals must be resolved first. Do not cancel a stream while sessions are in a Reserved or Disputed state.

Dashboard overview

Dashboard

View all payment streams you have sent or received. Track funding, session activity, and attestations across all your engagements.

Stream page

The /stream/[id] page is your primary hub for a live engagement: monitor sessions, review reports, and approve or dispute payments.

Profile & attestations

Every approved session produces a portable on-chain attestation visible at /profile/[address]. You can verify any attestation independently at /verify.

Create a stream

Start a new engagement with the guided four-step stream creation flow at /stream/create.