ERC20Loans
ERC20Loans Contract
Constructor
Parameter
Type
Description
_blake2b
address
BLAKE2b contract address
Properties
Property
Type
Description
loanIdCounter
uint256
Loans count
userLoans
mapping(address => uint256[])
Loans of each account
userLoansCount
mapping(address => uint256)
Loan count of each account
Functions
createLoanOffer
Creates a loan offer
Parameters
Parameter
Type
Description
_secretHashB1
bytes32
The hash of secretB1
_filLender
bytes
Lender's FIL address
_principal
uint256
The principal (amount) of the loan
_interest
uint256
The contract address of the token to lock
_contractAddress
address
The contract address of the ERC20 token
_loanExpirationPeriod
uint256
Loan length
approveRequest
Creates a loan offer
Parameters
Parameter
Type
Description
_loanId
uint256
The ID of the loan
_borrower
address
The address of the borrower
_filBorrower
bytes
The borrower's FIL address
_secretHashA1
bytes32
The lender's hashed secretA1
_paymentChannelId
bytes32
The ID of the FIL Payment Channel
_collateralAmount
uint256
The FIL amount used as collateral
withdraw
Withdraws the loan's principal
Parameters
Parameter
Type
Description
_loanId
uint256
The ID of the loan
_secretA1
bytes32
The borrower's secretA1
payback
Paybacks loan's principal with interests
Parameters
Parameter
Type
Description
_loanId
uint256
The ID of the loan
acceptRepayment
Accepts the borrower's repayment of the principal
Parameters
Parameter
Type
Description
_loanId
uint256
The ID of the loan
_secretB1
bytes
Lender's secretB1
refundPayback
Refunds the payback amount
Parameters
Parameter
Type
Description
_loanId
uint256
The ID of the loan
cancelLoan
Cancels the loan before the borrower withdraws the loan's principal
Parameters
Parameter
Type
Description
_loanId
uint256
The ID of the loan
_secretB1
bytes
Lender's secretB1
fetchLoan
Gets information about a loan
Parameters
Parameter
Type
Description
_loanId
uint256
The ID of the loan
modifyAcceptExpirationPeriod
Changes accept expiration period
Parameters
Parameter
Type
Description
_data
uint256
The new accept expiration period
Events
CreateLoanOffer
Emmited when a loan offer is published
Parameters
Parameter
Type
Description
loanId
uint256
The ID of the loan
lender
address
Lender's address
principal
uint256
The principal (amount) of the loan
token
address
The contract address of the token
ApproveRequest
Emmited when a loan request is approved
Parameters
Parameter
Type
Description
loanId
uint256
The ID of the loan
borrower
address
Borrower's address
filBorrower
bytes
The principal (amount) of the loan
secretHashA1
bytes32
The borrower's FIL address
paymentChannelId
bytes32
The ID of the FIL Payment Channel
collateralAmountaddress
uint256
The FIL amount used as collateral
Withdraw
Emmited when a loan's principal is withdrawn.
Parameters
Parameter
Type
Description
loanId
uint256
The ID of the loan
borrower
address
Borrower's address
amount
uint256
Principal to withdraw
token
address
The contract address of the token
secretA1
bytes
The borrower's secretA1
Payback
Emmited when a loan's principal is paid back.
Parameters
Parameter
Type
Description
loanId
uint256
The ID of the loan
borrower
address
Borrower's address
amount
uint256
Amount to payback
token
address
The contract address of the token
AcceptRepayment
Emmited when a repayment of the principal starts.
Parameters
Parameter
Type
Description
loanId
uint256
The ID of the loan
amount
uint256
Amount to accept
token
address
The contract address of the token
RefundPayback
Emmited when the payback amount is refunded.
Parameters
Parameter
Type
Description
loanId
uint256
The ID of the loan
borrower
address
Borrower's address
amount
uint256
Amount to payback
token
address
The contract address of the token
CancelLoan
Emmited when a loan is cancelled
Parameters
Parameter
Type
Description
loanId
uint256
The ID of the loan
amount
uint256
Amount to payback
token
address
The contract address of the token
secretB1
bytes
Lender's secretB1
Last updated
Was this helpful?