Smart Contracts

Testing environment on StarkNet Goerli

The protocol is based on three infrastructure Smart Contracts that are used to power the entire infrastructure:

  • DAO: Custom ERC20 contract that represents the ownership of the DAO. This contract is also the treasury to which all Trade Init / Minting fees go to.

  • txAsset: Custom ERC721 contract that stores the terms of the asset as a minted NFT. This contract also contains the functionality that allows the buyer to agree to the asset and the NFT is also the receiver of the programmed payment stream.

  • txEscrow: Custom ERC1155 contract that wraps around the ownership of an escrow account.

  • txDharma: Custom ERC20 contract that is non-transferable and mintable. Community members that are in an active trade are able to mint these tokens to their counterpart's wallets or burn them when attributing a negative score.

Additionally, we have a set of ERC20 wrapper contracts that enable all custom streaming and escrow functionality:

  • txFlow: Custom ERC20 contract that wraps around the target token, eg. USDC, and contains the streaming and self-custody functionality. This contract is also extended to attribute a balance to any ERC721 contract.

We have deployed a set of contracts to the StarkNet Goerli testnet in order to test all of the functionality in this document. More on this below.

Goerli Testnet

During this alpha phase, we are deploying a set of test contracts to the Goerli Starknet testnet. The production contract will be deployed at a later date on to mainnet.

⚠️ WARNING! ⚠️ All of the contract addresses below will change as we iterate rapidly during these initial phases. Please keep a look out for changes in these addresses.

Infrastructure Alpha on Goerli Testnet

Flows Alpha on Goerli Testnet

Last updated