API de Identificação de Bandeira de Cartão de Crédito
Este projeto é uma pequena API desenvolvida em PHP que identifica a bandeira de cartões de crédito com base no número informado na URL.
Tecnologias Utilizadas
-
PHP 7 ou superior
-
JSON para retorno de dados
Como Funciona
A API recebe o número do cartão via parâmetro na URL e retorna um JSON informando a bandeira do cartão de crédito ou se a bandeira é desconhecida.
Regras de Identificação:
| Bandeira | Regra |
| ---------------- | ---------------------------------------------------------------------------- |
| Visa | Inicia com 4 |
| Mastercard | Inicia entre 51-55 ou entre 2221-2720 |
| Elo | Inicia com diversos prefixos como 4011, 4312, 4389, entre outros |
| American Express | Inicia com 34 ou 37 |
| Discover | Inicia com 6011, 65 ou entre 644-649 |
| Hipercard | Inicia com 6062 |
Como Usar
-
Suba o arquivo PHP em seu servidor.
-
Acesse a API pela URL com o número do cartão como parâmetro.
Exemplo de Requisição:
http://seuservidor.com/cartao.php?numero_cartao=4111111111111111
Resposta:
{
"numero_cartao": "4111111111111111",
"bandeira": "Visa"
}
Tratamento de Erros
Caso o número do cartão não seja informado, a API retornará:
{
"erro": "Número do cartão não informado"
}
Melhorias Futuras
-
Validação mais rigorosa para números de cartão inválidos.
-
Suporte a mais bandeiras.
-
Endpoint POST para maior segurança.
Credit Card Brand Identification API
This project is a small PHP API that identifies credit card brands based on the number provided in the URL.
Technologies Used
-
PHP 7 or higher
-
JSON for data response
How It Works
The API receives the card number via URL parameter and returns a JSON informing the credit card brand or if the brand is unknown.
Identification Rules:
| Brand | Rule |
|----------------|-------------------------------------------------------|
| Visa | Starts with 4 |
| Mastercard | Starts between 51-55 or between 2221-2720 |
| Elo | Starts with various prefixes like 4011, 4312, 4389, among others |
| American Express | Starts with 34 or 37 |
| Discover | Starts with 6011, 65 or between 644-649 |
| Hipercard | Starts with 6062 |
How to Use
-
Upload the PHP file to your server.
-
Access the API via URL with the card number as a parameter.
Request Example:
http://yourserver.com/card.php?numero_cartao=4111111111111111
Response:
{
"numero_cartao": "4111111111111111",
"bandeira": "Visa"
}
Error Handling
If the card number is not provided, the API will return:
{
"erro": "Card number not provided"
}
Future Improvements
-
Stricter validation for invalid card numbers.
-
Support for more brands.
-
POST endpoint for better security.