INTEGRATION
TRANSACTION ASSURANCE
CHARGES
DISPUTES & FRAUD
Card Info
Information returned in the response is sourced directly from the card networks' BIN tables and updated daily. Integrating with them can remove the need to continuously update and maintain offline lists of card ranges used in pre-processing and assist in accurate routing.
The card number for which the information is requested should be submitted in the cardNumber field, allowing partial card ranges to be entered. The full PAN is not required to be sent; if fewer digits are sent, we will append 0 to make the PAN big enough. However, it is advised to enter at least the full card range (first 12 digits) or the full card number to get the best result since issuers can sub-split card products.
The API response also indicates the source from which the information of that particular card range has been pulled. Please note that the card ranges of a card scheme are, in some cases, also listed in the BIN table for other schemes that allow for cross-network processing. By default, the API response will give a result from the best possible source, also when entries have been found in multiple tables. It is possible to set the infoSource
property to a particular card scheme, forcing the information to be sourced from that BIN table if present. In the API response, the card scheme to which the card range belongs is indicated in the primaryCardNetwork
field. For some card ranges, this field may return unknown, which suggests that these card ranges are, for example, private label or proprietary ATM cards.
In Europe, an Issuer may be registered in one country but be able to pass their license and issue cards in other countries. For example, a German Issuer that also issues cards to customers in the Netherlands. In this example, the Issuer country will still be Germany, but the Cardholder country will be the Netherlands. For calculating Interchange and Scheme fees, the cardholder country should be used.
Most of the information returned by the card info API is generalized across the different supported card networks to make it easier to process card info from different card networks in the same way. However, some information is only available for a specific card network, and some fields have particular codes only defined within a specific card network. This information is available in the optional fields mastercardCardInfo
, visaCardInfo,
and bancontactCardInfo
. The fields will only be present if the card info is sourced from the corresponding card network, as reported in the infoSource
field. For example, if the infoSource field has the value Mastercard, the mastercardCardInfo
field will be present. In the event of a co-branded card, we will always share the additional card info for the larger card network unless the other network is specified in the infoSource field (e.g., a co-branded Visa and Bancontact card would always return the visaCardInfo
unless Bancontact was defined as the infoSource
.
Next, to request details on a single card range, on the Silverflow Platform, it is possible to retrieve all the card ranges per card network by doing a GET to the /cardInfo/{network}
endpoint. The network for which you are trying to retrieve that card range should be provided in {network}
in the endpoint as a path parameter.
This API response will contain a large amount of information. To make such responses easier to handle, we have introduced a way to receive compressed chunked JSON on this endpoint. To use it, you need to set the header Accept-Encoding: gzip, and instead of plain JSON, you will receive a gzipped one in a chunked manner.
The Card Info Service provides information of the ranges of payment card numbers provided by the card networks, however not all card ranges are included in the service for various reasons.This below contains a summary of the various checks that may exclude a BIN range for each of the card networks supported on the Silverflow platform.
American Express
During the initialisation of AMEX ranges, any card range with the issuer name JCB
are ignored and won’t be found during lookup.
Bancontact
Bancontact has no exclusion rules.
Discover
Discover has no exclusion rules.
Mastercard
The Mastercard and Visa lookups will sometimes overlap and cause multiple results from the mentioned card networks and may in some cases also include Bancontact details.The rule is simple: If the BIN starts with 4, default to Visa as primary card network and attach Mastercard and Bancontact as secondary networks, if they exist. Any other BIN range will default to Mastercard as primary card network and attach the other two to the result, if they exist for the given BIN range.Mastercard will exclude results from the lookup that match one of the following criteria:
Card program identifier code is
CIR
AND the member ID is00000003466
, as these are ATM cards, and this functionality is not supported by Silverflow at the moment.Card program identifier code is
VIS
meaning it is a Visa only card.
Visa
Same as Mastercard, the Visa lookups will could overlap with Mastercard and Bancontact results. Rules are the same, as detailed under the Mastercard section above.Visa lookups will exclude results that match any of these criteria:
Product ID is any of the following values
AX
American ExpressM
MastercardDN
DinersDI
DiscoverJC
JCB
Visa Product ID is any of:
R
ProprietaryE
Proprietary ATMQ
Private labelQ2
Private label