Как определить разницу между дебетовой картой и кредитной

StackOverflow https://stackoverflow.com/questions/1479363

  •  18-09-2019
  •  | 
  •  

Вопрос

Как определить, что карта, которую вводит человек, является дебетовой картой, чековой карточкой или кредитной картой?

Я рассматриваю это только для веб-платежей в США.Это для выставления счетов за коммунальные услуги.

Это было полезно?

Решение

Я думаю, вас сбивает с толку тот факт, что, когда вы проводите карточкой в магазине, автомат знает, какой тип карты у вас есть.Хотя с моей голландской дебетовой картой у меня всегда была возможность выбора..

Но я предполагаю, что магнитная полоса хранит больше, чем просто номер, и считыватели карт используют это для определения вашего типа карты.

Вам просто нужно будет присоединиться к другим приложениям / сайтам и спросить пользователя :)

Другие советы

Лучший код, который я видел для проверки типа карты, - это страница Javascript на http://www.eflo.net/mod10.htm - может различать дебетовую и кредитную карты VISA по вашему запросу, а также множество других разновидностей карт.Я очень легко портировал этот код на C #.

Другой альтернативой является получение копии базы данных BIN (банковский идентификационный номер), которая представляет собой список всех префиксов карты, номера карты и требований к проверке карты (напримерДата истечения срока годности, Номер выпуска, Дата начала).Некоторые источники BIN;

не уверен, для чего вам это нужно, но все известные мне POS-системы ПРОСЯТ ПОЛЬЗОВАТЕЛЯ указать тип карты.

вы можете использовать Дебет как Кредит - нет необходимости вводить PIN-код
вы можете использовать Кредит как дебет - введите свой PIN-код, и транзакция будет засчитана как аванс наличными

Вики имеет списки кредитов по сравнениюдебетовые префиксы

Однако IIRC некоторые карты могут использоваться как кредитные, так и дебетовые в зависимости от контекста.

Вероятно, вы уже узнали об этом через свой платежный шлюз, но карты (дебетовые, кредитные, пользовательские [например, карты магазина]) нелегко отличить без небольшой помощи.Обычно вы можете отправить номер карты на платежный шлюз, и они предоставят вам эту информацию, но вы можете вычислить ее с помощью простой таблицы префиксов.

Проще говоря, каждому банку / организации предоставляется доступ к определенному набору префиксов [цифры в начале], и в зависимости от желаемого уровня детализации вы можете сопоставить любой номер карты с организацией, использующей префикс.Что приятно, так это то, что дебетовые и кредитные карты используют разные префиксы даже из одного банка.

С точки зрения веб-шлюза, вам обычно все равно, поскольку платежный шлюз автоматически сообщит вам, принимают ли они карту, выполнит для вас проверку по горячей карте и подтвердит другую введенную информацию.

Комментарий (выше / ниже) о том, что не нужно вводить свой PIN-код на дебетовой карте, неверен.Это не дебетовая карта, иногда называемая гаражными / топливными картами (откуда я родом), они работают только для определенных "транзакций типа топлива", чтобы ускорить обработку на привокзальной площади.

Диапазоны чисел.Вот небольшой отрывок из старой спецификации, которая у меня когда-то была.

  • 510000 - 510249 16 Теперь зарезервированы для Europay (MCS и MCG)
  • 510250 - 510399 16 Теперь дебетовая карта MasterCard
  • 510400 - 510549 16 Теперь MasterCard Электронная
  • 510550 - 510999 16 Теперь дебетовая карта MasterCard
  • 511000 - 511204 16 Теперь дебетовая карта MasterCard
  • 513000 - 513999 16 Теперь зарезервировано для использования ТОЛЬКО Europay France ICA - 1031
  • 514130 - 514629 16 Теперь дебетовая карта MasterCard
  • 514630 - 514730 16 Теперь визитная карточка MasterCard (ранее отмечалась как бизнес-дебетовая)
  • 514731 - 514740 16 Now World MasterCard (США)
  • 514741 - 514760 16 Теперь платиновая дебетовая карта MasterCard
  • 514761 – 514800 16 Теперь MasterCard Standard (предлагается новый Премиальный продукт – США) – 40
  • 514801 – 514815 16 Теперь MasterCard Standard (предлагается новый Премиальный продукт – LAC) – 15
  • 514816 - 514830 16 Теперь MasterCard Standard (предлагается новый Премиум-продукт - SAMEA) - 15

Вполне возможно, что к настоящему времени существуют другие методы, например, в возвратном сообщении от процессора, но мне уже давно не приходилось иметь с этим дело.Мы обрабатываем все как кредитную карту, и если карта является строго дебетовой, банк просто заботится об этом.

Binbase сообщит вам, является ли карта дебетовой или кредитной, основываясь на первых шести цифрах номера карты.Вы можете выполнять 10 ручных поисков в день или заплатить за покупку всей базы данных.www.binbase.com/search.html

Возвращаемая информация представлена в таком формате:

Card Brand: VISA
Issuing Bank: BRANCH BANKING AND TRUST COMPANY
Card Type (Credit/Debit): DEBIT
Card Level: CLASSIC
ISO Country Name: UNITED STATES
ISO Country A2 Code: US
ISO Country A3 Code: USA
ISO Country Number: 840
Bank Website: HTTP://WWW.EXAMPLE.COM
Bank Phone: 555-555-5555 OR 800-555-5555

Я нашел бесплатный json API для проверки файлов. https://api.freebinchecker.com/bin/{ячейка} для проверки номера одной ячейки.Он принимает номер длиной шесть, начальные цифры любой платежной карты.Приложение выполнит поиск по базе данных, чтобы вернуть всю соответствующую информацию, хранящуюся в ячейке, и более 350 000 записей.Там также есть премиум-функция.

Вы можете получить тип карты и другая соответствующая информация.Не нужен полный номер карты, кроме первых 6 цифр.

Пример:

**Request:**  
https://api.freebinchecker.com/bin/370245   

**Response:** 
{"valid":true,
"card":{  
    "status":"active",
    "brand":"VISA",
    "type":"credit",
    "category":"STANDARD",
    "sub-category":"The payment system \"Visa\""
},
"country":{  
    "name":"United States",
    "alpha-2-code":"US",
    "numeric-code":"840",
    "latitude":"37.09024",
    "longitude":"-95.712891"
},
"issuer":{  
    "name":"JPMORGAN CHASE BANK, N.A.",
    "url":"www.jpmorganchase.com",
    "tel":"1-800-565-3460-9200"
}}

Для получения дополнительной информации: Проверка на халяву

https://binlist.net/ предлагает бесплатный (с ограниченным тарифом) API.Вам нужно ввести только первые 6 или 8 цифр номера карты, т.е.идентификационные номера эмитента (IIN), ранее известные как идентификационный номер банка (BIN).

curl -H "Accept-Version: 3" "https://lookup.binlist.net/45717360"

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top