Payments & EMI
Trilobyte uses an Equated Monthly Instalment (EMI) model for loan repayments. Each payment is a fixed amount calculated at disbursement, covering both principal and interest.
EMI Calculation
The EMI is calculated using the standard amortisation formula:
Where:
$P$ = Principal (loan amount)
$r$ = Monthly interest rate (annual rate ÷ 12)
$n$ = Number of monthly payments (loan term)
All math is integer-only — Soroban has no floating-point support. Trilobyte uses 10¹² internal precision scaling and ceiling-rounds the final EMI to ensure the borrower always repays at least the full amount owed.
Payment Split
Each payment is split into two pools based on the vault's split ratio:
EMI Pool
Investor yield — proportional to split ratio (e.g. 80%)
Investors via claim_yield
Cash Pool
Borrower operating capital — remainder (e.g. 20%)
Borrower via withdraw_cash
For example, with a split ratio of 80 and a payment of 10,000 USDC (after fees):
8,000 USDC → EMI pool (investor yield)
2,000 USDC → Cash pool (borrower operating capital)
Payment Schedule
Payments are due every 30 days (30/360 day-count convention)
The first payment is due 30 days after disbursement
Each payment advances the
next_duedate by 30 daysThe total number of payments equals the loan term in months
Principal Amortisation
Each EMI payment contains both an interest component and a principal component:
The outstanding principal decreases with each payment. Early payments are interest-heavy, while later payments are principal-heavy — standard amortisation behaviour.
Protocol Fee
A 0.5% protocol fee is deducted from every payment before the split:
Payment received (e.g. 10,000 USDC)
Protocol fee deducted (50 USDC → treasury)
Remainder split by ratio (9,950 USDC → EMI + Cash pools)
Yield Claiming
Investors claim their share of the EMI pool proportionally:
balance= Investor's debt token balancetotal_supply= Total debt token supplyemi_pool= Total accumulated EMI poolalready_claimed= Amount the investor has already claimed
Claims can be made at any time during the Active or FullyRepaid phases.
Token Precision
All amounts use 7 decimal places (Stellar standard). For example:
1 USDC =
10_000_000(10⁷)0.5% fee =
50_000in 7-decimal format
Last updated