# Partner Fee Collectors

## Overview

Symbiosis automatically charges protocol-level cross-chain fees and deducts gas fees for intermediate chains during cross-chain operations. The fee withholding logic is described in [Symbiosis & Fees](/main-concepts/symbiosis-and-fees.md)

To support partner integrations, Symbiosis also provides **dedicated fee collector contracts**. These contracts allow partners to charge and collect custom partner fees in addition to standard Symbiosis protocol fees.

Partner fee collection is available through two types of fee collectors:

* **General Fee Collector:** used for all cross-chain operations except operations to and from the Bitcoin network. The contract is deployed on the **Symbiosis chain** (the protocol host chain).
* **BTC Fee Collectors:** used for operations to and from the Bitcoin network. The contracts are deployed on **Ethereum, BNB chain, Rootstock, and Citrea.**

## How partner fee collection works

The general flow is:

1. The partner contacts Symbiosis to enable custom fee collection.
2. Symbiosis configures the partner fee recipient address, fee model, and fee value.
3. The partner includes the configured `partnerAddress` in the `SwapRequestSchema` when calling the Symbiosis API.
4. Symbiosis applies the configured partner fee during the cross-chain operation.
5. The partner checks and claims accumulated fees through the Partner dashboard or manually through the fee collector contracts.

If `partnerAddress` is not included in the swap request, no custom partner fee is collected for that operation.

## Collector types

Symbiosis uses different fee collector contracts depending on the route type:

* Use the General Fee Collector for all non-BTC cross-chain operations.
* Use BTC Fee Collectors for operations to or from the Bitcoin network.

## General Fee Collector

The General Fee Collector is used for all cross-chain operations except operations to and from the Bitcoin network.

The contract is deployed on the Symbiosis chain, which is the protocol host chain.

#### Fee Token

Fees collected through the General Fee Collector are accumulated in sTokens, such as sUSDC, sUSDT, sWETH, and other supported synthetic assets.

Symbiosis uses sTokens to facilitate cross-chain operations. Each sToken is a 1:1 pegged representation of an asset on its corresponding native chain and can be unwrapped back to that chain.

For more information, see: [Symbiosis sTokens and Supported Chains](/main-concepts/wrapped-tokens.md)

#### Fee Configuration

The General Fee Collector is administered by the Symbiosis team. To enable custom partner fee collection, partners must contact Symbiosis to configure:

* **Fee recipient address (**`partnerAddress`**)** — the address authorized to withdraw collected fees from the contract.
* **Fee model** — percentage-based, fixed amount, or a combination of both,
* **Fee value** — the actual percentage and/or fixed amount to be charged.

#### Collecting Fees

To apply the configured partner fee during cross-chain operations, the fee recipient address must be included as `partnerAddress` in `SwapRequestSchema` when calling the Symbiosis API.

If `partnerAddress` is omitted or empty, no custom partner fee is collected for that operation.\
\
![](/files/F6cCyRW8HllFLf6lgiW5)

## BTC Fee Collectors

BTC Fee Collectors are used for cross-chain operations to and from the Bitcoin network.

Unlike the General Fee Collector, BTC Fee Collectors are deployed on several EVM-compatible networks that support BTC-related routing.

BTC Fee Collectors are deployed on Ethereum, BNB chain, Rootstock, and Citrea.

#### Fee Token

Fees collected through BTC Fee Collectors are accumulated in syBTC.

syBTC is a 1:1 BTC-pegged token that can be exchanged on EVM-compatible networks or unwrapped back to native Bitcoin.

#### Fee Configuration

BTC Fee Collector contracts are administered by the Symbiosis team.

To enable custom partner fee collection for BTC routes, partners must contact Symbiosis to configure:

* **Fee recipient address (**`partnerAddress`**)** — the address eligible to withdraw collected fees from the contract.
* **Fee model** — percentage-based, fixed amount, or a combination of both,
* **Fee value** — the actual percentage and/or fixed amount to be charged.

#### Collecting Fees

To apply the configured partner fee during swaps to or from BTC, the fee recipient address must be included as `partnerAddress` in `SwapRequestSchema` when calling the Symbiosis API.

If `partnerAddress` is omitted or empty, no custom partner fee is collected for that operation.\
\
![](/files/b6C30k5FKDt0uxA8n5wz)

## Checking and Claiming Fees

Partners can check and claim collected fees in two ways:

* through the Partner dashboard
* manually through the fee collector contracts

### Partner Dashboard

<div align="left"><figure><img src="/files/TbuKOimipiqDdZKwRmsB" alt="" width="563"><figcaption></figcaption></figure></div>

To check and claim fees through the Partner dashboard:

1. Go to <https://explorer.symbiosis.finance/partners>
2. Connect the wallet address that is used to collect fees.
3. Claim fees for each available token.
4. Burn sTokens through the Mint/Burn page: <https://app.symbiosis.finance/bridge>
5. Exchange or burn syBTC token to BTC on at the Swap page: <https://app.symbiosis.finance/swap>

### **Manual method**

Partners can also interact with the fee collector contracts manually.

#### Fee Management Methods

To interact with the fee collector contracts the following methods can be used:

* **`collectedFees()`** – Returns the total fees collected.
* **`claimFee()`** – Withdraws accumulated fees to the configured payout address.

#### Fee Collector Contracts

**General Fee Collector**

General fee collector on the Symbiosis chain: [address](https://symbiosis.calderaexplorer.xyz/address/0x783EE304C54d4658f59EAefb73b32D37ee466e23)

**Important:**&#x20;

Fees collected through the General Fee Collector are accumulated in approximately 120 synthetic assets, or sTokens, on the Symbiosis chain.

Partners may need to call the withdrawal method for each token type with accumulated fees.

After withdrawal, sTokens need to be bridged or unwrapped to their respective native networks if the partner wants to receive the native assets.

**BTC Fee Collectors**

BTC fee collector addresses:

* Ethereum: [address](https://etherscan.io/address/0xb4291b5f2ed122d306afef72a2b0127613ab1eef#readProxyContract)
* BNB chain: [address](https://bscscan.com/address/0xc6a2c8d42086b13a577e1c300663451ae405b767#readProxyContract)
* Rootstock: [address](https://explorer.rootstock.io/address/0xbba322c98601b707cffb98092010e0b95d538bb7)
* Citrea: [address](https://explorer.mainnet.citrea.xyz/address/0xca506793A420E901BbCa8066be5661E3C52c84c2)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.symbiosis.finance/developer-tools/symbiosis-api/partner-fee-collectors.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
