From dfbee68d8f14bc2fca534f927a09eec266e174a8 Mon Sep 17 00:00:00 2001 From: GigaHierz Date: Wed, 2 Sep 2026 18:11:20 +0100 Subject: [PATCH 1/2] docs(fee-abstraction): say that the wallet must support CIP-64, and which do MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The overview said fee abstraction "works with any externally owned account (EOA) ... no extra infrastructure needed", which is true of the protocol and reads as "every wallet works". Nothing said that feeCurrency is a field on a CIP-64 transaction, so the wallet signing it has to implement CIP-64. The failure mode was undocumented and is silent: a wallet without support submits a normal transaction, gas is charged in CELO, and nothing errors. A developer sees their feeCurrency ignored with no indication that the wallet, rather than their code or the adapter address, is the cause. Adds the requirement, the failure mode, and a support table for the wallets that are confirmed. Ledger shipped CIP-64 in July 2026 and was absent from the wallets page entirely, so it is added there too. Also disambiguates the existing "Ledger support" field, which records whether a wallet works with a Ledger device — unrelated to CIP-64, and actively confusing beside this question. mint broken-links: success, no broken links found. Refs #2303 Co-Authored-By: Claude Opus 5 (1M context) --- build-on-celo/fee-abstraction/overview.mdx | 26 +++++++++++++++++++++- tooling/wallets/index.mdx | 17 ++++++++++++++ 2 files changed, 42 insertions(+), 1 deletion(-) diff --git a/build-on-celo/fee-abstraction/overview.mdx b/build-on-celo/fee-abstraction/overview.mdx index 8081b6747..599505b88 100644 --- a/build-on-celo/fee-abstraction/overview.mdx +++ b/build-on-celo/fee-abstraction/overview.mdx @@ -24,10 +24,34 @@ Fee abstraction is built into the Celo protocol at the node level — it is not 2. Executes the transaction normally 3. Calls `creditGasFees` to refund unused gas and distribute fees to block producers -This means fee abstraction works with any externally owned account (EOA). No smart contract wallets, no relayers, no extra infrastructure needed. +This means fee abstraction works with any externally owned account (EOA) at the protocol level. No smart contract wallets, no relayers, no extra infrastructure needed. To use an alternate fee currency, set its token or adapter address as the `feeCurrency` property on the transaction object. +## The wallet has to support it too + +The protocol accepts a `feeCurrency` transaction from any account, but **something has to build that transaction**. `feeCurrency` is a field on the CIP-64 transaction type, so the wallet signing it must implement CIP-64. + + + If the user's wallet does not support CIP-64, it submits a standard transaction instead and **gas is paid in CELO. Nothing errors.** Your `feeCurrency` is dropped silently, and a user with no CELO sees the transaction fail for want of gas — with nothing pointing at the wallet as the cause. + + Setting `feeCurrency` in your dApp is necessary but not sufficient. Whether it takes effect is decided by the wallet your user brings. + + +### Wallets with CIP-64 support + +| Wallet | Fee abstraction | Notes | +|---|---|---| +| [MiniPay](/build-on-celo/build-on-minipay/overview) | Yes | Pays gas in whichever supported stablecoin the user holds most of, and [may override](/build-on-celo/build-on-minipay/overview) a `feeCurrency` you set | +| [Valora](https://valora.xyz/) | Yes | Pays transaction fees with stablecoins | +| [Ledger](https://www.ledger.com/) | Yes, since July 2026 | 18 Celo-native assets accepted for gas, via [Ledger Live](https://blog.celo.org/ledger-now-supports-celo-fee-abstraction-unlocking-seamless-stablecoin-gas-payments-with-cip-64-30d26a11df1f) | + +A wallet not listed here has not been confirmed either way — check with the wallet before assuming. Wallets that route through [viem](https://viem.sh) or [wagmi](https://wagmi.sh) inherit `feeCurrency` support from the library; Ethers.js and web3.js do not support the field. + + + Building a flow that depends on fee abstraction — onboarding a user who holds no CELO, for instance — means either targeting a wallet on this list, or keeping a path that works when gas is charged in CELO. + + For implementation details, see [Using Fee Abstraction](/build-on-celo/fee-abstraction/using-fee-abstraction). To add a new fee currency to the protocol, see [Adding Fee Currencies](/build-on-celo/fee-abstraction/add-fee-currency). ## Whitelisted Fee Currencies (Mainnet) diff --git a/tooling/wallets/index.mdx b/tooling/wallets/index.mdx index 5c55a958d..0b109cddb 100644 --- a/tooling/wallets/index.mdx +++ b/tooling/wallets/index.mdx @@ -10,6 +10,12 @@ Celo is designed to work seamlessly with a range of wallets, each offering featu The [Celo Native Wallets](#celo-native-wallets) section provides an overview of wallets that are optimized for the Celo network. These wallets allow users to fully benefit from Celo’s native functionalities, such as [phone number mapping](/build-on-celo/build-on-socialconnect) and [fee abstraction](/build-on-celo/fee-abstraction/overview). + + **Fee abstraction depends on the wallet.** Paying gas in stablecoins requires the wallet to build a CIP-64 transaction. A wallet without that support submits a normal transaction and gas is charged in CELO, with no error — so a dApp setting `feeCurrency` has no effect there. See [which wallets support it](/build-on-celo/fee-abstraction/overview#wallets-with-cip-64-support). + + The **Ledger support** field below is a different thing: it records whether the wallet can be used with a Ledger hardware device, not whether it supports fee abstraction. + + The [Wallet Infrastructure](#wallet-infrastructure) section provides an overview of wallet infrastructure solutions you can integrate into your dapp to enable seamless web3 interactions for your users. ## Celo Native Wallets @@ -31,6 +37,17 @@ MiniPay is a non-custodial lightweight mobile wallet that allows users to send a --- +### [Ledger](https://www.ledger.com/) + +Ledger is a hardware wallet. Ledger Live added support for CELO and Celo stablecoins in December 2025, and [Celo fee abstraction in July 2026](https://blog.celo.org/ledger-now-supports-celo-fee-abstraction-unlocking-seamless-stablecoin-gas-payments-with-cip-64-30d26a11df1f) — gas can be paid in Celo-native assets rather than CELO. + +- Homepage: [ledger.com](https://www.ledger.com/) +- Platforms: Ledger Live (desktop, mobile) with a Ledger device +- Maintainers: [Ledger](https://www.ledger.com/) +- Fee abstraction (CIP-64): Yes, since July 2026 + +--- + ### [Valora](https://valora.xyz/) Valora is a non-custodial multichain mobile wallet focused on helping users save, earn, and send their crypto. It supports Celo's ability to pay for transactions with stablecoins, supports Wallet Connect, and has a built in swap experience that works across chains. It also lets users verify their phone number and send payments to their contacts. From 49dfa9b17362a93ed7aedaf6eaa81a443e8da096 Mon Sep 17 00:00:00 2001 From: GigaHierz Date: Thu, 3 Sep 2026 13:35:57 +0200 Subject: [PATCH 2/2] =?UTF-8?q?docs(fee-abstraction):=20address=20review?= =?UTF-8?q?=20=E2=80=94=20verify=20wallet=20rows=20from=20source,=20rename?= =?UTF-8?q?=20the=20Ledger=20field,=20fix=20library=20claims?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Findings from review, in order: 1. home/wallets.mdx is a second wallet directory and disagreed with the new page. It now carries the same note, the same field rename and a Ledger entry, so the two pages say the same thing. 2. The viem/wagmi 'inherit feeCurrency support' clause was wrong: a wallet that uses viem internally does not thereby forward a dApp's feeCurrency. Cut, replaced with a sentence saying library support and wallet support are separate questions. 3. 'Ethers.js and web3.js do not support the field' contradicted the two SDK pages. The canonical sentence on using-fee-abstraction.mdx now says neither supports it natively and links the Celo wrapper and the web3 plugin; the overview links there instead of restating it. 4. Dated change history removed. Present tense throughout. 5. The Warning gives both outcomes of a dropped feeCurrency (gas in CELO, or a generic insufficient-funds failure) and names MetaMask as the wallet confirmed to drop the field, with the source. 6. Ledger row scoped to Ledger Live's own send flow, with the minimum Ledger Live and Celo app versions, and an explicit statement that a Ledger used through MetaMask does not get CIP-64. Verified in LedgerHQ/ledger-live coin-celo (type 'cip64' serialisation), LedgerHQ/app-celo-spender (0x7b parser), and MetaMask/core's transaction-controller normalisers (no feeCurrency key). 7. Valora row verified in valora-xyz/wallet-stack: it builds CIP-64 and deletes a dApp-supplied feeCurrency, re-selecting CELO first and then the highest-value fee currency. The row says so and links the source. 8. The per-entry 'Fee abstraction (CIP-64)' bullet is gone; the table is the one place that answers it. 9. Ledger moved out of Celo Native Wallets into a Hardware Wallets section that links the five existing Ledger guides. 10. 'Ledger support:' renamed to 'Hardware wallet support:' on both wallet pages (six occurrences), which removes the ambiguity instead of documenting it. 11. The '18 Celo-native assets' count is gone; the fee-currencies page is the canonical list. 12. The closing implementation-details paragraph moved back above the new H2. Nits: heading is now 'Wallet support for CIP-64' with no H3 under it, CIP-64 links to the proposal on first use, the MiniPay link deep-links to the fee section (the heading lost its apostrophe so the slug is stable and verified rendered), the Yes/Yes/Yes column is gone, the closing Note is folded into one sentence, Related links the wallets page, and the frontmatter description mentions wallet support. Co-Authored-By: Claude Fable 5.1 --- build-on-celo/build-on-minipay/overview.mdx | 2 +- build-on-celo/fee-abstraction/overview.mdx | 34 ++++++++---------- .../fee-abstraction/using-fee-abstraction.mdx | 2 +- home/wallets.mdx | 28 ++++++++++++--- tooling/wallets/index.mdx | 36 ++++++++++--------- 5 files changed, 59 insertions(+), 43 deletions(-) diff --git a/build-on-celo/build-on-minipay/overview.mdx b/build-on-celo/build-on-minipay/overview.mdx index 25bc142e7..46314d43e 100644 --- a/build-on-celo/build-on-minipay/overview.mdx +++ b/build-on-celo/build-on-minipay/overview.mdx @@ -48,7 +48,7 @@ const hash = await walletClient.sendTransaction({ Testnet addresses are on [Fee currency contracts](/tooling/contracts/fee-currencies). -### Gas is paid in the user's stablecoin +### Gas is paid in stablecoins MiniPay uses [fee abstraction](/build-on-celo/fee-abstraction/overview): the user never holds CELO, and the wallet pays gas in the stablecoin the user holds the most of. You may set `feeCurrency` on `eth_sendTransaction`, but MiniPay can override it. Do not build flows that assume a CELO balance, and do not show a "buy CELO for gas" step. diff --git a/build-on-celo/fee-abstraction/overview.mdx b/build-on-celo/fee-abstraction/overview.mdx index 599505b88..6a4e2a1d2 100644 --- a/build-on-celo/fee-abstraction/overview.mdx +++ b/build-on-celo/fee-abstraction/overview.mdx @@ -1,7 +1,7 @@ --- title: Fee Abstraction sidebarTitle: "Overview" -description: Pay gas fees using ERC20 tokens instead of the native CELO token +description: Pay gas fees in ERC20 tokens instead of CELO, how the protocol charges them, and which wallets build the CIP-64 transaction that makes it work --- Fee abstraction is one of Celo's core protocol features. It allows users to pay gas fees in ERC20 tokens — like USDC, USDT, or Mento stablecoins — instead of needing to hold the native CELO token. @@ -28,31 +28,26 @@ This means fee abstraction works with any externally owned account (EOA) at the To use an alternate fee currency, set its token or adapter address as the `feeCurrency` property on the transaction object. -## The wallet has to support it too +For implementation details, see [Using Fee Abstraction](/build-on-celo/fee-abstraction/using-fee-abstraction). To add a new fee currency to the protocol, see [Adding Fee Currencies](/build-on-celo/fee-abstraction/add-fee-currency). -The protocol accepts a `feeCurrency` transaction from any account, but **something has to build that transaction**. `feeCurrency` is a field on the CIP-64 transaction type, so the wallet signing it must implement CIP-64. +## Wallet support for CIP-64 - - If the user's wallet does not support CIP-64, it submits a standard transaction instead and **gas is paid in CELO. Nothing errors.** Your `feeCurrency` is dropped silently, and a user with no CELO sees the transaction fail for want of gas — with nothing pointing at the wallet as the cause. +The protocol accepts a `feeCurrency` transaction from any account, but something has to build that transaction. `feeCurrency` is a field on the [CIP-64](https://github.com/celo-org/celo-proposals/blob/master/CIPs/cip-0064.md) transaction type, so the wallet signing it must implement CIP-64. Setting `feeCurrency` in your dApp is necessary but not sufficient: whether it takes effect is decided by the wallet your user brings. - Setting `feeCurrency` in your dApp is necessary but not sufficient. Whether it takes effect is decided by the wallet your user brings. + + A wallet without CIP-64 support does not honour `feeCurrency`, and nothing tells you so. Most drop the field and sign a standard transaction, as MetaMask does: gas then comes out of the user's CELO balance, or, if the user holds no CELO, the transaction fails with a generic insufficient-funds error. A wallet that validates request parameters may instead reject the request outright. None of these outcomes points at the wallet as the cause. -### Wallets with CIP-64 support +| Wallet | How `feeCurrency` is handled | +|---|---| +| [MiniPay](/build-on-celo/build-on-minipay/overview) | Pays gas in the stablecoin the user holds the most of, and [may override](/build-on-celo/build-on-minipay/overview#gas-is-paid-in-stablecoins) a `feeCurrency` you set | +| [Valora](https://valora.xyz/) | Builds CIP-64 itself and ignores a `feeCurrency` you set. It re-selects, paying in CELO when the balance covers the fee and otherwise in the fee currency the user holds the most of by value. Confirmed in the [wallet source](https://github.com/valora-xyz/wallet-stack/blob/main/packages/wallet-stack/src/walletConnect/saga.ts) | +| [Ledger Live](/tooling/wallets/ledger/setup) | Ledger Live's own send flow builds CIP-64 and lets the user choose the fee currency. Needs Ledger Live 4.8 or later and Celo app 1.8 or later. This does not extend to dApps: a Ledger used through MetaMask signs what MetaMask builds, and MetaMask drops `feeCurrency` | +| [MetaMask](/tooling/wallets/metamask/setup) | Not supported. The [transaction controller](https://github.com/MetaMask/core/blob/main/packages/transaction-controller/src/utils/utils.ts) keeps only the fields it knows, so `feeCurrency` is dropped and gas is charged in CELO | -| Wallet | Fee abstraction | Notes | -|---|---|---| -| [MiniPay](/build-on-celo/build-on-minipay/overview) | Yes | Pays gas in whichever supported stablecoin the user holds most of, and [may override](/build-on-celo/build-on-minipay/overview) a `feeCurrency` you set | -| [Valora](https://valora.xyz/) | Yes | Pays transaction fees with stablecoins | -| [Ledger](https://www.ledger.com/) | Yes, since July 2026 | 18 Celo-native assets accepted for gas, via [Ledger Live](https://blog.celo.org/ledger-now-supports-celo-fee-abstraction-unlocking-seamless-stablecoin-gas-payments-with-cip-64-30d26a11df1f) | +A wallet not listed here has not been confirmed either way. Check with the wallet before assuming. If a flow depends on fee abstraction, such as onboarding a user who holds no CELO, either target a wallet on this list or keep a path that works when gas is charged in CELO. -A wallet not listed here has not been confirmed either way — check with the wallet before assuming. Wallets that route through [viem](https://viem.sh) or [wagmi](https://wagmi.sh) inherit `feeCurrency` support from the library; Ethers.js and web3.js do not support the field. - - - Building a flow that depends on fee abstraction — onboarding a user who holds no CELO, for instance — means either targeting a wallet on this list, or keeping a path that works when gas is charged in CELO. - - -For implementation details, see [Using Fee Abstraction](/build-on-celo/fee-abstraction/using-fee-abstraction). To add a new fee currency to the protocol, see [Adding Fee Currencies](/build-on-celo/fee-abstraction/add-fee-currency). +Library support is a separate question from wallet support, and a library in a wallet's stack says nothing about whether that wallet forwards a dApp's `feeCurrency`. For viem, Ethers.js and web3.js, see [Using Fee Abstraction](/build-on-celo/fee-abstraction/using-fee-abstraction#using-fee-abstraction-with-viem). ## Whitelisted Fee Currencies (Mainnet) @@ -68,3 +63,4 @@ Tokens with non-18 decimals (e.g. USDC, USD₮, USA₮ with 6 decimals) require - [x402: Agent Payments](/build-on-celo/build-with-ai/x402) — HTTP-native stablecoin payments for agents - [Using Fee Abstraction](/build-on-celo/fee-abstraction/using-fee-abstraction) — How to pay gas with alternate fee currencies in your transactions - [Adding Fee Currencies](/build-on-celo/fee-abstraction/add-fee-currency) — How to implement and register a new fee currency +- [Celo Wallets](/tooling/wallets) — The wallets Celo documents, including the ones in the table above diff --git a/build-on-celo/fee-abstraction/using-fee-abstraction.mdx b/build-on-celo/fee-abstraction/using-fee-abstraction.mdx index bd74aa993..4ff799d47 100644 --- a/build-on-celo/fee-abstraction/using-fee-abstraction.mdx +++ b/build-on-celo/fee-abstraction/using-fee-abstraction.mdx @@ -71,7 +71,7 @@ celocli transfer:erc20 \ ## Using Fee Abstraction with viem -We recommend [viem](https://viem.sh/), which has native support for the `feeCurrency` field. Ethers.js and web3.js do not currently support this field. +We recommend [viem](https://viem.sh/), which serializes CIP-64 natively when you pass a Celo chain from `viem/chains`. Ethers.js and web3.js do not support the field on their own; use the [Celo Ethers.js wrapper](/tooling/libraries-sdks/ethers) or the [web3 transaction-types plugin](/tooling/libraries-sdks/web3). Whichever library you use, the wallet that signs the transaction must also support CIP-64; see [wallet support](/build-on-celo/fee-abstraction/overview#wallet-support-for-cip-64). ### 1. Estimate the Gas Fee diff --git a/home/wallets.mdx b/home/wallets.mdx index 215e33ec7..af600ce27 100644 --- a/home/wallets.mdx +++ b/home/wallets.mdx @@ -13,7 +13,11 @@ Celo is designed to work seamlessly with a range of wallets, each offering featu The [Celo Native Wallets](#celo-native-wallets) section provides an overview of wallets that are optimized for the Celo network. These wallets allow users to fully benefit from Celo’s native functionalities, such as [phone number mapping](/build-on-celo/build-on-socialconnect) and [fee abstraction](/build-on-celo/fee-abstraction/overview). -The [Celo Compatible Wallets](#celo-compatible-wallets) section provides an overview of commonly used wallets wallets that support the Celo network. + + **Fee abstraction depends on the wallet.** Paying gas in stablecoins requires the wallet to build a CIP-64 transaction. A wallet without that support charges gas in CELO instead. See [which wallets support it](/build-on-celo/fee-abstraction/overview#wallet-support-for-cip-64). + + +The [Celo Compatible Wallets](#celo-compatible-wallets) section provides an overview of commonly used wallets that support the Celo network. ## Celo Native Wallets @@ -26,7 +30,7 @@ MiniPay is a non-custodial lightweight mobile wallet that allows users to send a - [Homepage](https://www.opera.com/products/minipay) - Platforms: [Android](https://play.google.com/store/apps/details?id=com.opera.minipay), [iOS](https://apps.apple.com/de/app/minipay-easy-global-wallet/id6504087257?l=en-GB), inside [Opera Mini](https://play.google.com/store/apps/details?id=com.opera.mini.native) in Ghana, Nigeria, Kenya, South Africa, and Uganda - Maintainers: Opera -- Ledger support: No +- Hardware wallet support: No - Supported tokens: USDm, USDT, and USDC --- @@ -38,7 +42,7 @@ Valora is a non-custodial multichain mobile wallet focused on helping users save - [Homepage](https://valora.xyz/) - Platforms: [iOS](https://apps.apple.com/us/app/valora-crypto-wallet/id1520414263?mt=8), [Android](https://play.google.com/store/apps/details?id=co.clabs.valora) - Maintainers: [Valora](https://valora.xyz/) -- Ledger support: No +- Hardware wallet support: No - [Source Code](https://github.com/valora-inc/wallet) --- @@ -50,14 +54,28 @@ Celo Terminal is a wallet and dApp platform designed as a hub for managing and r - Homepage: [celoterminal.com](https://celoterminal.com) - Platforms: MacOS, Linux, Windows - Maintainers: [WOTrust](https://x.com/wotrust1) -- Ledger support: Yes (Note: [EIP-712 signing requires workaround](/wallet/ledger/eip712-workaround)) +- Hardware wallet support: Yes (Note: [EIP-712 signing requires workaround](/wallet/ledger/eip712-workaround)) - [Source Code](https://github.com/zviadm/celoterminal) --- +## Hardware Wallets + +--- + +### [Ledger](https://www.ledger.com/) + +Ledger is a hardware wallet. Ledger Live supports CELO and Celo stablecoins, and its send flow can pay gas in a Celo fee currency of the user's choice, with Ledger Live 4.8 or later and Celo app 1.8 or later. dApp transactions signed with a Ledger through MetaMask are not CIP-64, because MetaMask drops `feeCurrency`; see [wallet support for CIP-64](/build-on-celo/fee-abstraction/overview#wallet-support-for-cip-64). + +- [Homepage](https://www.ledger.com/) +- Platforms: Ledger Live (desktop, mobile) with a Ledger device +- [Set up a Ledger with Celo](/tooling/wallets/ledger/setup) + +--- + ## Celo Compatible Wallets -Here’s an overview of popular wallets compatible with the Celo network. Note that some wallets do not support fee abstraction for gas payments with different tokens. +Here’s an overview of popular wallets compatible with the Celo network. Not all of them support [fee abstraction](/build-on-celo/fee-abstraction/overview#wallet-support-for-cip-64), so gas may be charged in CELO. ### [Rabby](https://rabby.io/) diff --git a/tooling/wallets/index.mdx b/tooling/wallets/index.mdx index 0b109cddb..e8ee87b14 100644 --- a/tooling/wallets/index.mdx +++ b/tooling/wallets/index.mdx @@ -11,9 +11,7 @@ Celo is designed to work seamlessly with a range of wallets, each offering featu The [Celo Native Wallets](#celo-native-wallets) section provides an overview of wallets that are optimized for the Celo network. These wallets allow users to fully benefit from Celo’s native functionalities, such as [phone number mapping](/build-on-celo/build-on-socialconnect) and [fee abstraction](/build-on-celo/fee-abstraction/overview). - **Fee abstraction depends on the wallet.** Paying gas in stablecoins requires the wallet to build a CIP-64 transaction. A wallet without that support submits a normal transaction and gas is charged in CELO, with no error — so a dApp setting `feeCurrency` has no effect there. See [which wallets support it](/build-on-celo/fee-abstraction/overview#wallets-with-cip-64-support). - - The **Ledger support** field below is a different thing: it records whether the wallet can be used with a Ledger hardware device, not whether it supports fee abstraction. + **Fee abstraction depends on the wallet.** Paying gas in stablecoins requires the wallet to build a CIP-64 transaction. A wallet without that support drops a dApp's `feeCurrency` without an error. See [which wallets support it](/build-on-celo/fee-abstraction/overview#wallet-support-for-cip-64). The [Wallet Infrastructure](#wallet-infrastructure) section provides an overview of wallet infrastructure solutions you can integrate into your dapp to enable seamless web3 interactions for your users. @@ -31,23 +29,12 @@ MiniPay is a non-custodial lightweight mobile wallet that allows users to send a - Homepage: [opera.com/products/minipay](https://www.opera.com/products/minipay) - Platforms: [Android](https://play.google.com/store/apps/details?id=com.opera.minipay), [iOS](https://apps.apple.com/de/app/minipay-easy-global-wallet/id6504087257?l=en-GB), inside [Opera Mini](https://play.google.com/store/apps/details?id=com.opera.mini.native) in Ghana, Nigeria, Kenya, South Africa, and Uganda - Maintainers: Opera -- Ledger support: No +- Hardware wallet support: No - Supported tokens: USDm, USDT, and USDC - [Start building](/build-on-celo/build-on-minipay/overview) --- -### [Ledger](https://www.ledger.com/) - -Ledger is a hardware wallet. Ledger Live added support for CELO and Celo stablecoins in December 2025, and [Celo fee abstraction in July 2026](https://blog.celo.org/ledger-now-supports-celo-fee-abstraction-unlocking-seamless-stablecoin-gas-payments-with-cip-64-30d26a11df1f) — gas can be paid in Celo-native assets rather than CELO. - -- Homepage: [ledger.com](https://www.ledger.com/) -- Platforms: Ledger Live (desktop, mobile) with a Ledger device -- Maintainers: [Ledger](https://www.ledger.com/) -- Fee abstraction (CIP-64): Yes, since July 2026 - ---- - ### [Valora](https://valora.xyz/) Valora is a non-custodial multichain mobile wallet focused on helping users save, earn, and send their crypto. It supports Celo's ability to pay for transactions with stablecoins, supports Wallet Connect, and has a built in swap experience that works across chains. It also lets users verify their phone number and send payments to their contacts. @@ -55,7 +42,7 @@ Valora is a non-custodial multichain mobile wallet focused on helping users save - Homepage: [valora.xyz](https://valora.xyz/) - Platforms: [iOS](https://apps.apple.com/us/app/valora-crypto-wallet/id1520414263?mt=8), [Android](https://play.google.com/store/apps/details?id=co.clabs.valora) - Maintainers: [Valora](https://valora.xyz/) -- Ledger support: No +- Hardware wallet support: No - [Source Code](https://github.com/valora-inc/wallet) @@ -68,10 +55,25 @@ Celo Terminal is a wallet and dApp platform designed as a hub for managing and r - Homepage: [celoterminal.com](https://celoterminal.com) - Platforms: MacOS, Linux, Windows - Maintainers: [WOTrust](https://x.com/wotrust1) -- Ledger support: Yes (Note: [EIP-712 signing requires workaround](/wallet/ledger/eip712-workaround)) +- Hardware wallet support: Yes (Note: [EIP-712 signing requires workaround](/wallet/ledger/eip712-workaround)) - [Source Code](https://github.com/zviadm/celoterminal) +## Hardware Wallets + +--- + +### [Ledger](https://www.ledger.com/) + +Ledger is a hardware wallet. Ledger Live supports CELO and Celo stablecoins, and its send flow can pay gas in a Celo fee currency of the user's choice, with Ledger Live 4.8 or later and Celo app 1.8 or later. dApp transactions signed with a Ledger through MetaMask are not CIP-64, because MetaMask drops `feeCurrency`; see [wallet support for CIP-64](/build-on-celo/fee-abstraction/overview#wallet-support-for-cip-64). + +- Homepage: [ledger.com](https://www.ledger.com/) +- Platforms: Ledger Live (desktop, mobile) with a Ledger device +- Maintainers: [Ledger](https://www.ledger.com/) +- Guides: [set up a Ledger with Celo](/tooling/wallets/ledger/setup), connect it to [Celo Terminal](/tooling/wallets/ledger/to-celo-terminal), the [Celo web wallet](/tooling/wallets/ledger/to-celo-web) or the [Celo CLI](/tooling/wallets/ledger/to-celo-cli), and the [EIP-712 signing workaround](/tooling/wallets/ledger/eip712-workaround) + +--- + ## Wallet Infrastructure Server wallets are a crucial part of building accessible applications. In the future of applications, you don't want to ask suers to login with a wallet but rather using their social logins like email account etc.