Why would I verify anything?
Because a DeFi protocol is only as honest as the numbers it shows, and on a blockchain you do not have to take those numbers on trust.
- ON CHAINRead live from Recoup's contracts.YOU CAN CHECK IT: FULLY, ON CHAIN
- INDEXEDRebuilt from the contracts' own event logs.YOU CAN CHECK IT: FULLY, ON CHAIN
- DERIVEDWorked out from on-chain figures.YOU CAN CHECK IT: BY REDOING THE SUM
- DEXFIDexFi's own reporting, named in words beside the figure.YOU CAN CHECK IT: ONLY ELSEWHERE
- DEBANKAn outside data service's read of DexFi's treasury.YOU CAN CHECK IT: ONLY ELSEWHERE
- ILLUSTRATIVEAn example, not a reading.YOU CAN CHECK IT: NOT AT ALL
Two more labels mean a figure is not a reading at all:DEMO DATA when a live read failed and a stored placeholder shows, andSYNTHETIC on data made up to show what a screen looks like.
Where are the numbers and addresses?
The Verify screen in the app lists the bond value Recoup is using, where it comes from, the insurance fund, the realised yield history and a command you can run to read the value straight from the chain.
- CURRENT NAVON CHAINlive
- DIVERGENCE FROM DEXFIlive
- INSURANCE FUNDON CHAINlive
- REALISED WEEKLY YIELD PER BOND - LAST 12 WEEKShistory
- TOTAL VALUE LOCKEDON CHAINlive
- DEBT OUTSTANDINGON CHAINlive
- LENDER POOL ASSETSON CHAINlive
- NAV PER BONDON CHAINlive
MORE DETAIL
The Stats screen holds the history: value locked, debt outstanding, every bond value posted, every harvest and every auction. Each figure carries a badge naming its source: indexed from the contracts' event logs, derived from those, or from DexFi or DeBank. The history is served from Recoup's own published data branch, not read live, so you can check its on-chain figures against the chain.
How do I check the bond value Recoup is using?
Read it from Recoup's price contract, the NAV oracle, with one command or one page on a block explorer.
1 · RUN IT
2 · MOVE THE POINT 8 PLACES LEFT
The answer is the bond value in US dollars with 8 decimal places.
3 · COMPARE
They should match. If they do not, the chain is right.
NAV per bond equals the part of DexFi's treasury Recoup can price itself, at full value, plus the rest at DexFi's own figure less a 20% haircut, divided by the bonds outstanding. The example is the oracle's post of 6 October 2026: $29.79.
MORE DETAIL
- Open the Verify screen and find CHECK IT YOURSELF. It gives a
cast callcommand (cast is a free command-line tool for reading blockchains) that asks the oracle for its current value. - Run it. The answer is the bond value in US dollars with 8 decimal places, so move the decimal point 8 places left.
- Compare it with the figure the Verify screen shows. They should match.
The value is NAV, net asset value: what one DexFi Treasury Bond is worth to Recoup. It counts the part of DexFi's treasury Recoup can price itself, plus the rest at DexFi's own figure less a 20% haircut, divided by the number of bonds, and is posted about once a day. A move larger than the oracle allows for the time since the price last changed is held back for at least 12 hours and takes effect only if it is confirmed in a separate step before it expires. See what DexFi is.
How do I check that the weekly yield is real?
Each harvest is a transaction that leaves a public record of how much USDC came in and where it went.
| USDC in totalYield | 100.00 |
|---|---|
| borrowers' debts 55%toBorrowers | 55.00 |
| lenders 25%toLenders | 25.00 |
| insurance fund 10%toInsurance | 10.00 |
| protocol fee 10%toProtocol · takes any rounding remainder | 10.00 |
- 1Anyone can trigger the harvest once bonds pay out.
- 2The contract splits what came in: 55% against borrowers' debts, 25% to lenders, 10% to the insurance fund and 10% as the protocol fee.
- 3The Stats screen lists every harvest with its split.
Has Recoup been audited?
Its lender pool has. 33Labs independently audited the pool's source, where lenders' money sits, in September 2026, and the full report is published. The borrowing, collateral, oracle, harvest and liquidation contracts were outside that review.
AUDITED · THE LENDER POOL
6 contracts- Lender
Pool: in the audit - Credit
Wiring: in the audit - Treasury
Liquidity Source: in the audit - Protocol
Fee Splitter: in the audit - Config: in the audit
- Ltv
Math: in the audit
NOT IN THAT REVIEW · WHAT YOUR LOAN RUNS THROUGH
- Credit
Managerborrowing and its limits - Risk
Paramsthe borrowing limits - Collateral
Vaultholds your bonds - Direct
Call Adapterstakes them in DexFi's farm - NAV
Oracleprices them - Epoch
Harvesterruns the harvest - Liquidation
Auctionruns liquidations
And 4 more outside it, listed on the security page.
- FINDINGS
- 13
- FIXED
- 11
- ACCEPTED RISKS
- 2
MORE DETAIL
The audit covered LenderPool, CreditWiring, TreasuryLiquiditySource, ProtocolFeeSplitter, Config and LtvMath. It did not cover CollateralVault, CreditManager, LiquidationAuction, EpochHarvester, NAVOracle, RiskParams and DirectCallAdapter: the contracts that handle borrowing and its limits, hold and stake your bonds, price them, run the harvest and run liquidations.
The security page gives the scope, the 13 findings (11 fixed and 2 accepted risks, with the commit each fix was verified on) and the report with its SHA-256 hash, a fingerprint of the file, plus the command to check your copy matches.
What can I not verify on-chain?
Anything that depends on DexFi's own reporting, and anything that has not happened yet.
- NOT ON CHAINPart of DexFi's treasury.Some positions cannot be valued from the chain alone, which is why Recoup applies the 20% haircut to that part.
- NOT ON CHAINFuture yield.No one can verify next week's payout. Recoup promises no rate; any estimate, the lender calculator's rough APR included, is built from realised history and labelled as a projection.
- NOT ON CHAINDecisions by key holders.The chain shows what an owner key did, not what it will do. Who holds which controls is in the FAQ and the DexFi guide.