Import
contractsClient.js re-exports from financingClient.js under these aliases.
Initialization
contract_version: "shycontracts-v1" and a financing block with return_basis, remittance_source_mode, funding_mode, and transfer_layer: "shywire".
Return basis modes
return_basis | Description |
|---|---|
project_profit | Remittances are a share of reported project profit |
customer_revenue | Remittances are matched to incoming customer revenue |
eligible_income | Remittances are matched to a defined income category |
buildFinancingRemittance validates the matchedAmount field and which remittance_source_mode is valid.
Funding modes
funding_mode | Description |
|---|---|
single_lender | One capital provider per contract |
staggered_waitlist | Investors join sequentially as tranches are filled |
shared_financing | Multiple investors share a single contract with defined allocations |
Contract lifecycle
1. Register contract
contractHash is the on-chain commitment to the off-chain terms. An auditor with the off-chain terms can verify that contractHash matches the on-chain record while observers learn only that a financing event of the committed amount occurred.
2. Activate contract (goal-gated)
Required whengoal_gated: true. Signals that the fundraising goal has been met and disbursement should proceed.