Skip to content

Conversation

@zajck
Copy link

@zajck zajck commented Nov 24, 2025

Updating an existing project, Boson Protocol.

Previously, the adapter was showing only staking on ethereum.

With this PR, we added the TVL calculation, which now includes RWAs tokenised in Boson Protocol and all ERC20 tokens and ETH deposited and locked in the protocol contracts.

Additionally, all chains, where the protocol is deployed, were added to the adapter.

@zajck zajck changed the title Boson protocol TVL calculation Update Boson protocol TVL calculation Nov 24, 2025
@llamabutler
Copy link

The adapter at projects/boson exports TVL:

polygon                   5.33 M
ethereum-staking          523.78 k
staking                   523.78 k
ethereum                  2.04 k
arbitrum                  0.00
base                      0.00
optimism                  0.00

total                    5.33 M 

@waynebruce0x
Copy link
Collaborator

Where on the UI can I make a deposit?

@waynebruce0x waynebruce0x self-assigned this Nov 24, 2025
@zajck
Copy link
Author

zajck commented Nov 24, 2025

@waynebruce0x

The dApp is available at https://bosonapp.io/

As a seller:

  1. You need to create a seller profile first.
  2. Go to "Seller hub"
  3. On the left, choose "Finances"
  4. Deposit any of the tokens currently supported in the dApp
image

As a buyer:

  1. Find an item you'd like to buy.
  2. Click on "Buy with BOSON".
  3. image
  4. This deposits your funds in the protocol. The funds are locked until the exchange is finalised. If everything goes well, the funds are released to the seller. But if a buyer raises a dispute, funds are locked until the final decision is made, and the funds are then distributed to the seller and/or buyer accordingly.

@waynebruce0x
Copy link
Collaborator

Where is this TVL stored? Can we please use erc20:balanceOf() instead?

@zajck
Copy link
Author

zajck commented Nov 25, 2025

There are two contributing factors to TVL:

  1. Tokens deposited in the protocol contract (either by buyers or sellers). These can be obtained with erc20:balanceOf() and I pushed the change that does it. The protocol contract address is 0x59A4C19b55193D5a2EAD0065c54af4d516E18Cb5 on all chains.
  2. On-chain offers which tokenize real world assets. Sellers are obliged to deliver the sold asset if a buyer commits to their offer. These values cannot be obtained with erc20:balanceOf() until someone actually commits to it. We consider the offer price as the locked value. If the offer expires or it is voided, the value is removed from TVL. Once someone commits to it, and if the offer becomes unavailable for further commits, it is also removed from TVL to avoid double-counting, since the value is already captured in (1).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants