Tellerv2 collateral pricing differs between fixed-price and oracle-priced lending offers
Tellerv2 collateral-backed lending offers can use a lender-defined fixed ratio or an oracle-priced ratio constrained by a stored ceiling. For an oracle-priced offer, the contract compares that ceiling with a route's time-weighted average price, adjusted by its loan-to-value setting. The lower ratio determines how much principal each unit of collateral supports. This pricing applies when accepting a new loan; repayment timing governs default after acceptance. Available lender funding also limits the amount that a borrower can draw.
An oracle-priced offer's stored ceiling limits new borrowing even when the collateral's route-based valuation rises.
The forwarder prices acceptance before the core loan begins
The commitment forwarder applies an offer's collateral terms before the core contract records the accepted loan with its agreed payment obligations. The offer identifies the collateral token, principal token and market. Its configuration supplies the pricing rule, while the market sets
payment cycles, fees and default timing. Loans opened through the Teller Pro offer interface are ordinary
TellerV2
loans.
A fall in collateral value can reduce the size of a new draw without triggering default on an existing collateral-backed loan.
The price ratio runs from collateral to principal
A principal-per-collateral ratio expresses how many units of the borrowed token the offer permits against one unit of the collateral token. A smaller effective ratio requires more collateral for the same principal. Conversely, a larger collateral balance supports more principal only until another borrowing limit intervenes.
TWAP means time-weighted average price. An oracle-priced offer applies its loan-to-value fraction, or LTV, to that route-derived valuation. The stored ceiling and adjusted quote must describe the same token relationship. Raw contract values also include token-decimal scaling, so a raw ratio cannot be read directly as a displayed token price. Teller Pro supports these oracle routes only for ERC-20 collateral. In a Uniswap V3 configuration, the route identifies the pools and averaging interval that supply its valuation. The offer preview exposes this route and its venue, preserving the quote's actual pricing context.
How do oracle-priced and fixed-price offers differ?
An oracle-priced offer uses the lower of its stored principal-per-collateral ceiling and the route's LTV-adjusted TWAP. A fixed-price offer uses its lender-defined ratio without a live oracle adjustment.
Oracle-priced offers
When the adjusted oracle quote binds
When the adjusted TWAP falls below the stored ceiling, the oracle quote controls collateral sizing. Each unit of collateral supports less principal as that quote declines. The offer's
pricing.boundBy
field identifies the binding input.
When the stored ceiling binds
When the adjusted TWAP exceeds the stored ceiling, the ceiling limits principal per collateral. A rising route valuation therefore cannot expand borrowing beyond that stored ratio. Raising the ceiling only changes the effective ratio while the oracle input permits it.
Fixed-price commitments
The fixed-price alternative exposed through Teller Pro uses
principalPerCollateral
or its raw equivalent. The G1 commitment implementation calculates required collateral from its stored ratio and token decimals, rounding upward. That implementation does not add a live oracle constraint to this calculation. A fixed ratio leaves the lender exposed to collateral-price changes that the quote does not track automatically.
Lender funding can bind before collateral does
A wallet's maximum draw also depends on the offer's remaining principal allocation and the lender's available balance and token allowance. Publishing an individual offer leaves principal in the lender's wallet until acceptance. Spending those tokens elsewhere or reducing their allowance can make an otherwise valid commitment impossible to fund.
The wallet-specific quote compares those funding limits with the principal that its collateral supports. Its
terms.limitedBy
field identifies the borrowing constraint. That answers a different question from
pricing.boundBy
, which identifies the active pricing input. More collateral cannot overcome missing lender funds or an exhausted offer allocation.
Price drift can invalidate the quoted collateral minimum
For oracle-priced offers, the contract reads the oracle again at acceptance, so price movement can raise the collateral requirement after the interface produces its quote. Posting exactly the earlier minimum leaves no margin for that increase. The commitment can remain active while the attempted draw fails its updated collateral requirement.
Additional collateral or a smaller principal changes this particular constraint. Neither supplies missing lender funds nor changes market eligibility.
A stored-price update leaves the oracle route unchanged
Updating an oracle-priced offer can change its stored principal-per-collateral ceiling, while the attached route and its LTV retain their existing settings. The Teller Pro update interface refuses route or LTV changes through
update_lending_offer_intent
. Raising the stored ceiling still cannot override a lower oracle quote.
Changing the route or LTV requires offer replacement. The replacement sequence removes the old commitment before publishing the new one. This prevents the old and replacement offers from overlapping against the same wallet. The new commitment receives a new identifier and starts with no accepted principal. Omitted non-pricing fields carry over, including the borrower allowlist. Unless new pricing settings are supplied, an oracle-priced replacement recalculates its ceiling from the current TWAP through a freshly discovered route at the same LTV; a fixed-price replacement keeps its stored price and lack of an oracle.
Match the quote to the intended borrowing amount
The relevant offer quote must match the commitment, network and borrower, with pricing inputs interpreted separately from the limits on available capital.
-
For oracle-priced offers, identify whether
pricing.boundBynames the stored ceiling or the oracle quote. -
Read
requiredCollateralRawwith the collateral token's decimals; it represents base units, not a displayed token balance. -
If
terms.limitedByidentifies lender funding, increasing collateral will not provide the missing principal. - For an oracle-priced offer, allow for the oracle's acceptance-time reading when assessing a draw at the quoted maximum.
- If the intended change affects the route or LTV, distinguish offer replacement from a stored-ceiling update.
Offer-specific interfaces preserve the pricing context
The offer-detail call describes one commitment's pricing and funding, while the wallet-specific quoting call also assesses the prospective borrower's collateral and market eligibility.
get_lending_offer
exposes the offer's active pricing input.
get_lending_offer_borrow_terms
adds borrowing capacity and blockers. The pool-focused
get_borrow_terms
answers a separate question about lender-group pools.
The Teller Pro borrow-intent interface can reduce requested principal when the offer's remaining allocation or the borrower's collateral cannot support it. A request above the lender's funding capacity instead returns a
412
response with
fundablePrincipalRaw
. This distinction prevents a funding shortfall from silently becoming a smaller proposed debt.
The adjusted principal shown in the preview is the proposed loan amount. Acceptance must still satisfy the commitment's pricing and funding conditions.
Popular questions about Tellerv2
Does an offer's minimum interest rate also set its collateral ratio?
The minimum interest rate and collateral ratio govern different terms of a lending offer. The rate sets the interest floor that an accepted loan must meet. The pricing ratio determines how much principal the collateral supports. A lower interest floor does not itself increase borrowing capacity, remove the stored ceiling or change the LTV attached to an oracle-priced route.
Where should collateral approval go when borrowing against an offer?
The Teller Pro ERC-20 offer-borrowing flow requires collateral-token approval for the collateral manager. Its separate market-forwarder permission allows the forwarder to act for the wallet in the selected market on that network. These permissions authorize different operations. Approving the forwarder as a token spender alone does not authorize the collateral manager to pull the collateral required by this flow.
Are lending offers available on every network that runs Tellerv2?
A Tellerv2 deployment does not by itself establish lending-offer support on that network. Offers also require a commitment forwarder. The Teller Pro chain listing exposes this capability through supports.lendingOffers. An oracle-priced offer additionally needs an applicable pricing route. A network's lender pools and individual offers remain separate sources of capital, so a pool listing does not establish offer availability.
Can a lender limit an oracle-priced offer to selected borrowers?
A lender can restrict an offer through its borrower allowlist. An empty list permits unrestricted acceptance at the offer level; removing its last entry therefore opens that offer to other borrowers. Market-level conditions still apply, including borrower attestation where the market requires it. Restricting eligible borrowers changes access to the offer without changing its collateral-pricing formula.
What remains active after a lender cancels a collateral-backed offer?
The deleted commitment cannot fund additional loans, while existing debts continue under their agreed terms. Cancellation also leaves the ERC-20 allowance that authorized the core contract to move principal unchanged. Revoking that allowance is a separate action from deleting the offer.
Updated: