> ## Documentation Index
> Fetch the complete documentation index at: https://docs.eco.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Superfluid (superfluid)

> Protocol for real-time finance enabling continuous token streams (per-second payments), distributions, and composable Super Tokens.

Protocol for real-time finance enabling continuous token streams (per-second payments), distributions, and composable Super Tokens.

| Fact | Value |
| - | - |
| Category | Payments and streaming |
| Family | none |
| Namespace | `Superfluid` on ethereum, optimism, polygon, base, arbitrum |
| Chains | ethereum, optimism, polygon, base, arbitrum |

## What it offers

* **createFlow**: Create a continuous payment stream
* **updateFlow**: Update the flow rate of an existing stream
* **deleteFlow**: Stop/delete a payment stream

## Notes

* Flowrate is in tokens per second (int96) - e.g. 1e18 / (30 \* 86400) for \~1 token/month
* Uses Super Tokens - wrapped ERC-20s with streaming capability (wrap before streaming)
* The CFAForwarder has one address on every chain; the Host's address differs per chain
* CFAForwarder is the simplified interface; host is the core protocol contract
* Streams are continuous - balance updates every second without transactions
* Sender must maintain sufficient Super Token balance; otherwise stream gets liquidated
* userData allows passing arbitrary data for composability with other contracts

## Its names in a program

On Ethereum, `Superfluid` is a namespace: its contracts need no import.

```ts theme={null}
function main() {
  // Ethereum's cfaForwarder, `0xcfA132E353cB4E398080B9700609bb008eceB125`.
  require(Superfluid.CFAForwarder != 0);
}
```

## Deployments

| Chain | Contract | Address | In a program |
| - | - | - | - |
| [Ethereum](https://docs.eco.com/sauce-sdk/reference/chains/ethereum.md) | cfaForwarder | `0xcfA132E353cB4E398080B9700609bb008eceB125` | `Superfluid.CFAForwarder` |
| [Ethereum](https://docs.eco.com/sauce-sdk/reference/chains/ethereum.md) | host | `0x4E583d9390082B65Bef884b629DFA426114CED6d` | `Superfluid.Host` |
| [Optimism](https://docs.eco.com/sauce-sdk/reference/chains/optimism.md) | cfaForwarder | `0xcfA132E353cB4E398080B9700609bb008eceB125` | `Superfluid.CFAForwarder` |
| [Optimism](https://docs.eco.com/sauce-sdk/reference/chains/optimism.md) | host | `0x567c4B141ED61923967cA25Ef4906C8781069a10` | `Superfluid.Host` |
| [Polygon](https://docs.eco.com/sauce-sdk/reference/chains/polygon.md) | cfaForwarder | `0xcfA132E353cB4E398080B9700609bb008eceB125` | `Superfluid.CFAForwarder` |
| [Polygon](https://docs.eco.com/sauce-sdk/reference/chains/polygon.md) | host | `0x3E14dC1b13c488a8d5D310918780c983bD5982E7` | `Superfluid.Host` |
| [Base](https://docs.eco.com/sauce-sdk/reference/chains/base.md) | cfaForwarder | `0xcfA132E353cB4E398080B9700609bb008eceB125` | `Superfluid.CFAForwarder` |
| [Base](https://docs.eco.com/sauce-sdk/reference/chains/base.md) | host | `0x4C073B3baB6d8826b8C5b229f3cfdC1eC6E47E74` | `Superfluid.Host` |
| [Arbitrum One](https://docs.eco.com/sauce-sdk/reference/chains/arbitrum.md) | cfaForwarder | `0xcfA132E353cB4E398080B9700609bb008eceB125` | `Superfluid.CFAForwarder` |
| [Arbitrum One](https://docs.eco.com/sauce-sdk/reference/chains/arbitrum.md) | host | `0xCf8Acb4eF033efF16E8080aed4c7D5B9285D2192` | `Superfluid.Host` |

## ABI

### `CFAForwarderABI`

`import CFAForwarderABI from "./protocols/superfluid/CFAForwarderABI.json";` Speaks for: cfaForwarder.

* `createFlow(address token, address sender, address receiver, int96 flowrate, bytes userData) returns (bool)`
* `updateFlow(address token, address sender, address receiver, int96 flowrate, bytes userData) returns (bool)`
* `deleteFlow(address token, address sender, address receiver, bytes userData) returns (bool)`

## Next steps

* [Protocols](https://docs.eco.com/sauce-sdk/reference/protocols.md): the other protocols, by what they do.
* [Protocols and tokens](https://docs.eco.com/sauce/names.md): calling a contract by its namespace, or through its ABI.
* [Glossary](https://docs.eco.com/sauce/glossary.md): the words these pages use, in plain terms.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.