Receivables credit, rebuilt for stablecoin settlement.
Morrow lets a business turn a buyer-accepted invoice into immediate USDC. The business creates a receivable, the buyer confirms the payment obligation, lenders compete to fund it, and repayment settles through an onchain waterfall.
This is an Arc Testnet MVP. It is not a production lending product, investment product, broker, lender, credit underwriter, or mainnet protocol.
| Item | Link |
|---|---|
| Live app | morrow.nikhilraikwar.me |
| Public market | morrow.nikhilraikwar.me/market |
| Demo video | YouTube demo |
| Team video | Nikhil Raikwar introduction |
| Pitch deck | Google Slides |
| Verified contract | Arcscan |
Receivables financing is one of the oldest forms of working capital, but the workflow is still slow: private quotes, manual verification, delayed bank settlement, and reconciliation after payment.
Stablecoin-native infrastructure changes the shape of the product:
- invoices can become programmable payment obligations;
- funding can clear through transparent lender competition;
- escrow, repayment, fees, refunds, and claims can be enforced by contract state;
- businesses, buyers, and lenders can all settle in one money layer.
- The global factoring services market is projected at $4.72T in 2026 and $7.77T by 2034. Fortune Business Insights
- Cross-border B2B stablecoin transactions are projected to grow from $13.4B in 2026 to $5T by 2035. Juniper Research
- Circle reports $72.3B USDC in circulation as of July 27, 2026. Circle
Morrow sits at the intersection of those three shifts: invoice finance, stablecoin settlement, and programmable credit markets.
%%{init: {"theme":"base","flowchart":{"htmlLabels":false,"nodeSpacing":80,"rankSpacing":80,"padding":24},"themeVariables":{"fontFamily":"Arial","fontSize":"18px","primaryTextColor":"#0f172a","lineColor":"#64748b"}}}%%
flowchart TD
A["1. Create receivable"]:::blue
B["2. Buyer accepts"]:::blue
C["3. Open auction"]:::yellow
D["4. Lowest APR bids fill"]:::purple
E["5. USDC advance released"]:::green
F["6. Buyer repays USDC"]:::green
G["7. Waterfall settles"]:::green
A -->|"seller, buyer, amount, due date"| B
B -->|"confirmed obligation"| C
C -->|"lenders bid USDC"| D
D -->|"winning bids selected"| E
E -->|"business gets working capital"| F
F -->|"repayment enters vault"| G
classDef blue fill:#dbeafe,stroke:#2563eb,color:#0f172a,stroke-width:2px;
classDef yellow fill:#fef3c7,stroke:#d97706,color:#111827,stroke-width:2px;
classDef purple fill:#e0e7ff,stroke:#4f46e5,color:#111827,stroke-width:2px;
classDef green fill:#dcfce7,stroke:#16a34a,color:#052e16,stroke-width:2px;
%%{init: {"theme":"base","flowchart":{"htmlLabels":false,"nodeSpacing":90,"rankSpacing":90,"padding":24},"themeVariables":{"fontFamily":"Arial","fontSize":"18px","primaryTextColor":"#0f172a","lineColor":"#64748b"}}}%%
flowchart TD
start(["Created"]):::start
awaiting["Awaiting"]:::state
accepted["Accepted"]:::state
live["Auction"]:::state
funded["Funded"]:::state
partial["Partial repay"]:::state
settled["Settled"]:::done
cancelled["Cancelled"]:::stop
start --> awaiting --> accepted --> live --> funded
funded --> partial --> settled
funded --> settled
awaiting -.-> cancelled
live -.-> cancelled
classDef start fill:#f8fafc,stroke:#475569,color:#0f172a,stroke-width:2px;
classDef state fill:#dbeafe,stroke:#2563eb,color:#0f172a,stroke-width:2px;
classDef done fill:#dcfce7,stroke:#16a34a,color:#052e16,stroke-width:2px;
classDef stop fill:#fee2e2,stroke:#dc2626,color:#7f1d1d,stroke-width:2px;
Morrow is built around Arc and USDC rather than adding stablecoins as an afterthought.
| Layer | How Morrow uses it |
|---|---|
| Arc Testnet | Contract state, public market reads, transaction proofs, USDC-denominated gas |
| Arc USDC | ERC-20 interface for approvals, escrow, bids, repayments, fees, and claims |
| Circle Wallets | Google social login and user-controlled wallet approvals |
| Circle challenges | Explicit user confirmation for each contract action |
| Arcscan | Public proof for contract, deployment, and transaction history |
Arc docs define Arc Testnet as chain ID 5042002, RPC https://rpc.testnet.arc.io, and explorer https://testnet.arcscan.app. Arc USDC has one underlying balance with a native gas interface and an ERC-20 interface at 0x3600000000000000000000000000000000000000.
| Item | Value |
|---|---|
| App | morrow.nikhilraikwar.me |
| Public market | morrow.nikhilraikwar.me/market |
| Demo video | YouTube |
| Team video | YouTube |
| Presentation | Google Slides |
| Network | Arc Testnet |
| Chain ID | 5042002 |
| Contract | 0xB871Cc4Ee16Ae7A1FD1925d36Bbd714A64755e6D |
| Deployment tx | 0xac94f5841769b13a59c1ad974b95bf3e5536cc3b73906bbd0688ff0ce282ac2e |
| USDC | 0x3600000000000000000000000000000000000000 |
- Public, walletless market page backed by Arc reads.
- Circle social login for user-controlled wallets.
- Connected workspaces for business, buyer, and lender flows.
- Contract-backed receivable lifecycle.
- USDC approval, bidding, repayment, refund, and settlement actions through allowlisted Circle challenges.
- Arcscan links for onchain proof.
Morrow never asks for a seed phrase or private key. The browser requests named actions only. The server maps those actions to fixed contract addresses and ABI functions before creating Circle challenges.
Secrets stay server-side:
- Circle API key
- Circle entity secret
- Circle refresh tokens
- deployer private key
See SECURITY.md for the threat model, Arc/Circle handling, and MVP limits.
npm install
npm run devContract tests:
cd contracts
.\tools\foundry\forge.exe test -vvRequired public Arc configuration:
VITE_MORROW_MODE=arc
VITE_ARC_RPC_URL=https://rpc.testnet.arc.io
VITE_ARC_CHAIN_ID=5042002
VITE_MORROW_MARKET_ADDRESS=0xB871Cc4Ee16Ae7A1FD1925d36Bbd714A64755e6DCircle credentials must stay server-side and must not use VITE_ prefixes.
MIT. Built by Nikhil Raikwar.
