Publicidade

Números de cartão

Geradores de cartão de crédito funcionam?

Sim e não. Um gerador de cartão de crédito produz números que parecem reais e passam nas validações de formato, mas eles não estão ligados a nenhuma conta bancária. Este guia explica exatamente o que um gerador faz, por que o resultado nunca pode pagar nada e em que situações ele é uma ferramenta realmente útil.

Pela equipe FakecreditcardPublicado 9 min de leitura

Publicidade

Pontos-chave

  • Um gerador combina um prefixo real da bandeira, dígitos aleatórios e um dígito verificador de Luhn. O resultado só passa em validações de formato.
  • Nenhum banco emissor tem uma conta por trás de um número gerado, então toda autorização real é recusada. O número não guarda dinheiro nem limite de crédito.
  • Gerar números para testes é legal na maioria dos países; usar um número de cartão sem autorização para obter produtos ou serviços é fraude.
  • Use números gerados para validar formulários, interfaces e dados de demonstração. Para pagamentos em sandbox, use os cartões de teste oficiais do seu gateway.
Nesta página
  1. O que é, de fato, um gerador de cartão
  2. Como os números são montados, passo a passo
  3. Por que números gerados não têm dinheiro
  4. O que acontece quando alguém tenta pagar com um deles
  5. Geradores de cartão de crédito são legais?
  6. Usos legítimos para números gerados
  7. Números gerados, cartões de teste do gateway e cartões reais
  8. Como diferenciar um número gerado de um cartão real
  9. Perguntas frequentes

Pesquise “gerador de cartão de crédito” e você vai encontrar dezenas de ferramentas que criam números convincentes em um clique, com data de validade, CVV e às vezes até o nome do titular. É natural perguntar se esses números “funcionam”. A resposta honesta depende do que você entende por funcionar: eles funcionam muito bem como dados de teste e nunca funcionam como dinheiro.

O que é, de fato, um gerador de cartão

Um gerador de cartão de crédito é um pequeno programa que monta números seguindo a estrutura pública dos números de cartão de pagamento. Essa estrutura é definida pela norma internacional ISO/IEC 7812 e pelas faixas que cada bandeira publica. Não há nada de secreto nela: todo desenvolvedor que cria um formulário de pagamento precisa conhecê-la.

Um número de cartão (o PAN) tem três partes:

ParteDígitosO que identifica
Número de identificação do emissor (IIN / BIN)Os 6 ou 8 primeirosA bandeira e a faixa do banco emissor, por exemplo 4 para Visa, 51–55 ou 2221–2720 para Mastercard
Identificador da contaOs dígitos do meioA conta que o emissor atribuiu ao titular
Dígito verificadorO últimoUma soma de verificação de Luhn que detecta erros de digitação

O gerador preenche esse modelo: escolhe um prefixo válido para a bandeira selecionada, completa o meio com dígitos aleatórios e calcula o último dígito para que o número inteiro passe no algoritmo de Luhn. Em geral ele também acrescenta uma data de validade futura e um código de segurança aleatório de três ou quatro dígitos, para que o resultado preencha todos os campos de um formulário de pagamento.

Como os números são montados, passo a passo

Este é o processo completo para um número de 16 dígitos no formato Visa:

  1. Prefixo. Números Visa começam com 4. O gerador também pode usar um prefixo mais longo informado por você, como um BIN de seis dígitos.
  2. Corpo. Dígitos aleatórios ocupam as posições 2 a 15.
  3. Dígito verificador. A soma de Luhn dos 15 primeiros dígitos define o 16º. A partir do último desses dígitos, um sim, um não é dobrado (subtraindo 9 se o resultado passar de 9), tudo é somado e o dígito verificador é o que leva o total ao próximo múltiplo de 10.
  4. Extras. Um mês aleatório e um ano alguns anos à frente, um CVV aleatório do tamanho certo e, opcionalmente, um nome inventado.

A mesma lógica em poucas linhas de Python mostra como há pouca coisa por trás:

Python
import secrets

def digito_luhn(base: str) -> int:
    total = 0
    for i, ch in enumerate(reversed(base)):
        d = int(ch)
        if i % 2 == 0:          # um sim, um não à esquerda do dígito verificador
            d = d * 2 - 9 if d > 4 else d * 2
        total += d
    return (10 - total % 10) % 10

def numero_visa_de_teste() -> str:
    base = '4' + ''.join(str(secrets.randbelow(10)) for _ in range(14))
    return base + str(digito_luhn(base))

print(numero_visa_de_teste())   # ex.: 4539718704123362 – formato válido, sem conta por trás

Isso é tudo o que um gerador faz. Não existe conexão com banco, nem banco de dados de cartões reais, nem forma de “descobrir” uma conta ativa. O nosso gerador de cartões roda inteiramente no seu navegador com a API Web Crypto e não envia nada a nenhum servidor.

Publicidade

Por que números gerados não têm dinheiro

Um número de cartão é um identificador, não um cofre. O saldo, o limite de crédito e a identidade do titular ficam nos sistemas do banco emissor. Quando você paga, o número é apenas a chave que o banco usa para encontrar a conta. Se não existe conta para essa chave, não há nada para gastar.

Pense no formato de um endereço postal. Qualquer pessoa pode escrever um endereço perfeitamente formatado, mas isso não constrói uma casa, e as cartas enviadas para lá voltam ao remetente. Um número gerado é um endereço bem escrito sem casa no final.

Por isso as promessas de cartões gerados “com saldo”, “com limite” ou “válidos para compras” são falsas por definição. Uma ferramenta em um site não consegue criar dinheiro no livro contábil de um banco. As páginas que prometem isso costumam ser golpes que espalham malware, capturam os dados do cartão do próprio visitante ou vendem listas sem valor.

O que acontece quando alguém tenta pagar com um deles

Todo pagamento com cartão é autorizado em tempo real. O provedor de pagamentos da loja envia a solicitação pela rede da bandeira até o emissor dono da faixa de BIN. Várias verificações acontecem no caminho, e um número gerado falha em pelo menos uma delas, sempre:

VerificaçãoQuem fazNúmero gerado
Prefixo da bandeira, tamanho e soma de LuhnFormulário de pagamento, gatewayPassa: é a única coisa que um gerador garante
O BIN está atribuído e ativoBandeira, gatewayPode passar, se o prefixo pertencer a um emissor real
A conta existe no emissorBanco emissorFalha: o emissor não encontra a conta e recusa (normalmente com “número de cartão inválido”)
Validade e CVV conferem com a contaBanco emissorFalha: o emissor calcula o CVV verdadeiro com chaves secretas, então um código aleatório não pode ser validado
Endereço (AVS), 3-D Secure, análise de riscoEmissor, gateway, lojaFalha ou é marcado como suspeito

Ou seja, um número gerado chega no máximo até o emissor e é recusado ali. Além disso, tentativas repetidas com números aleatórios se parecem exatamente com o ataque de teste de cartões (card testing), que lojas e provedores de pagamento detectam e bloqueiam ativamente, muitas vezes bloqueando o dispositivo ou o endereço IP envolvido.

Geradores de cartão de crédito são legais?

Gerar números que seguem um formato público é, em geral, legal. Desenvolvedores, equipes de QA e professores fazem isso todos os dias, e os próprios gateways de pagamento publicam números de teste pelo mesmo motivo. O problema legal começa quando um número é usado para obter alguma coisa.

  • No Brasil, o Código Penal pune o estelionato (art. 171), inclusive a fraude eletrônica incluída pela Lei 14.155/2021, e equipara o cartão de crédito ou débito a documento particular para o crime de falsificação (art. 298, parágrafo único, incluído pela Lei 12.737/2012).
  • Nos Estados Unidos, a lei 18 U.S.C. § 1029 torna crime federal produzir, usar ou traficar, conscientemente e com intenção de fraudar, dispositivos de acesso falsificados, ou usar dispositivos não autorizados. A definição legal de dispositivo de acesso inclui expressamente números de conta.
  • No Reino Unido, o Fraud Act 2006 pune quem faz de forma desonesta uma declaração falsa para obter vantagem, como apresentar dados de um cartão que não tem direito de usar.

A fronteira está na intenção e no uso, não na matemática. Gerar números no estilo 4111 1111 1111 1111 para testar um formulário não tem problema. Digitar um número gerado em uma loja real, no cadastro de uma assinatura ou em um site de reservas para obter algo sem pagar tem, mesmo que a tentativa falhe. Esta é uma informação geral, não aconselhamento jurídico; se você tem uma dúvida legal específica, consulte um advogado.

Períodos de teste grátis não são exceção

Serviços de assinatura quase sempre verificam o cartão com uma pequena autorização antes de liberar o teste. Um número gerado é recusado nessa etapa, e usá-lo continua sendo uma declaração falsa. Se você quer evitar renovações inesperadas, use um cartão virtual do seu próprio banco com limite de gastos, ou cancele antes do fim do teste.

Usos legítimos para números gerados

Dentro desses limites, números gerados são realmente úteis. Eles resolvem um problema concreto: você nunca deve colocar dados de cartões reais em sistemas de desenvolvimento ou de teste, onde eles ficariam sujeitos aos requisitos do PCI DSS.

  • Validação de formulários. Confira se o seu checkout aceita todas as bandeiras e tamanhos (American Express com 15 dígitos, Diners Club com 14, UnionPay com 19) e recusa um dígito verificador errado.
  • Detecção de bandeira e máscaras de entrada. Garanta que o logotipo certo apareça e que o número seja agrupado corretamente (4-6-5 para Amex, 4-4-4-4 para quase todas as outras).
  • Dados de demonstração e de homologação. Preencha painéis administrativos, capturas de tela e demos comerciais com valores realistas, mas inofensivos, de preferência armazenados apenas mascarados.
  • Testes unitários e fuzzing. Passe milhares de números válidos e inválidos por parsers, camadas de tokenização e scripts de importação.
  • Ensino. Mostre como funcionam os dígitos verificadores e as faixas dos emissores.

Números gerados, cartões de teste do gateway e cartões reais

Números gerados deixam de ser úteis assim que a requisição sai do seu próprio código. Sandboxes de pagamento, como o modo de teste da Stripe ou o sandbox do Braintree, só reconhecem os números de cartão de teste específicos que publicam, e cada um deles provoca um resultado definido.

Número geradoCartão de teste do gatewayCartão real
Passa nas validações de formato e LuhnSimSimSim
Conta em um emissorNãoSimulada pelo gatewaySim
Funciona no sandbox de um gatewayEm geral é recusadoSim, com resultado definidoNão deve ser usado
Funciona em pagamentos reaisNão, é recusadoNão, é recusadoSim
Movimenta dinheiro realNuncaNuncaSim
Indicado paraFormulários, interface, fixtures, demosTestes de pagamento de ponta a pontaApenas produção

A Stripe deixa isso claro na documentação de testes: não use dados de cartões reais, e o contrato de serviços dela proíbe testar no modo live com dados de pagamento reais. Use as chaves de API de teste e os cartões de teste documentados. O nosso guia (em inglês) sobre como testar um checkout da Stripe mostra o fluxo completo.

Como diferenciar um número gerado de um cartão real

Só pelos dígitos, não dá: essa é justamente a ideia de um número com formato válido. Um validador confirma a bandeira, o tamanho e a soma de verificação, e uma consulta de BIN mostra qual emissor é dono do prefixo, mas só uma autorização junto ao emissor prova que a conta existe. O nosso guia sobre como identificar um número de cartão falso explica quais verificações uma loja pode fazer e o que cada uma realmente comprova.

Perguntas frequentes

Dá para comprar algo com um número de cartão gerado?

Não. O número não está ligado a uma conta em nenhum banco, então o emissor recusa a autorização. Tentar usá-lo como pagamento também é tentativa de fraude.

Cartões gerados vêm com dinheiro ou saldo?

Não. O dinheiro e o limite de crédito ficam nos sistemas do banco emissor, não nos dígitos do cartão. Sites que prometem cartões gerados “com saldo” são golpes, muitas vezes feitos para roubar os seus próprios dados.

Geradores de cartão de crédito são legais?

Gerar números que seguem um formato público é, em geral, legal e faz parte da rotina de testes de software. Usar um número para obter produtos, serviços ou períodos de teste sem autorização é fraude em praticamente todos os países. Esta é uma informação geral, não aconselhamento jurídico.

Um cartão gerado serve para um período de teste grátis?

Não. A maioria dos serviços de assinatura verifica o cartão com uma pequena autorização (muitas vezes de 0 ou 1 dólar) que o emissor recusa. Se você quer controlar as cobranças de um teste, use um cartão virtual do seu próprio banco.

Por que um número gerado passa em um validador de cartão?

Um validador só confere o formato: o prefixo da bandeira, o tamanho e a soma de verificação de Luhn. Essas regras são públicas, então um gerador consegue cumpri-las. Só o banco emissor pode dizer se a conta existe.

Quais números devo usar no sandbox da Stripe ou do PayPal?

Os cartões de teste que cada gateway documenta. Os sandboxes só reconhecem esses números, e cada um produz um resultado definido: aprovação, recusa ou desafio de 3-D Secure.

Fontes

  1. ISO/IEC 7812-1:2017 — Cartões de identificação, identificação de emissores, sistema de numeração (ISO)
  2. Stripe Docs — Testing (cartões de teste e uso no modo live)
  3. Lei nº 14.155/2021 — fraude eletrônica (Planalto)
  4. Lei nº 12.737/2012 — inclui o parágrafo único do art. 298 do Código Penal (Planalto)
  5. 18 U.S. Code § 1029 — Fraude com dispositivos de acesso (Cornell LII)
  6. Fraud Act 2006, seção 2 (legislation.gov.uk)

Ferramentas deste guia

Escrito para desenvolvedores, equipes de QA e lojistas. Os números gerados são dados de teste: não são cartões reais e não servem para pagar.

Publicidade