# Overview (/docs/risex/contracts/contract-abi)

import { Callout } from 'fumadocs-ui/components/callout';

# Contract ABIs

These artifacts are the Solidity **JSON ABIs** for the main RISEx protocol contracts. Use them with [viem](https://viem.sh/), [ethers](https://docs.ethers.org/), or any library that accepts a standard Ethereum ABI array.

Contract **addresses** for RISE Testnet are listed on the [Deployments](/docs/risex/contracts/deployments) page. Pair each address with the ABI for the matching contract before you encode calls or deploy integrations.

<Callout type="info">
  Full ABIs are served as static JSON under `/risex/abis/` instead of being pasted into MDX. That keeps documentation pages fast to load and avoids build-time memory issues while remaining easy to copy into your own repo or pipeline.
</Callout>

## Download all ABIs

Use the button below to fetch every ABI file in one step. Your browser downloads a single ZIP archive (`risex-contract-abis.zip`) containing the same JSON files as in this documentation tree.

<DownloadAllRisexAbisButton />

## Contracts

| Contract                                                                                             | Role                                                              | ABI (JSON)                                                                           |
| ---------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------- | ------------------------------------------------------------------------------------ |
| [AccountRegistry](/docs/risex/contracts/contract-abi/account-registry)                               | Address-to-user registration and `userId` resolution              | [AccountRegistry.json](/risex/abis/AccountRegistry.json)                             |
| [CollateralManager](/docs/risex/contracts/contract-abi/collateral-manager)                           | Collateral balances, margin, and related accounting               | [CollateralManager.json](/risex/abis/CollateralManager.json)                         |
| [ERC20](/docs/risex/contracts/contract-abi/erc20)                                                    | Fungible token interface (collateral and quoted assets)           | [ERC20.json](/risex/abis/ERC20.json)                                                 |
| [FeeManager](/docs/risex/contracts/contract-abi/fee-manager)                                         | Fee parameters and fee-related flows                              | [FeeManager.json](/risex/abis/FeeManager.json)                                       |
| [FundingRate](/docs/risex/contracts/contract-abi/funding-rate)                                       | Funding settlement, premium index, and per-market funding clamps  | [FundingRate.json](/risex/abis/FundingRate.json)                                     |
| [OrdersManager](/docs/risex/contracts/contract-abi/orders-manager)                                   | Order placement, updates, and coordination with matching          | [OrdersManager.json](/risex/abis/OrdersManager.json)                                 |
| [PerpsManager](/docs/risex/contracts/contract-abi/perps-manager)                                     | Perpetual positions, markets, and funding-related logic           | [PerpsManager.json](/risex/abis/PerpsManager.json)                                   |
| [RISExAccessManagerUpgradeable](/docs/risex/contracts/contract-abi/risex-access-manager-upgradeable) | Role-based access control (upgradeable deployment)                | [RISExAccessManagerUpgradeable.json](/risex/abis/RISExAccessManagerUpgradeable.json) |
| [RISExAuthorization](/docs/risex/contracts/contract-abi/risex-authorization)                         | Permits, session keys, operator allowances, and permission checks | [RISExAuthorization.json](/risex/abis/RISExAuthorization.json)                       |
| [RISExOracle](/docs/risex/contracts/contract-abi/risex-oracle)                                       | Price and oracle surface for the protocol                         | [RISExOracle.json](/risex/abis/RISExOracle.json)                                     |
| [RISExUniversalRouter](/docs/risex/contracts/contract-abi/risex-universal-router)                    | Composed execution and router entrypoints                         | [RISExUniversalRouter.json](/risex/abis/RISExUniversalRouter.json)                   |

## Suggested workflow

1. Confirm **chain** and **contract addresses** from [Deployments](/docs/risex/contracts/deployments).
2. Add the matching **ABI JSON** to your project (copy from this site, use the ZIP above, or vendor the files from `public/risex/abis/` in the docs repository).
3. Instantiate clients (for example `getContract` in viem or `Contract` in ethers) and encode calls with your library’s helpers.

For higher-level signing and session flows, see [Contract interface](/docs/risex/contracts/contract-interface/authorization) and the rest of the RISEx documentation.
