
Fixed-rate MUSD loans on Mezo
Doji
Keep your Bitcoin locked.Borrow MUSD anyway.
Fixed rate, fixed date. Pick a Thursday, see exactly what you will owe, and your veBTC keeps its votes and rewards the whole time.
Locked as veBTC on Mezo
Read live: veBTC.supply() and PriceFeed.fetchPrice() on Mezo mainnet
On offer in Doji
lenders' open offers · testnet
Read live: the sum of open offers in CreditMarkets on Mezo testnet
Best fixed rate
Read live: the lowest rate among open offers for the nearest date
Latest block
Mezo testnet · live
Read live: eth_blockNumber every 4 seconds
What Mezo's own FAQ says
Can I use my locked BTC as collateral?
No.Yes.
At the same time. 同時
Mezo's FAQ: veBTC cannot back an MUSD loan without unlocking the BTC first.
With Doji it can. Doji holds the veBTC while the loan is open: the lock keeps running, your votes stay yours, and the rewards are paid to you.
Why the name
Doji, 同時: at the same time.
Dōji means at the same time. Your Bitcoin stays locked and earning while you borrow against it.
A doji is also a candlestick: the day the price opens and closes at the same level. The candlestick chart is credited to the rice traders of Dōjima, where this story starts.
Where futures began
Osaka, 1730. 堂島

Rice for a fixed date.
Dōjima's traders bought and sold rice to be delivered on a fixed date: the first futures market. Prices crossed Osaka by flag, relayed from rooftop to rooftop.
MUSD for a fixed date.
Doji runs one market for each Thursday. Lenders set the rate, borrowers lock it in, and the price comes from Mezo's oracle every 60 seconds.
The first futures exchange. Now for Bitcoin.
How a loan works
One market for every Thursday.
Every loan and every lender's claim is tied to a Thursday, 00:00 UTC. Each Thursday is its own market, so a bad loan in one week never touches another.
- 01
Lenders post offers
A lender sets an amount, a Thursday and a fixed rate. The MUSD waits in the contract until a borrower takes it, and whatever is not taken can be cancelled at any time.
- 02
Borrowers lock and borrow
A borrower hands Doji a veBTC position, or locks BTC in the same step, picks a Thursday and takes the cheapest offers. The MUSD arrives at once, and the amount owed on that date is fixed.
- 03
Repay or roll
Repay any time before the date and the position comes back. Or roll into a later Thursday in one step. The lock keeps running and the votes and rewards stay with the borrower throughout.
- 04
Lenders get paid
After the date, lenders withdraw their share of what has been collected, and the rest as the last loans close. Each lender's claim is a credit unit they can also send to someone else.
Live on Mezo testnet · next four Thursdays
blockIf a loan goes wrong
The Bitcoin covers the debt. Always first.
A loan goes to auction if it becomes unsafe or the date passes unpaid. The position is sold in a falling-price auction that starts at its full value. Lenders are paid what they are owed first, the protocol takes a stated penalty, and the borrower keeps everything else.
Loading
- 1
The price falls from the full value to over hours, then holds.
- 2
It never falls below what is owed while the Bitcoin still covers it, so nobody can buy a position back cheap, and the price rises again if Bitcoin recovers.
- 3
If nobody buys before the lock ends, the lenders receive the Bitcoin itself at the oracle price, and the borrower gets the rest back. There is no forced sale on a thin market.
Proof, not promises
Check every claim yourself.
Verified contracts
LoanManager, CreditMarkets and PassThrough are verified on Mezo's explorer. The contracts cannot be upgraded.
Proven live, 8 of 8
One command locks test Bitcoin, borrows, tries three attacks as a stranger, repays and takes the position back on Mezo testnet.
Read the runReviewed and fixed
An independent review found no critical or high issues. Every finding was fixed with a test that failed before the fix.
Read the findingsTested against Mezo mainnet
Fork tests run Doji against real veBTC positions, the real voters and the real oracle on Mezo mainnet.
See the testsA written rulebook
Every rule the contracts must keep is written down first, from custody to payouts, and each one points to the code that keeps it.
Read the threat modelA keeper anyone can run
A small bot on GitHub starts auctions and settles loans, every few hours in practice. Anyone can call the same functions at any time; the contracts check every condition.
See the keeper
Mezo testnet · block ... · chain 31611