Account handlers

The account handlers let a Live App list the user’s accounts, prompt the user to pick one, and let the user verify a receive address on their Ledger device.

Method IDs

Method IDDirectionWallet handler required?Purpose
account.listLive App → WalletyesList the user’s accounts, optionally filtered.
account.requestLive App → WalletyesPrompt the user to select an account.
account.receiveLive App → WalletyesDisplay an address on-device for the user to verify.

If the wallet does not register the matching wallet handler, the server throws an RpcError with code SERVER_ERROR (-32000) wrapping a not implemented by wallet server error.

account.list

Returns every account the user has added in the wallet, optionally filtered by currency.

Parameters

ParameterTypeRequiredNotes
currencyIdsstring[]noFilter by currency ID (for example ["bitcoin", "ethereum"]). When omitted, all accounts are returned.

Result

{
  rawAccounts: RawAccount[]
}

The rawAccounts are the serialized Account objects.

account.request

Prompts the user to select an account in the wallet UI.

Parameters

ParameterTypeRequiredNotes
currencyIdsstring[]noRestrict the picker to these currencies.
showAccountFilterbooleannoShow the account filter UI.
drawerConfigurationobjectnoControls the drawer UI: assets.{filter, leftElement, rightElement} and networks.{leftElement, rightElement}, all optional strings.
useCasestringnoTags the request with a use case (for example "swap").
uiUseCasestringnoUI variant to render.

When the wallet handler is invoked, the server also forwards a derived flag areCurrenciesFiltered (true when currencyIds is non-empty).

Result

{
  rawAccount: RawAccount
}

account.receive

Displays an account address on the Ledger device so the user can verify it. Use this before sharing the address with a counterparty.

Parameters

ParameterTypeRequiredNotes
accountIdstringyesID of the account whose address to display.
tokenCurrencystringnoToken currency ID, when the account holds tokens whose receive address differs from the parent account address.

Result

{
  address: string
}

The returned address is the one the user confirmed on-device.

See also

Ledger
Copyright © Ledger SAS. All rights reserved. Ledger, Ledger Stax, Ledger Flex, Ledger Nano, Ledger Nano S, Ledger OS, Ledger Wallet, [LEDGER] (logo), [L] (logo) are trademarks owned by Ledger SAS.