EcosystemNFTsDocs

Footer

Xchange

  • Swap
  • Liquidity
  • Loans
  • Fund
  • Vote

Tokens

  • X7R
  • X7DAO
  • X7D
  • X7101-X7105

Explore

  • Dashboard
  • Guides
  • Integration
  • Whitepaper
  • Breakdowns
  • Onchains
  • FAQs

Community

  • Telegram
  • Twitter
  • Discord
  • Warpcast
  • Blog
  • Links

Permissionless Trustless Decentralized Exchange

Launch your project on Xchange with 10-1000x the initial liquidity across multiple blockchains where anyone can Swap, Borrow and Lend!

X7 Finance·Trust No One. Trust Code. Long Live DeFi.
  • Telegram
  • Twitter
  • Discordś
  • Warpcast
  • YouTube
  • Reddit
  • GitHub
  • Pioneer 1488 avatar
    Guides
    View
  • Pioneer 1488 avatar
    Integration
    View
  • Pioneer 1488 avatar
    Whitepaper
    View
  • Pioneer 1488 avatar
    Breakdowns
    View
  • Pioneer 1488 avatar
    Onchains
    View
  • Pioneer 1488 avatar
    FAQ
    View
    • Intro

Initial Liquidity Loan Term

Read-Only Functions

ownerOf

function ownerOf(uint256 tokenId) external view returns (address owner)

Retrieves the owner of a given token ID.

liquidationAmount

function liquidationAmount(uint256 loanID) external view returns (uint256)

Returns the liquidation amount for a specific loan.

loanAmount

function loanAmount(uint256 loanID) external view returns (uint256)

Returns the original loan amount for a specific loan.

principalAmountPaid

function principalAmountPaid(uint256 loanID) external view returns (uint256);

minimumLoanAmount

function minimumLoanAmount() external view returns (uint256)

Returns the minimum allowed loan amount.

maximumLoanAmount

function maximumLoanAmount() external view returns (uint256)

Returns the maximum allowed loan amount.

minimumLoanLengthSeconds

function minimumLoanLengthSeconds() external view returns (uint256)

Returns the minimum duration of a loan in seconds.

maximumLoanLengthSeconds

function maximumLoanLengthSeconds() external view returns (uint256)

Returns the maximum duration of a loan in seconds.

getPrincipalDue

function getPrincipalDue(uint256 loanID, uint256 asOf) external view returns (uint256)

Returns the principal amount due for a specific loan as of a given time.

getPremiumsDue

function getPremiumsDue(uint256 loanID, uint256 asOf) external view returns (uint256)

Returns the premium amount due for a specific loan as of a given time.

getTotalDue

function getTotalDue(uint256 loanID, uint256 asOf) external view returns (uint256)

Returns the total amount due (both principal and premiums) for a specific loan as of a given time.

getRemainingLiability

function getRemainingLiability(uint256 loanID) external view returns (uint256)

Returns the remaining liability for a specific loan.

getPremiumPaymentSchedule

function getPremiumPaymentSchedule(uint256 loanID) external view returns (uint256[] memory, uint256[] memory)

Retrieves the premium payment schedule for a specific loan.

getPrincipalPaymentSchedule

function getPrincipalPaymentSchedule(uint256 loanID) external view returns (uint256[] memory, uint256[] memory)

Retrieves the principal payment schedule for a specific loan.

isComplete

function isComplete(uint256 loanID) external view returns (bool)

Checks if a specific loan has been completed or not.

getOriginationAmounts

function getOriginationAmounts(uint256 loanAmount) external view returns (uint256 loanAmountRounded, uint256 originationFee)

Returns the rounded loan amount and the origination fee for a given loan amount.

getQuote

function getQuote(uint256 loanAmount) external view returns (uint256 loanAmountRounded, uint256 originationFee, uint256 totalPremium)

Provides a quote for a given loan amount, detailing the rounded loan amount, origination fee, and total premium.

getDiscountedQuote

function getDiscountedQuote(uint256 loanAmount_, uint256 premiumFeeModifier, uint256 originationFeeModifier) external view returns (uint256 loanAmountRounded, uint256 originationFee, uint256 totalPremium)

Provides a discounted quote for a given loan amount based on provided premium and origination fee modifiers.

State-Changing Functions

transferFrom

function transferFrom( address from, address to, uint256 tokenId ) external

Transfers a specific token from one address to another.

originateLoan

function originateLoan( uint256 loanAmount, uint256 originationFee, uint256 loanLengthSeconds_, uint256 premiumFeeModifierNumerator_, uint256 originationFeeModifierNumerator_, address receiver, uint256 tokenId ) external payable

Originate a new loan with the given parameters.

recordPrincipalRepayment

function recordPrincipalRepayment(uint256 loanID, uint256 amount) external returns (uint256 premiumPaid, uint256 principalPaid, uint256 refundAmount, uint256 remainingLiability)

Records a principal repayment for a specific loan and returns details about the repayment.

recordPayment

function recordPayment(uint256 loanID, uint256 amount) external returns (uint256 premiumPaid, uint256 principalPaid, uint256 refundAmount, uint256 remainingLiability)

Records a payment for a specific loan and returns details about the payment.

interface IX7InitialLiquidityLoanTerm { function ownerOf(uint256 tokenId) external view returns (address owner); function transferFrom( address from, address to, uint256 tokenId ) external; function originateLoan( uint256 loanAmount, uint256 originationFee, uint256 loanLengthSeconds_, uint256 premiumFeeModifierNumerator_, uint256 originationFeeModifierNumerator_, address receiver, uint256 tokenId ) external payable; function minimumLoanAmount() external view returns (uint256); function maximumLoanAmount() external view returns (uint256); function minimumLoanLengthSeconds() external view returns (uint256); function maximumLoanLengthSeconds() external view returns (uint256); function getPrincipalDue(uint256 loanID, uint256 asOf) external view returns (uint256); function getPremiumsDue(uint256 loanID, uint256 asOf) external view returns (uint256); function getTotalDue(uint256 loanID, uint256 asOf) external view returns (uint256); function getRemainingLiability(uint256 loanID) external view returns (uint256); function getPremiumPaymentSchedule(uint256 loanID) external view returns (uint256[] memory, uint256[] memory); function getPrincipalPaymentSchedule(uint256 loanID) external view returns (uint256[] memory, uint256[] memory); function isComplete(uint256 loanID) external view returns (bool); function getOriginationAmounts(uint256 loanAmount) external view returns (uint256 loanAmountRounded, uint256 originationFee); function getQuote(uint256 loanAmount) external view returns (uint256 loanAmountRounded, uint256 originationFee, uint256 totalPremium); function getDiscountedQuote(uint256 loanAmount_, uint256 premiumFeeModifier, uint256 originationFeeModifier) external view returns (uint256 loanAmountRounded, uint256 originationFee, uint256 totalPremium); function recordPrincipalRepayment(uint256 loanID, uint256 amount) external returns (uint256 premiumPaid, uint256 principalPaid, uint256 refundAmount, uint256 remainingLiability); function recordPayment(uint256 loanID, uint256 amount) external returns (uint256 premiumPaid, uint256 principalPaid, uint256 refundAmount, uint256 remainingLiability); function liquidationAmount(uint256 loanID) external view returns (uint256); function loanAmount(uint256 loanID) external view returns (uint256); function principalAmountPaid(uint256 loanID) external view returns (uint256); }
Next
Intro →

-

  • Pioneer 1488 avatar
    Guides
    View
  • Pioneer 1488 avatar
    Integration
    View
  • Pioneer 1488 avatar
    Whitepaper
    View
  • Pioneer 1488 avatar
    Breakdowns
    View
  • Pioneer 1488 avatar
    Onchains
    View
  • Pioneer 1488 avatar
    FAQ
    View

On this page

  1. Read-Only Functions

    1. ownerOf
    2. liquidationAmount
    3. loanAmount
    4. principalAmountPaid
    5. minimumLoanAmount
    6. maximumLoanAmount
    7. minimumLoanLengthSeconds
    8. maximumLoanLengthSeconds
    9. getPrincipalDue
    10. getPremiumsDue
    11. getTotalDue
    12. getRemainingLiability
    13. getPremiumPaymentSchedule
    14. getPrincipalPaymentSchedule
    15. isComplete
    16. getOriginationAmounts
    17. getQuote
    18. getDiscountedQuote
  2. State-Changing Functions

    1. transferFrom
    2. originateLoan
    3. recordPrincipalRepayment
    4. recordPayment