SawitFund

How it works

A real fleet, held as a digital position.

The trucks are the business. The chain is the cap table.

Guided walkthrough

Be shown, rather than told

The walkthrough runs on top of the real product and follows what you actually do. Nothing in it is a mock-up.

The fleet pool

Find a truck, take a share of the pool that finances it, put it to work, and collect what it earns. Runs on the exhibition simulator, or against a wallet.

11 steps

The on-chain asset

The separate testnet demonstration: a registered haulage fleet, an oracle-derived valuation, and one real transaction you can look up afterwards. Needs a browser wallet.

9 steps · Local Development Node

The journey

Four steps, in order

01

Discover

Find an asset

Browse the fleet working the estate-to-port corridor. Each vehicle shows what it is doing right now, how hard it has been worked, and what it has earned.

Explore the fleet
02

Own

Take a position

Contribute to the fleet pool. Your balance divided by the pool total is your ownership percentage, recorded on-chain the moment the transaction confirms.

View portfolio
03

Operate

Put it to work

Deploy a truck onto a corridor and watch it load, haul, deliver and return. Fuel burns, condition degrades, and the trip accrues real costs against real revenue.

Open operations
04

Earn

Receive your share

Completed trips accumulate operating profit. Settling pushes it on-chain in one transaction, raising every owner's claimable dividend by their exact fraction.

See activity

The mechanism

From a truck to a claim

Five things, in the order value moves through them. Open one to see what it means, what part of SawitFund implements it, and why it is there at all.

The truck

What it means
The real-world asset is the vehicle — a heavy hauler with a plate, a condition and a resale value. Estates, mills and the port are places it drives to, not things anyone here owns.
What implements it
src/sim/world.ts — the fleet roster
Why it exists
Fresh fruit bunches lose oil the hour they are cut, so the mill pays for haulage whether or not anyone owns the trucks. That tariff is the revenue this product is built on.

Ownership model

One pool, 9 financed vehicles

SawitFund raises into a single pool sized at 12 ETH, which finances 9 of the 16 vehicles working this region. Holding a position means holding the same fraction of all 9 — not a claim on one truck that might sit idle while others run. The remaining 7 belong to other operators; they share the corridors, and none of their revenue reaches the pool.

That fraction is not stored as a separate record. It is derived, every time it is read, from numbers the contract already keeps:

ownership  =  shares[you] / sharesSold

on settlement:
  perShare +=  amount / sharesSold

dividend   =  shares[you] × perShare
              − alreadyCounted[you]

Settling revenue advances one running total rather than paying every holder in turn, so the cost of a settlement does not grow with the number of owners. It also fixes the timing: you earn from the revenue settled while you held your position, and a contribution arriving afterwards cannot reach backwards into it.

Worked example

Illustrative, using the exhibition seed rather than live state: the seeded pool stands at 8.00 ETH against the 12 ETH target. Your own position is on the portfolio.

Pool total8.00 ETH
Your contribution3.00 ETH
Your ownership37.5%
Revenue settled0.0500 ETH
Your dividend0.01875 ETH

37.5% of the pool earns 37.5% of everything settled, without any per-investor bookkeeping.

Settlement

What goes on-chain, and what does not

Stays off-chain

Everything physical

  • Truck position and heading
  • Fuel level and vehicle wear
  • Cargo state and route progress
  • Per-frame movement

These change many times a second. Writing them to a ledger would cost more than the freight and prove nothing.

Goes on-chain

Everything economic

  • Ownership contributions
  • Operating profit, settled per cycle
  • Dividend entitlement, derived pro-rata
  • Claims made against that entitlement

A trip produces thousands of updates and exactly one number worth recording: what it earned.

Two instruments

The pool and the token are not the same thing

Instrument one

The fleet pool

What you hold
A position in a share ledger
Is there a token?
No
What it earns
A fraction of settled operating profit
Contract
TruckFunding
Where
Portfolio, Explore, Operations, Activity

Instrument two

The asset token

What you hold
An ERC-20 balance of SAWIT
Is there a token?
Yes — that is the point of it
What it earns
Nothing. It demonstrates a valuation
Contract
SawitToken, SawitAsset, SawitOracle
Where
Token

A pool share is not a SAWIT balance. Neither converts into the other, and no surface in SawitFund adds them together.

Oracles

How an outside number gets in

A blockchain cannot fetch anything from outside itself. This is the path an outside number takes to reach a figure on screen — and where its credibility is decided.

Outside data

What it means
Two different things arrive from outside: the price of ETH in dollars, and what the fleet is worth. They are not equally well-sourced, and the product never lets them look alike.
What implements it
Chainlink aggregators · a valuer's appraisal
Why it exists
A contract cannot reach out and fetch anything. Every external number has to be pushed in by someone, which makes who pushed it the whole question.

The network

SawitChain

SawitChain is the settlement layer beneath the product. It holds the ownership contract, receives revenue deposits, and pays dividends on demand. Holders interact with SawitFund; SawitChain is what makes the position real.

This build is pointed at Local Development Node. Every explorer link in the product is derived from that setting rather than written down, so a build on a testnet cannot hand anyone a mainnet link — and where the active network has no explorer, the product says so instead of inventing one.

Exhibition mode

Simulated Network

Not on a chain

No node is reachable, so ownership and settlement are simulated locally. Nothing here is recorded on a public chain.

Ownership contract
Contributioninvest()
Revenue depositdepositRevenue()
Dividend claimclaimProfit()

This is an exhibition build. The fleet, its corridors and its economics are simulated on this device. Ownership and settlement run against a local SawitChain node, and anything that has not reached a chain is marked SIMULATED rather than presented as settled. Nothing here is an offer of securities.