This document addresses common questions about the Invoice Liquidity Network (ILN). For more in-depth technical details, please refer to our Architecture and Developer Quickstart guides.
The ILN is a two-sided decentralized protocol built on Stellar's Soroban smart contracts. It acts as a trustless escrow connecting invoice holders (SMEs, freelancers) who need early liquidity with liquidity providers (LPs) who fund invoices at a discount. All payment terms are strictly enforced on-chain. For a detailed breakdown of the money flow, see our Architecture.
The protocol is designed for freelancers, small to medium-sized enterprises (SMEs), payers (clients), and liquidity providers (LPs). Anyone with a compatible Stellar wallet can interact with the smart contracts. See our Access Control guide for details on roles and authentication.
When an invoice is submitted, it enters a Pending state. Once funded by an LP, the funds are routed to the freelancer, and the invoice becomes Funded. The smart contracts hold state and route final payments when the payer settles the debt, ensuring trustless execution. Read more in the Architecture documentation.
Yes, ILN is fully decentralized with no backend server controlling state transitions. All transitions are driven by signed on-chain invocations and governed by the iln_governance contract. Discover how proposals and voting work in the Governance guide.
As a permissionless protocol on the Stellar network, the ILN smart contracts do not enforce geographic restrictions. However, users must ensure they comply with their local jurisdictions regarding cryptocurrency usage and taxation. For compliance tools, you might explore integrating an Oracle.
Freelancers can submit an invoice by calling the submit_invoice function on the invoice_liquidity contract. You'll need to specify the invoice amount, expected payment date, and the requested discount rate. You can find hands-on examples in the First Invoice Tutorial.
The protocol parameters, including minimum and maximum invoice amounts, are controlled dynamically via the on-chain governance system. This ensures the network can adapt to varying liquidity and economic conditions. Check the current parameters by reading the Governance documentation.
If your invoice does not attract an LP within a reasonable time, it remains in the Pending state. You have the option to cancel it or leave it open for future funding. The Contract ABI details the cancel_invoice function used for this purpose.
Yes, you can cancel an invoice as long as it is still in the Pending state and has not been funded by an LP. Once it is partially or fully funded, the invoice is locked into the escrow terms. Refer to the Contract ABI for execution details.
A high reputation score can grant you a reputation-based discount bonus, making your invoices more attractive to LPs or allowing you to retain more principal. The system tracks your successful on-chain history and adjusts your score dynamically. Learn about the scoring formula in the Reputation Model.
LPs fund invoices at a discount (e.g., funding 90 USDC for a 100 USDC invoice). When the payer settles the full invoice amount, the LP receives their principal plus the yield (the 10 USDC difference). The exact payout logic is explained in the Architecture document.
If a payer fails to settle the invoice by the due date, the invoice may default. In such cases, the LP absorbs the loss, though future protocol upgrades may introduce insurance or fractional recovery mechanisms. Please review the Threat Model for a comprehensive list of risks.
Funds are locked in the escrow contract until the payer calls mark_paid or the invoice undergoes a formal default or dispute resolution. There is no premature withdrawal for LPs to ensure the freelancer has guaranteed liquidity. See the Events page to learn how to track settlement.
The protocol supports transitioning an invoice to a PartiallyFunded state if the LP does not cover the full requested amount. This allows multiple LPs to pool resources for larger invoices. You can test this flow using our SDK Integration Guide.
Beyond standard yield, LPs may receive additional token rewards distributed via the iln_distribution contract to bootstrap network liquidity. These incentives are tied to the governance token. Details on claiming rewards are available in the Governance guide.
Paying on-chain provides an immutable, transparent, and instantly verifiable proof of payment. It also builds your on-chain reputation, which can lead to better terms for the freelancers you work with. The technical flow is outlined in the Architecture document.
If the delivered work is unsatisfactory, payers or freelancers can trigger a dispute state, halting automated settlement. The resolution process is managed on-chain, often requiring a designated arbiter or governance vote. Read about the Disputed state in the Contract ABI.
Payers call the mark_paid function on the invoice_liquidity contract, transferring the required tokens (e.g., USDC) into the escrow, which then automatically routes them to the LP. An example script for this is provided in the First Invoice Tutorial.
Yes, consistent and early payments positively impact your payer reputation score. Protocol reputation is tracked by invoice_liquidity (the source of truth for funding gates, defaults, and appeals). The separate reputation_bonus contract maintains its own counters only for invoices submitted through that module — the two stores are intentionally independent (see ADR-011). Discover the exact weighting in the Reputation Model.
Currently, payments must be made using supported Stellar network tokens (such as USDC or XLM). However, many ecosystem wallets and anchors provide seamless fiat on-ramps to convert traditional currency to USDC instantly. Check the Multi-Token Support guide for details.
ILN is compatible with any Stellar wallet that supports Soroban smart contract invocations, such as Freighter. We recommend using our official SDK to easily integrate wallet connections into your frontend. Examples can be found in the SDK Usage Guide.
The contracts primarily support Stellar Asset Contracts (SAC) representing stablecoins like USDC and native XLM. The list of allowed tokens is governed by the invoice_liquidity contract. You can review the token configuration in the Multi-Token Support document.
Currently, ILN is extensively tested and deployed on the Stellar Testnet for developer integration and testing. Mainnet deployment will follow after comprehensive security audits. You can find testnet contract IDs in the Developer Quickstart.
Because ILN is built on Stellar, transaction fees (gas) for invoking Soroban contracts are exceptionally low, typically costing fractions of a cent in XLM. For a detailed breakdown of resource consumption, refer to our Benchmarks.
Developers can use our @iln/sdk NPM package, which provides heavily typed TypeScript wrappers for all contract functions. We provide complete setup and usage examples in the SDK Integration Guide.