BYTETOOLS

Binlist API

Free BIN lookup API with no key: identify the issuing bank, card scheme, type and country from the first digits of a card number. Tested curl example.

No API key requiredHTTPSFree tier

Endpoint tested and returned HTTP 200 on 2026-08-20

What is the Binlist API?

Binlist is a free, key-free BIN (Bank Identification Number) lookup API that identifies the issuing bank, card scheme, card type and country from the first six to eight digits of a payment card number.

The first digits of a card number identify the issuer, not the cardholder. Looking them up tells you whether a card is Visa or Mastercard, debit or credit, and which country and bank issued it — useful for routing, fraud scoring and displaying the right card logo.

One point deserves emphasis: only ever send the BIN, never the full card number. The first six to eight digits are all that is needed, and they are not sensitive. Transmitting a complete PAN to a third-party service would be a serious compliance failure.

Quick facts

Base URL
https://lookup.binlist.net
Authentication
No API key required.
Rate limit
5 requests per hour per IP on the free tier — very tight.
Pricing
Free at low volume; commercial use needs a paid provider.
CORS
Not enabled — call it from your server
Official docs
Read the docs

How to use the Binlist API

Every request below was executed against the live API on 2026-08-20, and the response shown is the real body it returned — not an illustration.

1. Look up a card BIN

GET https://lookup.binlist.net/45717360

curl
curl 'https://lookup.binlist.net/45717360'
JavaScript (fetch)
const res = await fetch("https://lookup.binlist.net/45717360");
if (!res.ok) throw new Error(`Request failed: ${res.status}`);
const data = await res.json();
console.log(data);
Python (requests)
import requests

res = requests.get("https://lookup.binlist.net/45717360", timeout=20)
res.raise_for_status()
print(res.json())
Response — HTTP 200
{
  "number": {},
  "scheme": "visa",
  "type": "debit",
  "brand": "Visa Classic/Dankort",
  "country": {
    "numeric": "208",
    "alpha2": "DK",
    "name": "Denmark",
    "emoji": "🇩🇰",
    "currency": "DKK",
    "latitude": 56,
    "longitude": 10
  },
  "bank": {
    "name": "Jyske Bank A/S"
  }
}

Parameters

ParameterTypeRequiredDescription
<bin>pathRequiredFirst 6-8 digits of the card number. Never send the full PAN. 45717360

Response fields

schemestring
visa, mastercard, amex and so on.
typestring
debit, credit or prepaid.
brandstring
Product name such as Visa Classic.
countryobject
Issuing country with code, name, currency and emoji flag.
bankobject
Issuing bank name, URL and phone, where known.
prepaidboolean
Whether the card is prepaid.

What you can build with the Binlist API

  • Show the correct card scheme logo during checkout
  • Route payments based on card type or issuing country
  • Add issuer signals to fraud scoring
  • Detect prepaid cards where your policy restricts them

Common errors and how to fix them

429

The free tier allows only 5 requests per hour per IP.

Fix: This is very tight — use a commercial BIN provider for anything production.

404

The BIN is not in the database.

Fix: Coverage is good but not complete; fall back gracefully rather than blocking the payment.

Empty bank object

Issuer details are not always known.

Fix: Scheme and type are usually present even when the bank name is not.

Binlist API — frequently asked questions

Is BIN lookup free?

Binlist is free with no API key, but limited to just 5 requests per hour per IP. That is fine for testing and unusable for production — use a commercial provider at volume.

Is it safe to send card numbers to this API?

Only send the first six to eight digits — the BIN. Those identify the issuer, not the cardholder, and are not sensitive. Never transmit a full card number to a third-party lookup service.

What can a BIN tell me?

The card scheme, whether it is debit, credit or prepaid, the issuing bank and the issuing country — useful for checkout UX, routing and fraud signals.

Is the data complete?

Coverage is good but not exhaustive, particularly for smaller regional issuers. Handle 404s gracefully rather than blocking a transaction.

Tools that pair with this API

Binlist is an independent third-party service and is not affiliated with ByteTools or ByteVancer. Details on this page were verified on 2026-08-20; always check the official documentation before relying on this API in production, as terms and limits can change.