Налаштування прийому платежів у Litecoin

Проєктуємо та розробляємо блокчейн-рішення повного циклу: від архітектури смарт-контрактів до запуску DeFi-протоколів, NFT-маркетплейсів та криптобірж. Аудит безпеки, токеноміка, інтеграція з наявною інфраструктурою.
Показано 1 з 1Усі 1306 послуг
Налаштування прийому платежів у Litecoin
Простий
~2-3 дні
Часті запитання

Напрямки блокчейн-розробки

Етапи блокчейн-розробки

Останні роботи

  • image_website-b2b-advance_0.webp
    Розробка сайту компанії B2B ADVANCE
    1307
  • image_web-applications_feedme_466_0.webp
    Розробка веб-додатків для компанії FEEDME
    1219
  • image_websites_belfingroup_462_0.webp
    Розробка веб-сайту для компанії БЕЛФІНГРУП
    920
  • image_ecommerce_furnoro_435_0.webp
    Розробка інтернет магазину для компанії FURNORO
    1147
  • image_logo-advance_0.webp
    Розробка логотипу компанії B2B Advance
    611
  • image_crm_enviok_479_0.webp
    Розробка веб-додатків для компанії Enviok
    885

Налаштування прийому платежів у Litecoin

Litecoin — форк Bitcoin з меншим часом блоку (~2.5 хв проти 10 хв) та іншими параметрами мережі. Технічна інтеграція практично ідентична Bitcoin: ті ж HD-гаманці (BIP-32/44), ті ж типи адрес, та ж UTXO-модель. Якщо у вас вже є Bitcoin-інтеграція, додавання Litecoin — це зміна параметрів мережі та кількох констант.

Адреси та параметри мережі

Litecoin підтримує ті ж типи адрес, що й Bitcoin, але з різними префіксами:

Тип Litecoin формат BIP-44 шлях
P2PKH (Legacy) L... або M... m/44'/2'/0'
P2SH-P2WPKH (Wrapped SegWit) M... m/49'/2'/0'
P2WPKH (Native SegWit) ltc1q... m/84'/2'/0'
P2TR (Taproot) ltc1p... m/86'/2'/0'

Coin type для Litecoin у BIP-44 — 2 (на відміну від Bitcoin — 0).

Реалізація через bitcoinjs-lib

bitcoinjs-lib підтримує Litecoin через кастомні параметри мережі — окремої бібліотеки не потрібно:

import * as bitcoin from 'bitcoinjs-lib'
import { BIP32Factory } from 'bip32'
import * as ecc from 'tiny-secp256k1'

bitcoin.initEccLib(ecc)
const bip32 = BIP32Factory(ecc)

// Параметри мережі Litecoin
const LITECOIN: bitcoin.Network = {
  messagePrefix: '\x19Litecoin Signed Message:\n',
  bech32: 'ltc',          // префікс для Native SegWit адрес
  bip32: {
    public: 0x019da462,   // Ltpv / Ltub
    private: 0x019d9cfe,
  },
  pubKeyHash: 0x30,       // адреси починаються з 'L'
  scriptHash: 0x32,       // адреси починаються з 'M'
  wif: 0xb0,
}

const LITECOIN_TESTNET: bitcoin.Network = {
  messagePrefix: '\x19Litecoin Signed Message:\n',
  bech32: 'tltc',
  bip32: {
    public: 0x0436f6e1,
    private: 0x0436ef7d,
  },
  pubKeyHash: 0x6f,
  scriptHash: 0x3a,
  wif: 0xef,
}

// Генерація Native SegWit адреси (ltc1q...)
function getLitecoinAddress(xpub: string, index: number): string {
  const node = bip32.fromBase58(xpub, LITECOIN)
  const child = node.derive(0).derive(index)
  const { address } = bitcoin.payments.p2wpkh({
    pubkey: Buffer.from(child.publicKey),
    network: LITECOIN,
  })
  if (!address) throw new Error('Address derivation failed')
  return address
}

Моніторинг транзакцій

Для Litecoin доступні ті ж інструменти, що й для Bitcoin:

Власна нода + electrs — переважний варіант. electrs підтримує Litecoin через прапор --network=litecoin. Litecoin Core завантажується та синхронізується швидше, ніж Bitcoin (~50 GB проти ~600 GB для повної ноди).

Публічний API — Blockchair підтримує Litecoin:

async function checkLitecoinPayment(
  address: string,
  expectedLit: number // у лайтконах, не у litoshi
): Promise<'pending' | 'confirmed'> {
  const res = await fetch(
    `https://api.blockchair.com/litecoin/dashboards/address/${address}`
  )
  const data = await res.json()
  const stats = data.data[address]?.address

  const confirmedReceived = stats?.received / 1e8 ?? 0
  return confirmedReceived >= expectedLit ? 'confirmed' : 'pending'
}

Blockchair API безкоштовний до 1430 запитів/день. Для production потрібна нода.

Кількість підтверджень

Через швидші блоки (~2.5 хв) ви можете вимагати більше підтверджень за той же астрономічний час:

Еквівалент за часом Bitcoin блоків Litecoin блоків
~10 хвилин 1 4
~30 хвилин 3 12
~60 хвилин 6 24

На практиці для більшості платежів достатньо 6–12 підтверджень Litecoin.

Конвертація та курси

При виставленні рахунку в LTC потрібен актуальний курс. Варіанти:

// Через CoinGecko (безкоштовно, без ключа)
async function getLtcPriceUsd(): Promise<number> {
  const res = await fetch(
    'https://api.coingecko.com/api/v3/simple/price?ids=litecoin&vs_currencies=usd'
  )
  const data = await res.json()
  return data.litecoin.usd
}

// Виставлення рахунку: зафіксувати суму в LTC на момент створення
// та зберігати до закінчення (~15 хвилин). Не перераховувати щосекунди.

Курс потрібно фіксувати в момент генерування адреси платежу та не перераховувати протягом життя платежу. Якщо користувач не оплатив до закінчення — генерувати нову адресу з актуальним курсом.

Відмінності від Bitcoin у production

Litecoin історично використовувався як "тестова мережа Bitcoin" в реальних умовах — багато оновлень (SegWit, MimbleWimble через MWEB) вийшло там раніше. MWEB (MimbleWimble Extension Blocks) додає опціональну конфіденційність транзакцій, що спричиняє додаткові складності при моніторингу: MWEB-транзакції не видно стандартним API. Якщо клієнти платять через MWEB — вам потрібна власна нода з підтримкою MWEB.

Комісії в мережі Litecoin історично нижче Bitcoin в абсолютних значеннях. Але це не впливає на отримувача — комісію платить відправник.