Gerador de QR Code para carteira cripto
100% privado e local — seus dados nunca saem do navegador. Estes QR Codes são permanentes e nunca expiram.
Configurações de Carteira cripto
Design
Adicionar logo central
A imagem é lida nesta página e embutida no código como URL data:. Ela não é enviada a lugar nenhum e permanece dentro do arquivo que você baixa.
Mais opções de design
A metade escura do código. Mantenha-a bem abaixo do fundo em luminosidade.
Cobre a zona silenciosa e também os vãos entre os módulos. Um fundo transparente o deixa fora do arquivo, então nada é desenhado com ele.
Contraste 11.5:1 entre os módulos e o fundo.
PNG e WebP mantêm um canal alfa; o SVG simplesmente omite o retângulo de fundo. Aquilo sobre o que o código for colocado vira a metade clara do contraste.
O gradiente preenche apenas os módulos escuros. A ponta mais clara define o contraste que o leitor realmente recebe, então as duas pontas precisam continuar escuras.
A segunda cor, usada apenas enquanto um gradiente está selecionado. Ela é medida no contraste junto com a primeira.
Graus no sentido horário a partir de uma varredura da esquerda para a direita. Um gradiente radial se espalha do centro para fora, então o ângulo vale só para o linear.
Formas arredondadas cobrem menos de cada célula. O centro continua coberto, que é onde o decodificador faz a amostragem, mas uma impressão pequena de um código denso é lida com mais confiança em quadrados.
O anel dos três padrões de localização.
O olho dentro de cada padrão de localização.
A margem em branco ao redor do código, medida em módulos. 4 é o mínimo especificado.
Uma recuperação mais alta sobrevive a mais dano e custa capacidade, então o mesmo conteúdo produz um símbolo mais denso.
Um logo ocupa o centro e mantém o nível em H. O limite de largura dele acompanha o símbolo: 14% no código menor, 30% em um denso.
Prévia ao vivo e exportação
Paste the Bitcoin receiving address from your wallet's receive screen.
Exportar
Raster, para telas
Preencha o formulário para liberar os downloads.
Tamanho de exportação e texto codificado
- Payload
- Nada codificado ainda
- Símbolo
- Ainda não montado
- Recuperação
- H
Aguardando dados
Monte um código de recebimento escaneável para uma de cinco redes, com valor e nota opcionais. O endereço é usado exatamente como você digitar e nunca é enviado a lugar nenhum.
Quando alguém escaneia
Um app de carteira lê a URI, preenche o destinatário e mostra valor e nota como uma solicitação de pagamento editável, e nada é assinado ou enviado até o pagador confirmar na própria carteira.
Como é a URI de cada rede
Bitcoin, Litecoin e Dogecoin usam todos o formato BIP-21: o nome do esquema, dois-pontos, o endereço e parâmetros de query opcionais. O valor é escrito em moedas inteiras, como decimal — amount=0.005 significa cinco milésimos de um bitcoin — e o rótulo e a mensagem são percent-encoded.
O Ethereum usa a EIP-681, em que o parâmetro value é denominado em wei, e não em ether. A especificação incentiva a notação científica, então 0,25 ETH é escrito como value=2.5e17. Não existem parâmetros de rótulo e mensagem na EIP-681, e é por isso que esses dois campos desaparecem quando você seleciona Ethereum.
O Solana Pay define a própria solicitação de transferência: solana: seguido da chave do destinatário em base58, com amount em SOL e rótulo e mensagem opcionais. A especificação limita o valor a nove casas decimais, que é a precisão do SOL, e exige que as carteiras recusem uma URI que traga mais do que isso.
O endereço é codificado exatamente como você o digita, inclusive nas maiúsculas e minúsculas. Endereços Bitcoin em bech32 não distinguem maiúsculas de minúsculas e poderiam ser passados para maiúsculas para caber no modo alfanumérico do QR e encolher o símbolo, mas endereços legados em base58 distinguem, e passar um deles para maiúsculas o destrói. Aplicar essa otimização só às vezes é o tipo de comportamento condicional que produz um código quebrado justamente no caso que ninguém testou, então ela não é aplicada em caso nenhum.
- bitcoin:bc1q…?amount=0.005&label=Livraria%20Beira-Rio
- ethereum:0x…?value=2.5e17
- solana:7xKX…?amount=1.5&label=Livraria%20Beira-Rio
O valor é um pedido, não um compromisso
Todo esquema aqui trata o valor como uma sugestão à carteira que envia. Muitas carteiras preenchem o campo e deixam o pagador editá-lo antes de assinar. Algumas ignoram o parâmetro por completo e abrem com o valor vazio. Nenhuma delas é obrigada a respeitá-lo, e não existe mecanismo em um QR Code que pudesse obrigar.
O BIP-21 define, sim, um prefixo req- para parâmetros que a carteira precisa entender ou então recusar, mas isso governa se a carteira faz o parsing da URI, não se a pessoa paga a cifra. Trate um valor impresso como uma conveniência que poupa digitação, e concilie o que de fato chegou com o que você pediu.
Os valores também não carregam referência de cobrança. O campo de mensagem é texto de exibição para o pagador; ele não é escrito na transação e não chega até você junto com os fundos. Casar um pagamento recebido com um pedido significa usar um endereço novo por pedido, o que um único código impresso não tem como fazer.
Confira o endereço antes de o código sair da sua tela
Este site não tem como verificar um endereço. Ele checa apenas se o que você digitou combina com o conjunto de caracteres e com o comprimento aproximado da rede que você selecionou, o que pega um erro óbvio de colagem e mais nada. Ele não tem como saber se o endereço é seu, se a carteira ainda existe ou se a string foi substituída entre a sua carteira e este campo. Não há consulta a fazer, porque não existe requisição de rede nenhuma nesta página.
Malware que troca endereços é uma ameaça real e corriqueira: sequestradores de área de transferência ficam à espreita de um endereço de carteira copiado e o substituem pelo do atacante. O endereço substituído é bem formado, então passa por todas as checagens de formato, e o código resultante é perfeitamente válido — para outra pessoa. As transferências nessas redes são finais, não existe estorno e nenhuma central de atendimento consegue puxar os fundos de volta.
A defesa é curta e inegociável. Depois que o código for desenhado, escaneie-o com o celular que você usaria para pagar e compare o endereço que a carteira mostra com a tela de recebimento da sua carteira, caractere por caractere — os seis primeiros e os seis últimos caracteres pegam a maioria das substituições, a string inteira pega o resto. Depois envie um pequeno valor de teste para você mesmo antes de o código ser impresso em escala. Faça isso de novo depois de qualquer reimpressão a partir de um arquivo salvo.
Perguntas e respostas
O código guarda a minha chave privada ou a minha frase de recuperação?
Não, e nunca digite nenhuma das duas em página web nenhuma. Esta ferramenta recebe um endereço de recebimento, que é informação pública e feita para ser compartilhada. Uma chave privada ou uma frase de recuperação entrega o controle da carteira em si, e nenhum gerador, corretora ou atendente legítimo tem qualquer motivo para pedir uma.
Um código impresso danificado ou sujo pode mandar fundos para o endereço errado?
Não. Os QR Codes carregam correção de erros Reed-Solomon, e o decodificador ou reconstrói a string original exata ou falha de vez — ele não devolve um endereço plausível porém diferente. Dano além da capacidade de recuperação produz uma falha de leitura, o que é seguro. O risco de verdade é um endereço errado codificado corretamente desde o começo.
Por que a opção Ethereum esconde os campos de rótulo e mensagem?
Porque a EIP-681 não os define. Acrescentar parâmetros que uma especificação não descreve faz com que as carteiras ou os ignorem ou tratem a URI como malformada, e uma URI malformada é pior do que um rótulo ausente. O BIP-21 e o Solana Pay definem rótulo e mensagem, então os campos aparecem para aquelas quatro redes.
Isso funciona para um token em vez da moeda nativa?
Por esta página, não. Transferências ERC-20 pela EIP-681 precisam de um endereço de contrato e de uma chamada de função na URI, e o Solana Pay precisa de um parâmetro spl-token de mint — os dois são fáceis de errar de formas sutis que perdem fundos. Use o recurso de solicitação da sua própria carteira, que conhece as casas decimais e o contrato do token.
Como funciona um QR Code estático
Todo código deste site é estático: o payload é escrito nos próprios módulos pretos e brancos. Nada é consultado quando o código é lido, nenhum servidor nosso participa e nenhuma assinatura sustenta o código impresso. Essa mesma propriedade é o limite — depois de impresso, o que ele contém não pode ser alterado.
Três coisas decidem então se um código impresso é lido: quantos bytes o payload ficou, qual nível de recuperação absorve o dano e que largura um único módulo acaba tendo no papel. Estes guias percorrem cada uma delas com os números.