Smart Contracts

Pods is a decentralised non-custodial options protocol where users can participate as issuers (sellers) or executors (buyers). Sellers provide strike asset as collateral to the a contract under certain conditions (strike price and expiration date) and them can sell the minted ERC20 odToken with a premium on a third-party, DEX, CEX or on our own UI. Buyers who acquired that odToken are able to exchange 1 unit of odToken + 1 unit of underlying asset * strike price until expiration date.

The Pods Protocol contracts are open source and all source code can be found on Github. An overview of the contracts is below, with more details for developers in the following pages.

If you need development support, join the #developers channel on our Pods Finance community Discord server.

OptionCore (odToken)

The OptionCore contract contain core properties shared by call and put. It's must be inherited from their parents contracts (codToken / podToken) to be a full used contract. See the odTokens section of the documentation.

podToken

The put tokens orpodToken contracts are EIP-20 / ERC20 tokens, that represent the right of sell the same amount 1:1underlying asset at the strike priceuntil maturity date. (E.g: 1 unit of podToken plus 1 unit of underlying asset gives me the right of exchange for x units ofstrike asset / strike price). This contract contains 5 functions:

  • Depositing strike asset as collateral, and minting podTokens.

  • Burning podTokens if seller wants to exit position before expiration date.

  • Exchange function in case podToken holder wants to exercise his right.

  • Withdraw collateral after expiration date.

codToken

The call tokens orcodToken contracts are EIP-20 / ERC20 tokens, that represent the right of buy the same amount 1:1underlying asset at the strike priceuntil maturity date. (E.g: 1 unit of codToken plus 1 unit * strike price of strike asset (gives me the right of exchange for 1 unit of underlying asset). This contract contains 5 functions:

  • Depositing underlying asset as collateral, and minting codTokens.

  • Burning codTokens if seller wants to exit position before expiration date.

  • Exchange function in case codToken holder wants to exercise his right.

  • Withdraw collateral after expiration date.

odTokenExchange

(coming soon)

The exchangeOdToken will manage selling codTokens/podTokens at partners exchanges, working as an aggregator for finding liquidity. We will provide an UI to interact with this contract.

odTokenFactory

(coming soon)

The odTokenFactory will be responsible for deploying a new codToken / podToken instance, and checking if already exists a deployed contract matching the same 4 parameters:

  • Underlying Asset address

  • Strike Asset address

  • Strike Price

  • Expiration Date

Last updated