Gerador de Cartão de Crédito
Gera números de cartão de crédito válidos (Luhn).
Para que serve o gerador de número de cartão de crédito?
Desenvolvedores de sistemas de e-commerce, gateways de pagamento, formulários de checkout e sistemas financeiros precisam testar a validação de campos de cartão de crédito sem usar dados reais de cartões. Inserir números reais em ambientes de desenvolvimento e teste é uma violação grave de segurança e das normas PCI-DSS (Payment Card Industry Data Security Standard).
Esta ferramenta gera números de cartão que passam na validação pelo algoritmo de Luhn (a verificação matemática que todo sistema de pagamento usa), mas são números fictícios que não correspondem a nenhum cartão emitido por nenhuma instituição financeira.
Algoritmo de Luhn
O algoritmo de Luhn (também chamado "fórmula mod 10") é um método simples de checksum criado em 1954 por Hans Peter Luhn. Ele verifica se um número de cartão é matematicamente válido: dobra os dígitos em posições pares, soma os dígitos resultantes, e o total deve ser divisível por 10. Esse algoritmo detecta erros de digitação comuns, mas não verifica se o cartão existe de fato.
Bandeiras suportadas
Cada bandeira tem um prefixo específico: Visa começa com 4; Mastercard com 51-55; American Express com 34 ou 37; Discover com 6011 ou 65; Hipercard com 6062. Nosso gerador produz números para cada uma dessas bandeiras, com o número correto de dígitos (16 para Visa/Master, 15 para Amex) e passando no Luhn.
Aviso importante
Os números gerados servem exclusivamente para testes de software. Tentar usá-los em compras reais resultará em recusa imediata pelo gateway de pagamento. Usar dados de cartão (mesmo fictícios) para tentativas de fraude é crime. Para testes completos de fluxo de pagamento, use os ambientes sandbox das operadoras (Stripe, PagSeguro, Mercado Pago, Cielo) que fornecem credenciais de teste oficiais.
Como os números são construídos
O gerador monta o BIN da bandeira escolhida, preenche as posições intermediárias aleatoriamente e calcula o último dígito de modo que o número inteiro satisfaça o algoritmo de Luhn. O resultado passa em qualquer validação de front-end, exatamente como um cartão real passaria — e é esse o ponto: permitir testar o formulário de pagamento de ponta a ponta sem envolver um cartão de verdade.
Bandeiras e seus prefixos
O início do número, chamado BIN, identifica o emissor: 4 para Visa, 51 a 55 e 2221–2720 para Mastercard, 34 e 37 para American Express (15 dígitos, não 16), 36 e 38 para Diners, 606282 para Hipercard e 50, 636368 e 438935 para Elo. Ter números de bandeiras diferentes é útil para testar o roteamento por bandeira e a exibição do ícone correto no formulário.
Para testar de verdade, use os cartões do gateway
Vale distinguir dois cenários. Para exercitar máscara de entrada, validação de Luhn, detecção de bandeira e layout do formulário, os números gerados aqui bastam. Mas para testar o fluxo de transação — aprovação, recusa, saldo insuficiente, cartão expirado, antifraude, 3-D Secure —, você precisa dos cartões de teste oficiais do seu gateway. Stripe, Adyen, PagSeguro, Cielo, Mercado Pago e Pagar.me publicam listas de números em sandbox, cada um disparando um cenário específico de resposta. Um número gerado aleatoriamente vai simplesmente ser recusado, sem exercitar nenhum caminho interessante do código.
Boas práticas de segurança
Quem processa cartões está sujeito ao PCI DSS, que entre outras coisas proíbe armazenar o CVV em qualquer circunstância, exige mascarar o número em logs e telas, e recomenda fortemente tokenização — guardar um token do gateway em vez do número. Nunca registre número completo de cartão em log de aplicação, e jamais use dados de cartões reais em ambiente de homologação.
Aviso de uso
Os números gerados são fictícios: satisfazem o Luhn mas não estão vinculados a nenhuma conta, não têm limite e não podem ser autorizados por emissor algum. Tentar usá-los para compra é fraude e não funciona — a autorização depende do emissor, não do formato do número.
Continue por aqui
- Validador de cartão de crédito — para conferir na volta que o número gerado fecha — é o mesmo cálculo, algoritmo de Luhn, e não módulo 11, feito ao contrário.
Perguntas frequentes
Dá para comprar alguma coisa com o número gerado?
Não. Os números apenas satisfazem o algoritmo de Luhn: não estão vinculados a nenhuma conta, não têm limite e não podem ser autorizados por emissor algum. A autorização depende do emissor, não do formato do número — tentar usá-los para compra é fraude e simplesmente não funciona.
Então para que servem?
Para testar máscara de entrada, validação de Luhn, detecção de bandeira e layout de formulários de pagamento sem envolver um cartão real. É o caso de uso de desenvolvimento e homologação.
Como testar aprovação, recusa e antifraude?
Com os cartões de teste oficiais do seu gateway. Stripe, Adyen, PagSeguro, Cielo, Mercado Pago e Pagar.me publicam listas em sandbox, cada número disparando um cenário específico de resposta. Um número aleatório apenas seria recusado, sem exercitar caminho útil do código.
Posso armazenar o CVV para testes?
Não. O padrão PCI DSS proíbe armazenar o CVV em qualquer circunstância, exige mascarar o número em logs e telas e recomenda tokenização — guardar um token do gateway em vez do número do cartão.