Skip to content
CargoFlow

Live on Monad Testnet

Capital that moves with your cargo

USDC working capital for physical trade. Each tranche is released only when the shipment's own sensor evidence, committed on Monad, says the cargo is fine. Each financier position is a Cargo Note you can trade mid-voyage, marked on chain to that evidence.

A container ship docked under a gantry crane at a busy port

See the route, the evidence behind every release and the money in escrow, live. No wallet needed.

Live on testnet

Live

Source: the CargoFlow API, indexed from Monad Testnet. Check the contracts

Built on

Integrations

  • ZeroDev: Passkey smart accounts and sponsored gas
  • Alchemy: RPC failover and indexer webhooks
  • OpenZeppelin: Contract libraries v5.4
  • Dune: Volume, escrow and recovery analytics
  • MonadVision: Source-verified contracts (Sourcify)

Meet the people

Six people, one shipment

Trade finance is easier to follow as a story. These are the people in it, and every screen on this site belongs to one of them.

  • Meera

    Exporter · Vaccines, Pune

    Ships temperature-sensitive vaccines and gets paid in stages while the container is still at sea, instead of waiting months.

  • Daniel

    Financier · Credit fund

    Puts up the working capital. His money sits in a locked vault and is released only when the cargo's own sensor readings say it is fine.

  • Wei Lin

    Buyer · Pharma importer, Singapore

    Receives the cargo and pays the invoice once. That single payment repays Daniel and sends Meera the rest.

  • The Arbiter

    Dispute resolution · Independent

    Steps in only when the parties disagree, decides with the full evidence trail in front of him, and every ruling is on the record.

  • The Insurer

    Parametric cover · Cargo cover

    Sells cover that pays out automatically when the evidence shows the cargo spoiled, with no claim forms and no waiting.

  • The Carrier

    Ship's officer · Bill of lading

    Issues the digital bill of lading. Whoever holds that token controls the goods, so it can be locked to the loan that finances them.

How it works

One shipment, start to finish

Follow Meera's vaccines from Nhava Sheva to Singapore. Keep scrolling and each step plays out.

See the contracts behind each step

01 · Meera, exporter

Meera registers her shipment

A 40-foot refrigerated container of vaccines leaves Nhava Sheva for Singapore. Meera sets the rule it must keep, 2 to 8 °C the whole way, and splits her financing into five milestones along the route.

Under the hoodThe route, the invoice and the cold-chain policy are stored on chain, and the contract enforces them.

02 · Daniel, financier

Daniel funds it, into a locked vault

Daniel puts up 40,000 USDC. It does not go to Meera yet: it waits in an escrow vault with one drawer per milestone, and nobody, not even CargoFlow, can send it anywhere else.

Under the hoodA shipment-specific escrow vault holds the USDC; only the release rules can move it.

03 · The data logger

The cargo vouches for itself

Probes inside the container sign every temperature reading. The readings are in range, so the first drawer opens and 8,000 USDC goes straight to Meera, while the ship is still at sea.

Under the hoodEvery 8 signed readings become one Merkle root on chain; score, sensor conflict and freshness are checked before a release.

04 · Off Sri Lanka

A warm reading pauses the money

Off Sri Lanka, the probe by the door reads 9.1 °C. Nobody has to notice or make a phone call: the next payment pauses on the spot, and everyone can see why.

Under the hoodAn out-of-range evidence batch flips the facility to Paused; no tranche can release until a verified recovery.

05 · The proof

A private proof clears it

The probe in the middle of the load stayed between 2 and 8 °C. A zero-knowledge proof shows exactly that without revealing a single reading. Meera gets a “Proof ready” alert, signs, and payments resume.

Under the hoodA Groth16 proof, bound to this exact pause, is verified by the contract itself.

06 · Wei Lin, buyer

Wei Lin pays once, everyone is settled

The vaccines arrive and Wei Lin pays the 100,000 USDC invoice. In the same moment the vault repays Daniel his 40,000 plus a 1,200 fee and sends Meera the remaining 58,800.

Under the hoodOne settle transaction runs a fixed waterfall: principal, fee, then the exporter's residual.

Settlement

One invoice, three payouts, no reconciliation

In the reference run a financier commits 40,000 USDC across five milestones at a 3% fee. When the buyer pays the 100,000 USDC invoice, the vault splits it in the same transaction.

Exporter receives in total
98,800USDC
Financier receives
41,200USDC
How the invoice is split100,000 USDC
Settlement of the 100,000 USDC invoice
PayoutShareAmount (USDC)
Financier principal40%40,000USDC
Financier fee1.2%1,200USDC
Exporter residual59%58,800USDC

The exporter already received the 40,000 USDC in tranches during transit; the residual tops it up to the invoice net of financing.

Portals

One facility, a portal for every party

Each party signs with its own wallet or passkey. Nobody, including CargoFlow, can move escrowed USDC anywhere else.

Verify

Don't trust the dashboard. Read the chain.

Six immutable contracts, source-verified, no admin key that can move funds. Every number on this site can be checked against them.

Core contracts

  • Financing controller

    The state machine: release, pause, resume, settle

  • Receivable vault

    The only contract that ever holds USDC

  • Evidence registry

    Merkle roots, scores and proof status per epoch

  • Groth16 verifier

    Checks recovery proofs on-chain

  • Shipment registry

    Parties, invoice and route commitments

  • Policy engine

    The temperature band and evidence thresholds, frozen at registration

FAQ

Questions people ask first

Anything else is in the API reference or the README (opens in a new tab).

Put your next shipment on evidence

Open a facility as the exporter, have your financier fund it from their own wallet, and let the cargo's readings decide every release.