O que é um conversor de lamports para SOL?
Um conversor de lamports para SOL divide uma quantidade inteira de lamports por 109 para expressá-la em SOL e multiplica por 109 para voltar. O lamport é a menor unidade do token nativo da Solana; todo saldo, transferência e valor de rent que o runtime e a API JSON-RPC manipulam é um número inteiro de lamports, e SOL com 9 decimais é apenas como as carteiras o exibem.
Tabela de unidades da Solana
| Unidade | Lamports | SOL | Onde você a encontra |
|---|---|---|---|
| micro-lamport | 0,000001 | 10-15 | preço da priority fee por unidade de computação |
| lamport | 1 | 0,000000001 | saldos RPC, dados de instruções, rent |
| SOL | 1.000.000.000 | 1 | carteiras, exchanges |
Lamports na prática
- Saldos:
getBalanceretorna{ "value": 1500000000 }para 1,5 SOL. - Transferências:
SystemProgram.transfer({ lamports: 100_000_000 })envia 0,1 SOL. No web3.js, a constanteLAMPORTS_PER_SOLé igual a 1e9. - Rent:
getMinimumBalanceForRentExemption(size)retorna lamports; toda conta precisa manter pelo menos esse valor para persistir. - Priority fees: definidas em micro-lamports por unidade de computação; uma transação de 200.000 CU a 10.000 micro-lamports/CU adiciona 2.000.000.000 micro-lamports = 2.000 lamports = 0,000002 SOL.
Por que não usar ponto flutuante?
1e9 cabe confortavelmente em um double, mas saldos como 123.456.789.123.456.789 lamports não: o Number do JavaScript só é exato até 253. Este conversor usa BigInt, então saldos de tesouraria muito grandes são convertidos com exatidão.
Exemplo prático
Uma carteira mostra 3,25 SOL. O saldo RPC é 3,25 × 109 = 3.250.000.000 lamports. Enviar 0,1 SOL para outro endereço e pagar a taxa de uma assinatura deixa 3.250.000.000 − 100.000.000 − 5.000 = 3.149.995.000 lamports, que a carteira exibe como 3,149995 SOL. Manter o número como inteiro evita arredondamento quando ele é multiplicado depois por um preço ou somado entre muitas contas.
Valide um endereço Solana com o validador de endereço Solana ou crie um código de pagamento com o gerador de QR Solana Pay.