# Set up staking in the UI

You can set up staking for Cardano and Tezos accounts.

You cannot set up staking for Polkadot accounts using the UI. To set up Polkadot for staking, see [Set up Polkadot staking with the API](/products/custody/accounts-and-assets/staking/polkadot-api) in the Ripple Custody API docs.

## Set up Cardano staking in the UI

To participate in staking operations on Cardano, you need to perform the following operations:

- Register for staking
- Delegate staking to a stake pool


Once you are registered, you can do the following:

- Withdraw staking rewards
- Unregister for staking


To set up staking on Cardano:

1. Navigate to **Transactions**.
2. Click **Transaction order**.
3. Select the source account.
4. Select a Cardano ledger.
5. Click **Staking**.
6. Select the operation type and additional information for the operation:
  - **Register staking**: Register your account for staking.
  - **Delegate staking**: Delegate your staking to a stake pool.
    - Enter the **Pool id** to which to delegate staking.
  - **Unregister staking**: Unregister your account to remove the account from staking participation.
  - **Withdraw rewards**: Withdraw your staking rewards.
    - Enter the amount to withdraw.
7. In the **Fee** section, specify the following fee information:
  - The fee strategy to use to calculate the transaction fees.
  - A maximum fee as a percentage or amount, if required. The maximum fee must take into consideration the fee calculation method for the ledger. The transaction is not broadcast if the fees are higher than this cap.
Ripple Custody displays the estimated fee for the transaction.
[Learn more about how Ripple Custody calculates transaction fees](/products/custody/transactions/reference#fee-strategies-by-ledger)
8. Click **Submit for Approval** and [sign the operation with the app](/products/custody/identity-and-access/authentication/ui-authentication#sign-ui-operations).


The transaction is sent when the intent is successfully executed.

## Delegate Tezos staking in the UI

You can choose to delegate your staking validation rights to other token holders without transferring ownership of the tokens.

### Prerequisites

Before you can perform staking delegation or undelegation from a Tezos account, the account's public key must be revealed on chain.

For more information, see [Reveal Tezos accounts](/products/custody/accounts-and-assets/accounts/ledger-specific-settings/tezos-ui).

To delegate and undelegate staking rights on Tezos:

1. Navigate to **Transactions**.
2. Click **Transaction order**.
3. Select a source account with a public key revealed on-chain.
4. Select a Tezos ledger.
5. Click **Staking**.
6. Select the operation type and account details for the operation:
  - **Delegation**: Delegate your validation rights to another token holder.
    - Enter the account to which to delegate staking.
  - **Undelegation**: Undelegate your validation rights.
7. In the **Fee** section, specify the following fee information:
  - The fee strategy to use to calculate the transaction fees.
  - A maximum fee as a percentage or amount, if required. The maximum fee must take into consideration the fee calculation method for the ledger. The transaction is not broadcast if the fees are higher than this cap.
Ripple Custody displays the estimated fee for the transaction.
[Learn more about how Ripple Custody calculates transaction fees](/products/custody/transactions/reference#fee-strategies-by-ledger)
8. Click **Submit for Approval** and [sign the operation with the app](/products/custody/identity-and-access/authentication/ui-authentication#sign-ui-operations).


The transaction is sent when the intent is successfully executed.