paulserban.eu

Portfolio Edition

Paul Serban

AI & full-stack engineer · agentic platforms · distributed systems

← Back to portfolio

Featured

On-Chain Invoice Financing

1st place DeFi + Best Business Model - Comets of Web3 * Sui Foundation

Role: Team lead (SUInergy · 4 engineers)

  • #defi
  • #move
  • #next.js
  • #rust
  • #sui

Problem

Invoice financing is slow, opaque, and intermediary-heavy - SMEs wait 30-90 days for cash while factoring stays paperwork-bound and hard to audit.

Approach

Architected a Sui-native invoice lifecycle (Move objects + escrow + treasury) and shipped a Next.js dApp with marketplace, business/investor dashboards, and oracle-backed settlement.

Outcome

1st place in the DeFi track and Best Business Model at the Sui Foundation * Comets of Web3 hackathon, with a working MVP on Sui testnet.

result
1st DeFi + Best Model
duration
3 days
team_size
4 engineers
View code Live demo

Problem

Traditional invoice factoring is a cash-flow tax on SMEs. Suppliers wait 30-90 days for buyers to pay, while intermediaries take days to approve financing, charge opaque discounts, and leave weak audit trails - including double-financing risk from paper-based processes.

We set out to prove that receivables could be minted as first-class on-chain assets: tradeable at a transparent discount, settled with cryptographic attestations, and shippable to a production-viable standard under hackathon time pressure.

Solution

ChainInvoice (team SUInergy) turns supplier invoices into shared Sui objects with a verifiable lifecycle - Created → Ready → Financed → Paid - so suppliers get early liquidity and financiers earn short-duration yield backed by real receivables.

Sui's object model was a deliberate fit: each invoice is a living digital asset whose ownership, financing state, and settlement evidence evolve on-chain, rather than being reconstructed from account balances and event logs.

Actors & entities

ActorResponsibility
SupplierCreates the on-chain invoice and receives discounted proceeds when a financier funds it
FinancierBrowses the marketplace, funds Ready invoices at a discount, receives face value on settlement
BuyerDeposits escrow collateral, then settles the financed invoice at maturity
Oracle / VerifierSigns issuance and payment attestations - the trust bridge for off-chain payment confirmation
Platform adminOperates treasury / fee configuration and governance surfaces

Lifecycle

flowchart LR
    Tokenize["1 Tokenize — Supplier mints Invoice"]
    Collateralise["2 Collateralise — Buyer pays escrow, status Ready"]
    Finance["3 Finance — Financier funds at discount, status Financed"]
    Settle["4 Settle — Buyer / oracle pays, proceeds + fees"]

    Tokenize --> Collateralise --> Finance --> Settle
  1. Tokenize - Supplier mints an Invoice via the factory; buyer info and document references stay hashed / off-chain where possible.
  2. Collateralise - Buyer pays escrow so the invoice becomes Ready for the marketplace.
  3. Finance - Financier funds the invoice at face_value * (1 - discount_bps); payment transfers to the supplier; status becomes Financed.
  4. Settle - Buyer (or oracle-attested flow) pays the invoice; smart contracts distribute proceeds to the financier and collect platform fees into the treasury.

Approach

As team lead for four engineers, I owned end-to-end architecture and delivery across contracts, dApp surfaces, and the oracle trust model:

Stack

LayerChoices
On-chainSui, Move
AppNext.js, TypeScript, Tailwind, wallet kit
Off-chainOracle signing API routes, document hash / IPFS-ready storage
DeploySui testnet + Vercel

What shipped

In three days we delivered a working MVP, not a slide deck:

Outcome

1st place - DeFi track and Best Business Model at the Sui Foundation * Comets of Web3 hackathon. The build validated that RWA-style invoice factoring can be expressed cleanly on Sui's object-centric model under extreme time pressure - with a live demo on testnet and an auditable contract surface.

Try it out · Code