Batch CSV
The Batch page accepts a CSV file of BINs and returns a CSV file with one lookup for each row. You do not write code and you do not use an API key for this page.
This is the dashboard form of POST /v1/bins. The row limit, the data, and the quota rules are the same.
Availability
Batch CSV is included in BLAPI-500KPM (US$100 per month) and BLAPI-1MPM (US$200 per month). See Billing.
On other plans, the Batch page shows a preview and does not process the file. Change the plan to BLAPI-500KPM. An upgrade is active immediately. See Troubleshooting.
A test-mode organisation can use the page with mock data. The test-mode daily limit is 500 lookups. A test file with more than 500 data rows is rejected.
Any member of the organisation can use the page. No special role is required.
Run a batch
- Sign in at https://app.binlookupapi.com/ and open Batch.
- Read the remaining quota on the page. The whole file must fit in that quota.
- Drag the CSV file to the upload area, or select the area to choose a file.
- Select Process CSV.
- The browser downloads
<your-file>-enriched.csv.
The page then shows how many rows were found, how many were not found, and how many were not valid. Select Download again to download the same file.
The result stays in the browser only. The server does not store the result file. If you leave the page, the result is discarded.
File rules
| Rule | Detail |
|---|---|
| File size | 1 MB maximum. |
| Rows | 2,000 data rows maximum. |
| Columns | One column. Put one BIN on each line. |
| Header | Optional. A first row that is not a number, such as bin, is a header. The page does not look up a header. |
| Encoding | UTF-8. A byte order mark at the start is removed. |
| Line endings | LF, CRLF, and CR are accepted. |
| Blank lines | Ignored, including blank lines at the end. |
| Quotes | A fully quoted cell is accepted ("400062"). A doubled quote ("") is an escaped quote. |
Each value uses the same rules as one lookup. The range is 6 to 11 digits, from 100000 to 99999999999. Leading zeros are not significant. 0400062 is looked up as 400062. The bin column in the result repeats the text that you sent.
WARNING: Do not upload full card numbers. A value longer than 11 characters is replaced before it is stored. See Card number redaction.
Example input
bin
400062
99999999
invalid
4242424242424242
Output columns
The result always has these 15 columns, in this order:
bin,scheme,funding,brand,category,country_code,country_name,issuer_name,issuer_website,issuer_phone,currency,prepaid,commercial,longer_bin_available,error
| Column | Meaning |
|---|---|
bin | The value that you sent. |
scheme | The card network, in lower case. Example: visa. |
funding | credit, debit, prepaid, or unknown. |
brand | The brand as issued. Example: VISA. |
category | The product level. Examples: CLASSIC, SIGNATURE, BUSINESS. |
country_code | The ISO 3166-1 alpha-2 code. |
country_name | The name of the issuing country. |
issuer_name | The issuing bank. |
issuer_website | The issuer website, when it is known. |
issuer_phone | The issuer phone number, when it is known. |
currency | The ISO 4217 code of the issuing country. |
prepaid | true or false. |
commercial | true or false. |
longer_bin_available | true when a longer BIN can match a more specific record. |
error | Empty on success. Otherwise NOT_FOUND or BAD_REQUEST. |
An unknown value is an empty cell. Field definitions are in the API reference.
Example output
bin,scheme,funding,brand,category,country_code,country_name,issuer_name,issuer_website,issuer_phone,currency,prepaid,commercial,longer_bin_available,error
400062,visa,debit,VISA,SIGNATURE,AE,UNITED ARAB EMIRATES,EMIRATES NBD BANK (P.J.S.C.),http://www.emiratesnbd.com/en/,+971800456,AED,false,false,true,
99999999,,,,,,,,,,,,,,NOT_FOUND
invalid,,,,,,,,,,,,,,BAD_REQUEST
[REDACTED],,,,,,,,,,,,,,BAD_REQUEST
Row errors
The result has one row for each input row, in the same order. The page does not drop a row and does not reorder rows.
| Error code | Cause |
|---|---|
NOT_FOUND | The BIN is valid and is not in the dataset. |
BAD_REQUEST | The value is not a valid BIN. It is not numeric, it has fewer than 6 digits, or it has more than 11 characters. |
Card number redaction
A value longer than 11 characters can be a full card number. The bin column shows [REDACTED] and the error is BAD_REQUEST. The original value is not written to the result file or to the request log.
Quota
Each data row uses one lookup. This includes rows with NOT_FOUND or BAD_REQUEST. A file of 2,000 rows uses 2,000 lookups.
The page accepts the whole file or none of it. If the file needs more lookups than the remaining quota, the page does not charge the quota and does not write a request-log entry. The page shows the required count and the remainder:
Daily quota exceeded: this file needs 2,000 lookups but only 340 remain today (limit 10,000).
Split the file, or wait for the reset at 00:00 UTC. See Daily quota.
On BLAPI-1MPM, there is no reset at 00:00 UTC. A file can use the remaining included lookups and prepaid credits together. If it needs more than both, the page shows:
Not enough lookups left: this file needs 2,000 lookups but only 0 included lookups and 1,200 prepaid credits remain. Buy a credit pack on the Billing page.
The included lookups reset at the start of the next billing period. Until then, buy a prepaid credit pack on the Billing page. See Monthly allowance.
A successful run is one row on the Usage page. The unit count is the row count.
Upload errors
The page rejects the whole file and does not charge the quota when validation fails.
| Message | Cause |
|---|---|
Choose a CSV file to upload | You started the upload with no file. |
The CSV file must be 1 MB or smaller | The file is larger than 1 MB. |
The CSV file is empty | The file has no content. |
CSV contains no data rows | The file has only a header, or only blank lines. |
CSV has more than 2,000 data rows | The file has more than 2,000 data rows after the header. |
line 12 has multiple columns; upload a single-column CSV | That line has a comma that is not inside quotes. |
line 12 has malformed quotes | A quote on that line is not closed, or text follows the closing quote. |
Lookup backend error | The lookup service failed. Try again later. If it continues, contact support. |
The line number is the physical line in the file.
Batch CSV or the API
| Batch CSV | POST /v1/bins | |
|---|---|---|
| Interface | Dashboard upload | HTTP request |
| Limit | 2,000 BINs | 2,000 BINs |
| Output | CSV file, 15 columns | JSON, one object per BIN |
| Automation | Manual | A script can run it |
| Use it for | A spreadsheet or a one-time file | An application or a repeated job |
Both use the same quota rate. Both require BLAPI-500KPM or BLAPI-1MPM, or a test-mode organisation.