# Support
source: https://developer.mastercard.com/bin-lookup/documentation/support/index.md

## FAQ {#faq}

### General {#general}

The BIN Lookup API provides data for all Mastercard and Maestro BIN account ranges:

* **Mastercard account ranges:** 222100--272099 / 510000--559999
* **Maestro account ranges:** 639000--639099 / 670000--679999

Cards from other networks with first digits outside of these ranges are not covered by the Mastercard BIN Lookup API.
The Mastercard BIN Lookup service supports a wide range of use cases, including:

* **Transaction Routing:** Enabling optimized routing decisions based on card type or funding source.
* **Fraud Prevention:** Enhancing fraud models to minimize false declines.
* **Transaction Eligibility:** Determining card suitability for specific use cases, such as prepaid or domestic-only cards.
* **Benefit Eligibility:** Verifying card eligibility for benefits like rewards, based on issuer or region.
* **Analytics:** Facilitating insights based on card types, product codes, or other attributes.

Note: The Mastercard BIN Lookup API provides the most up-to-date and accurate BIN data on Mastercard account ranges. Data sourced from non-certified third parties may be incomplete, outdated, or both, leading to increased fraud risks, incorrect decision-making, false declines, and customer dissatisfaction. Mastercard discourages merchants and processors from using unauthorized BIN data solutions because they can be detrimental to your business and may lead to avoidable risk. The Mastercard BIN Lookup API is accessible to any stakeholder in the payment ecosystem, including:

* Merchants
* Payment companies processing Mastercard transactions
* Payment facilitators, gateways, and orchestrators
* ISVs, POS, and terminal providers
* Companies advising merchants on fraud prevention or payment optimization

Access is limited by the agreement for your organization. You may not resell, sublicense, or redistribute BIN data or API access unless Mastercard has approved a separate written agreement.
The Mastercard BIN Lookup API service is available globally.
Note: Availability is restricted in sanctioned countries.

### Onboarding {#onboarding}

For pricing details, contact your assigned Account Manager or send a query to [DBN.BinTableResource.Support@mastercard.com](mailto:DBN.BinTableResource.Support@mastercard.com). The Mastercard BIN Lookup API provides the most up-to-date and accurate BIN data on Mastercard account ranges. Data sourced from non-certified third parties may be incomplete, outdated, or both, leading to increased fraud risks, incorrect decision-making, false declines, and customer dissatisfaction. To learn about the end-to-end process from Sandbox to Production see [Onboarding Checklist](https://developer.mastercard.com/bin-lookup/documentation/onboarding-checklist/index.md)

For questions or if timelines are exceeded, contact the team at [DBN.BinTableResource.Support@mastercard.com](mailto:DBN.BinTableResource.Support@mastercard.com).

### Data and Coverage {#data-and-coverage}

The [Simplified BIN Account Range Table (SBART)](https://developer.mastercard.com/sbart-bin/documentation) file provides a limited subset of BIN data fields and is updated daily. To access the SBART file, you must sign in to your Mastercard Developers account. When requesting access for the first time, you must provide a description of the intended use case. Compared to the SBART file, the BIN Lookup API includes additional fields such as:

* `binNum`
* `binLength`
* `country.code`
* `country.name`
* `localUse`
* `authorizationOnly`
* `governmentRange`
* `nonReloadableIndicator`
* `anonymousPrepaidIndicator`
* `fundingSource`
* `consumerType`
* `cardholderCurrencyIndicator`
* `billingCurrencyDefault`
* `smartDataEnabled`
* `affiliate`
* `comboCardIndicator`
* `flexCardIndicator`
* `paymentAccountType`
* `gamblingBlockEnabled`
* `moneySendCrossBorderIndicator`
* `moneySendDomesticIndicator`
* `fasterFundsCrossBorderIndicator`
* `fasterFundsDomesticIndicator`

Additional endpoint-specific fields may also be available (for example, `operation` in Delta API responses).

For full field definitions, see [Data Elements](https://developer.mastercard.com/bin-lookup/documentation/data-elements/index.md#account-range-data).
Data is updated every 24 hours at 12:35 AM CST. BIN Lookup displays the true owner of the account range, typically the sponsor. In cases where an affiliate uses an account range, the **Affiliate** field is updated with the name of the issuing entity appearing on the card. Yes, the API supports filtered searches based on various parameters like region, product code, and issuer. Refer to the [Filtering Tutorial](https://developer.mastercard.com/bin-lookup/documentation/tutorials-and-guides/filtering-tutorial/index.md) for more information. The `localUse` flag identifies whether cards within an account range may be used outside of the country of issuance. You can download a list of issuers in CSV format. See [Issuer List](https://developer.mastercard.com/bin-lookup/documentation/data-elements/index.md#issuer-list). You can view a list of all product codes in the [Data Elements](https://developer.mastercard.com/bin-lookup/documentation/data-elements/index.md#product-codes) section. If you believe you spotted incorrect BIN data, provide the following information to the Support team at [DBN.BinTableResource.Support@mastercard.com](mailto:DBN.BinTableResource.Support@mastercard.com):

* Account range (first 8 digits of the card)
* Description of the discrepancy and expected outcome
* Confirmation of checks on other cards with the same BIN
* Any steps required to reproduce the issue
These are valid Mastercard account ranges with accurate acceptance brands and brand products. They are labeled this way to indicate to our Mastercard system that these transactions need to be routed to the Mastercard Debit System.

### Integration and Troubleshooting {#integration-and-troubleshooting}

The BIN Lookup API uses synthetic monitoring to continuously verify that the API is available and functioning as expected. This information is publicly available, allowing you to check uptime and review any recent issues. Check the [status page](https://developer.mastercard.com/api-status) to view this information. The API uses OAuth 1.0a for secure authentication. You can manage authentication keys in your Mastercard Developers Dashboard. Refer to the [API Basics](https://developer.mastercard.com/bin-lookup/documentation/api-basics/index.md#client-authentication) section for best practices. Yes, a [sandbox environment](https://developer.mastercard.com/bin-lookup/documentation/api-basics/index.md#environments) is available for testing. The sandbox environment contains representative but non-production data, which helps you understand the data structure and API functionality before moving to production. For more information, go to [Testing](https://developer.mastercard.com/bin-lookup/documentation/testing/index.md). **Common causes:**

* Your consumer key does not match the one in your Mastercard Developers project.
* Your .p12 signing key file password is incorrect or the file is corrupted.
* The OAuth timestamp is too far from the server time (must be within five minutes).
* The request body was modified after the OAuth signature was computed.

<br />

**Step-by-step solution:**

1. Go to your [Mastercard Developers](https://developer.mastercard.com) project page and verify your consumer key.
2. Re-download your .p12 keystore file and confirm the password is correct.
3. Ensure your system clock is synchronized.
4. If using a custom HTTP client, verify the OAuth signature is computed over the exact request body being sent.
5. Test with the [Postman Collection](https://developer.mastercard.com/bin-lookup/documentation/developer-tools/postman-collection/index.md) to isolate whether the issue is in your signing implementation.

For more details, go to [Code and Formats](https://developer.mastercard.com/bin-lookup/documentation/code-and-formats/index.md).
**Common causes:**

* Your loop exits before all pages are fetched.
* The `size` parameter is changed between page requests.
* Network errors caused a page to fail silently without retry.

<br />

**Step-by-step solution:**

1. Ensure your loop continues while `currentPageNumber < totalPages`.
2. Keep the `size` parameter consistent across all requests.
3. Add retry logic for failed requests (wait 5--10 seconds, retry up to three times).
4. After the loop completes, compare the count of downloaded items to the `totalItems` value from the first page's metadata.

Go to the [Pagination Tutorial](https://developer.mastercard.com/bin-lookup/documentation/tutorials-and-guides/pagination-tutorial/index.md) for a full working example.
**Common causes:**

* Using a partial value on an exact-match field. Only `customerName` supports fuzzy matching; all other fields require exact values.
* Misspelled filter value or incorrect field name.

<br />

**Step-by-step solution:**

1. For `customerName`, try a shorter substring (for example, "CITI" instead of "CITIBANK N.A.").
2. For other fields (for example, `productCode`, `country.alpha3`), use exact values.
3. Verify the filter JSON syntax: it must be an array of objects with `key` and `value` fields.
4. Test with a known working filter (for example, `customerName: "NIUM FINTECH LIMITED"` in sandbox) to confirm your signing and request setup are correct.

Go to the [Filtering Tutorial](https://developer.mastercard.com/bin-lookup/documentation/tutorials-and-guides/filtering-tutorial/index.md) for a detailed walkthrough.

## Get Help {#get-help}

