Trade card-backed loans on-chain.
SlabFi is a peer-to-peer lending market for tokenized graded trading cards on Solana — Pokémon, Yu-Gi-Oh, sports, One Piece, anything PSA / BGS / CGC slabbed and held in vault. Lend USDC and earn interest. Borrow USDC against your cards without selling them. Settles on-chain in seconds.
Overview
TL;DR
- • Lend USDC, earn interest from people borrowing against their slabbed cards.
- • Borrow USDC against your card without selling — repay on time, get the card back.
- • Optional 24-hour late-repay window (2× interest penalty) if you're late.
- • Don't repay → the lender takes the card. No auctions, no liquidations.
- • 5% fee on interest at repay; 1% claim fee on default. Treasury bound. Admin-tunable.
Connect your wallet
Phantom, Solflare, Backpack — anything Wallet Standard. We never see your seed.
Pick a side
Got USDC? Deposit into your lender escrow on /loans, then post offers. Got cards? Borrow.
What else lives on SlabFi
Catalog explorer
→~36k cards across 121 English Pokémon sets, 1999 → 2026. Search by name, filter by set / variant / rarity / year. Each card has a grade-ladder price page.
Card trades
→Atomic NFT-for-NFT swaps — propose a bundle (up to 5 cards per side), counterparty accepts, both sides clear in one transaction. Optional USDC top-up either direction.
Devnet faucet
→Mint up to 20 test slabs into your wallet to exercise the lend/borrow/trade flow. 24-hour cooldown. Real card identities, devnet receipts.
My collection
→Every slab you hold, sorted by grade. One click into a card opens the market detail with live on-chain offers + borrow-request affordance.
Watchlist
→Track cards you don't own yet. Live price-chart + pop-report data, alerts coming soon.
Referral system
→Every profile gets a unique 6-char invite code. New users who land via your link get attributed to you on first sign-in — points system rolling out next.
How it works
Two-sided order book. Either side can post first; the other side fills. Every position settles atomically on Solana — no off-chain ledger, no custodian holding your USDC or NFTs.
As a Lender
- Deposit USDC into your lender escrow (one-time, on /loans).
- Post an offer against a collection — set principal, rate, term, late-repay window, extensions, optional auto-renew.
- When a borrower takes it, principal moves to them and their card moves into the loan vault.
- On repay: principal + your share of interest land back in your escrow.
- On default: claim the card after the late-repay window closes (1% claim fee).
As a Borrower
- Hit "Lend" in the header to see your cards.
- Click "Borrow against this" on any verified slab.
- Set your minimum principal + maximum rate; lock the card in escrow.
- When a lender fills, USDC arrives in your wallet.
- Repay before the term ends to get the card back. Need more time? Extend (flat fee per extension) or use the late-repay window (2× interest).
Why SlabFi
Three quick takes, depending on where you're coming from.
If you've used eBay or Fanatics
Think of SlabFi as the listing your card doesn't leave. Set terms, accept USDC, pay it back with interest, card never moves out of your custody — until it does, in the worst case where you can't repay.
Unlike a sale, the lender's risk is capped at the loan amount, and your downside is capped at losing the card if you default. No buyer protection drama, no shipping disputes.
If you've used Sharky or Citrus
Same model, scoped specifically to graded TCG / sports cards. Grading metadata (PSA 10 vs PSA 9, BGS 9.5, etc.) makes risk pricing tighter — a Charizard PSA 10 has a much narrower price band than a profile-pic NFT.
Defaults are also less reflexive: floors don't crash because someone listed cheap, since the cards are physically vaulted by the issuer (Beezie, Phygitals, Collector Crypt, Emporium). Slab grade × set × edition is the price anchor, not vibes.
If you're new to all this
You hold a graded card that's been tokenized — a digital receipt for a real card sitting in a PSA-controlled vault. The receipt lives in your wallet on Solana.
SlabFi lets someone send you USDC in exchange for temporarily holding that receipt. You repay USDC (plus a fee); the receipt comes back. Pay late or never, the receipt — and the underlying card — is theirs.
What makes this different
Real-world value backing
Cards trade on eBay, TCGplayer, PSA APR — there's a daily-volume market underwriting every loan. Floors come from RWA aggregates, not on-chain reflexivity.
Peer-to-peer, no pools
You set your terms; you pick your counterparty. No AMM curve dictating rates. Pools are a future feature for passive lenders, optional.
Extensions + late-repay window
Bad week? Pay a flat fee to extend the loan. Missed the deadline? You still have 24 hours at 2× interest. Designed so you don't lose a card to a one-day cash-flow gap.
Stays on-chain, end-to-end
Every USDC movement, every NFT transfer, every default-claim — settled by the on-chain program. No off-chain ledger, no admin who can freeze your position outside the published rules.
Glossary
Plain-English definitions for the terms you'll see in the UI.
- Principal
- The USDC the borrower receives at loan start. Pulled from the lender's escrow vault when a borrower takes the offer.
- Lender escrow
- Per-wallet USDC vault that funds your offers. Deposit once, post unlimited offers; principal is debited only when an offer is taken. Repayments land back here. Withdraw any time.
- Flat-rate interest
- Interest is a fixed percentage of principal for the full term. A 1,000 USDC loan at 10% always owes 1,100 at repay — same total whether you repay tomorrow or on the last day. Matches Sharky / NFTfi convention.
- LTV (loan-to-value)
- Cap on principal as a fraction of the collection's floor. At 50% LTV with a 1,000 USDC floor, max principal is 500. Enforced on-chain at accept time.
- Loan term
- How long you have to repay at the agreed rate. Mid-loan you can extend (paying one extra interest per extension, capped) or wait for the late-repay window. After both, the lender claims.
- Late-repay window
- Optional 24-hour buffer after the loan ends. Repay during it, you owe 2× the original interest as a penalty. Fixed length; toggle on/off at offer creation.
- Loan extension
- Borrower bumps the loan's expiry in exchange for a flat fee equal to one full original interest. Capped per loan by max_extensions (default 2; protocol max 5). Pre-expiry only.
- Auto-renew offer
- Lender flag at offer creation. After each loan from the offer settles, the offer immediately becomes available for a new borrower at the same terms. Lets capital stay committed without re-posting after every cycle.
- Default-claim
- Past the late-repay window (or past the term, if late-repay is off), the lender takes direct custody of the card. The loan closes as defaulted; lender pays a 1% claim fee in USDC.
- Verified Metaplex collection
- Solana NFTs are tagged with a "collection" pointer. The verifiedbit means only the collection authority could have flipped it on. SlabFi only accepts verified collections, so a borrower can't pass off a random NFT as PSA-10 collateral.
- Price feed
- Per-collection floor value, published by an authority bot. Pulls from RWA sources (eBay completed sales, TCGplayer, PSA APR). Stales after 1 hour; admin can refresh from
/admin. - Reputation tier
- Per-borrower trust signal (Bronze → Platinum) computed from on-chain repay history. Cosmetic today; lenders can use it as a soft filter when picking whose borrow request to fill.
Risks
Lending against any asset carries risk. The biggest ones to know:
- Floor crash. If the card's market value drops between loan start and default, the lender ends up with a card worth less than the principal lent. The LTV cap mitigates this but doesn't eliminate it.
- Liquidity. A defaulted card is illiquid — selling means a Magic Eden listing or off-platform deal. Don't lend capital you can't tolerate sitting in collateral form for a while.
- Smart-contract risk. The on-chain program is currently in alpha on Solana devnet. No mainnet deployment, no formal audit yet. Treat everything you do here as a sandbox — devnet USDC and devnet NFTs are not real money.
- Authority risk. Admin can pause the protocol and tune fees, but can't cancel your loans or take USDC outside the published fee schedule. Treasury withdrawals require both admin and treasury keypair signatures.
- Price-feed staleness. If the off-chain price-authority bot stops publishing, the 1-hour staleness gate blocks new loans against affected collections. Existing loans are unaffected.
- Slab integrity. The on-chain receipt is only as good as the vaulting custodian's process. Issuers (Beezie, Phygitals, Collector Crypt, Emporium) all publish their custody arrangements; review those independently.
FAQ
What happens to the card during a loan?
Can I repay early?
Can I extend a loan?
/loans. Cost: one full original interest, flat — same whether you extend by an hour or by the full original term. Only works before the loan ends.What if I'm late?
What if a borrower defaults but the lender never claims?
Where do my fees go?
Why not pools / AMM lending?
Is this audited?
What's the catalog for?
How does the catalog connect to the markets?
/catalog/[id]) resolves to a card identity (a PriceCharting product id). If that identity has a verified Metaplex collection in our registry, the page also shows live on-chain markets — current offers, recent fills, pop reports, your holdings if you have any. So you can go either direction: browse-then-borrow, or market-then-research.What's the faucet?
How do trades work?
What's the orderbook model?
How does the referral system work?
slabfi.app?ref=<yourcode> and new visitors who land via that link have their referred_by column stamped on their profile the moment they sign in. The referral graph powers the upcoming points / leaderboard system — 100 points per referred user today, with loan-volume + loyalty signals folding in over time.What contracts power this?
nft-lending-v3) on Solana. PDAs we issue: LenderEscrow (per-wallet USDC vault), Offer (lender posts collection-scoped terms), BorrowRequest (borrower posts collateral + terms), Loan (active position with collateral and principal vault), PriceFeed (per-collection floor, refreshed by an authority bot), and TradeOffer (P2P card-for-card bundle). Treasury withdrawals require co-signatures from the admin and the treasury keypair. Source available on request.Roadmap
Current build is local-validator only. Mainnet is on the horizon, not the schedule. Order roughly reflects priority.
Community
Devnet milestones, alpha cohort sign-ups, and feedback channels go through the surfaces below. Start with whichever you already use.
Launch announcements, market updates, devnet milestones.
Live chat, support, alpha/beta channels. Best place to ask questions.
Day-to-day help with the app, account questions, anything not urgent.
Press, partnerships, business development.
Responsible-disclosure address for vulnerability reports.
Handles above are reserved while we run on the local validator. They flip live the moment we move to devnet — follow this page or the roadmap above for the announcement.
Security disclosure: Found a vulnerability? Email [email protected] — please don't open a public issue. We'll triage, patch, and credit responsibly.
Built with: Anchor 0.31.1 · Solana 3.x · Metaplex Token Metadata · Next.js 16 · Tailwind v4 · Solana Wallet Adapter · React Query · @coral-xyz/anchor.
Alpha software on Solana devnet. Don't move real funds against this build. Source available on request via the team@ address above; a formal audit precedes any mainnet deployment.