Skip to main content

Litecoin (LTC)

UTXO-based signing with the same input/output contract as Bitcoin. Provide the full previous transactions for the inputs you spend; the device signs each input by its keyPath. Only the chainId, keyPath, address format and amount unit differ from Bitcoin.

FieldValue
FamilyBitcoin (UTXO)
coinType2
keyPathm/44'/2'/<accountIdx>'/0/0
addressFormatlegacy (SegWit not supported via bridge)
amount unitlitoshi (1 LTC = 1e8)
chainIdbip122:12a765e31ffd4059bada1e25190f6e98/slip44:2

Supported Methods

MethodSupported
getAddress
signTransaction
signMessage
signTypedData

Requirements

Minimum firmware for each method. The two models are on different version lines, so DCENT Biometric Wallet and DCENT X are listed separately (the numbers are not comparable across models). Below this the request returns the firmware-update error (5005) and the bridge prompts to update.

MethodDCENT Biometric WalletDCENT X
getAddress1.5.1 or higher1.0.0 or higher
signTransaction1.5.1 or higher1.0.0 or higher

addressFormat

FormatPathPrefixStatus
legacy (P2PKH)m/44'/2'/0'/0/0L… (base58)Supported
segwit-native (P2WPKH)ltc1… (bech32)Not supported
segwit-wrapped (P2SH-P2WPKH)M… (base58)Not supported
warning

Litecoin is legacy-only through the DCENT bridge. Only legacy P2PKH (base58 L…, derived from m/44'/2') is supported — DCENT has no Litecoin SegWit variant, and a m/84' keyPath is rejected by the BIP-44 gate. The native-SegWit / ltc1… examples shown below are not currently accepted; use the legacy m/44'/2' path. (Litecoin legacy addresses begin with L, not 1 as on Bitcoin.)

getAddress — account address

Derive a Litecoin account address for a keyPath. The connector returns the legacy P2PKH address (base58, L…, from m/44'/2'). Litecoin SegWit is not supported through the DCENT bridge, so addressFormat has no effect here. Call this before building a transaction.

Parameters

FieldTypeRequiredSourceNotes
chainIdstringRequiredAppCAIP-19 — fixed for Litecoin
keyPathstringRequiredAppBIP-44 (legacy m/44'/2')
addressFormatenumOptionalApplegacy only — SegWit not supported

Request

await dcent.getAddress({
chainId: 'bip122:12a765e31ffd4059bada1e25190f6e98/slip44:2',
keyPath: "m/44'/2'/0'/0/0"
})

Response

FieldTypeDescription
header.statusstringsuccess on completion
body.commandstringgetAddress
body.parameter.addressstringLitecoin account address. With the default path this is a legacy P2PKH base58 address (L…). No public key is returned for the Bitcoin family.
{
"header": {
"version": "1.0",
"status": "success"
},
"body": {
"command": "getAddress",
"parameter": {
"address": "L…"
}
}
}

signTransaction — UTXO transaction

The wire payload mirrors Bitcoin: payload.transaction carries inputs[] and outputs[]. Each input references the full previous transaction hex so the device can verify the spent value before signing.

payload.transaction:

{
"inputs": [
{
"rawTransaction": "<prev tx hex>",
"index": 0,
"txType": "p2pkh",
"keyPath": "m/44'/2'/0'/0/0",
"sequence": 4294967295
}
],
"outputs": [
{
"txType": "p2pkh",
"amount": "200000",
"addresses": [
"L…"
]
}
]
}
FieldTypeRequiredSourceUnitDescription
inputs[].rawTransactionhexRequired-RealWalletFull prev-tx hex of the UTXO being spent; must be device-owned
inputs[].indexnumberRequiredAppUTXO output index (utxo_idx)
inputs[].txTypeenumRequiredAppp2pkh
inputs[].keyPathstringRequired-RealWalletPath that signs this input (legacy m/44'/2')
inputs[].sequencenumberOptionalAppNot defaulted to 0xffffffff — when omitted the bridge uses 0xfffffffd for RBF-enabled coins and leaves it unset otherwise. Also note the first input's value applies to the whole transaction.
outputs[].txTypeenumRequiredAppOutput script type
outputs[].amountstringRequiredApplitoshiOutput value (1 LTC = 1e8 litoshi)
outputs[].addressesstring[]Required-RealAppRecipient. Only addresses[0] is used, and exactly one non-change output is allowed — more than one destination is rejected with param_error. Use a second output with txType: 'change' for change.

Common Mistakes

danger

Reusing Bitcoin coinType / keyPath — Litecoin is slip44:2, so the path is m/44'/2'/0'/0/0, not …/0'/… (Bitcoin's coinType 0). Trying to use native SegWit — Litecoin SegWit (ltc1…, m/84'/2') is not supported through the DCENT bridge; use legacy m/44'/2' P2PKH (L…). A m/84' keyPath is rejected. Missing change output — any unspent input value silently becomes the miner fee. Amounts not in litoshi — values are integers in litoshi (1 LTC = 1e8), never decimal LTC.