> For the complete documentation index, see [llms.txt](https://sonic-ai-works.gitbook.io/sonic-networks-docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://sonic-ai-works.gitbook.io/sonic-networks-docs/documentation/sonic-tokenomics/transfer-and-service-fees.md).

# Transfer & Service Fees

Canonical SONIC fee-domain separation: no Token-2022 transfer tax, explicit product/service fees, Solana network fees and exact atomic quoting.

The canonical SONIC token profile does **not** enable Token-2022 `TransferFeeConfig`.

```
Ordinary SONIC wallet transfer
→ SONIC token-layer fee: 0%
→ Solana network fee: applicable network cost
```

This keeps the base asset composable across wallets, custody, DEX routing and peer-to-peer transfers. Product fees are applied only by the product or protocol that provides the corresponding service.

## Fee-domain separation

| Fee domain                     |          Canonical policy | Applies when                        |
| ------------------------------ | ------------------------: | ----------------------------------- |
| SONIC Token-2022 transfer tax  |         **0% / disabled** | Ordinary token transfer             |
| SONIC Swap service fee         |                    **2%** | Swap routed through SONIC Swap      |
| Marketplace service fee        |        **Product policy** | Applicable marketplace transaction  |
| Checkout/billing fee           | **Quoted product policy** | Applicable checkout or billing flow |
| x402 / MPP / agent-payment fee |   **Mandate/rail policy** | Machine-payment flow                |
| Solana network fee             |              **Variable** | Solana transaction                  |
| Priority fee                   |              **Variable** | Selected/required compute priority  |
| DEX/router/provider fee        |      **Provider-defined** | Third-party execution               |

A transaction may incur multiple domains, but each domain is quoted separately before signature.

## No implicit global fee

Do not describe SONIC as having a universal 2% transfer fee. The **2% value belongs to SONIC Swap service-fee policy**, not to the Token-2022 mint.

Examples:

```
Wallet A → Wallet B
100 SONIC
SONIC protocol transfer tax = 0
```

```
SONIC Swap
quoted input/output
+ 2% SONIC Swap service fee
+ actual Solana network fee
+ disclosed provider/router costs when applicable
```

## Atomic calculation

SONIC uses **9 decimals**. All token and fee amounts use integer atomic units (`u64`/`bigint`/decimal-string), never JavaScript floating point.

Product service fees should be calculated from the immutable quote policy for that transaction, then recorded independently from the underlying token transfer.

## Accounting rule

Service-fee revenue, network fees, router/provider fees and token principal are distinct ledger categories. A base SONIC transfer never creates withheld Token-2022 transfer-fee balances because the canonical token profile does not enable that extension.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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, and the optional `goal` query parameter:

```
GET https://sonic-ai-works.gitbook.io/sonic-networks-docs/documentation/sonic-tokenomics/transfer-and-service-fees.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
