Search Tools Links Login

Credit Card Identification

Posted: 2002-06-01
By: ArchiveBot
Viewed: 77

Filed Under:

VB6 Code Cache

No attachments for this post


Determines type of Credit Card by it's number.

Original Author: John Anderson

Inputs

Card Number as String

Assumptions

This is based on documents from CyberCash's home page.

Returns

Card Type as String

Side Effects

Is not Year 2061 Compliant

API Declarations


Code

Public Function CardType(CCNum As String) As String
Dim Header As String
  Select Case Left$(CCNum, 1)
    Case "5"
      Header = Left$(CCNum, 2)
      If Header >= 51 And Header <= 55 And Len(CCNum) = 16 Then
        CardType = "MasterCard"
      End If
    Case "4"
      If Len(CCNum) = 13 Or Len(CCNum) = 16 Then
        CardType = "Visa"
      End If
    Case "3"
      Header = Left$(CCNum, 3)
      If Header >= 340 And Header <= 379 And Len(CCNum) = 15 Then
        CardType = "AMEX"
      End If
      If Header >= 300 And Header <= 305 And Len(CCNum) = 14 Then
        CardType = "Diners Club"
      End If
      If Header >= 360 And Header <= 369 And Len(CCNum) = 14 Then
        CardType = "Diners Club"
      End If
      If Header >= 380 And Header <= 389 And Len(CCNum) = 14 Then
        CardType = "Diners Club"
      End If
      If Header >= 300 And Header <= 399 And Len(CCNum) = 16 Then
        CardType = "JCB"
      End If
    Case "6"
      Header = Left$(CCNum, 4)
      If Header = "6011" And Len(CCNum) = 16 Then
        CardType = "Discover"
      End If
    Case "2"
      Header = Left$(CCNum, 4)
      If (Header = "2014" Or Header = "2149") And Len(CCNum) = 15 Then
        CardType = "enRoute"
      End If
      If Header = "2131" And Len(CCNum) = 15 Then
        CardType = "JCB"
      End If
    Case "1"
      Header = Left$(CCNum, 4)
      If Header = "1800" And Len(CCNum) = 15 Then
        CardType = "JCB"
      End If
  End Select
  If CardType = "" Then CardType = "Unknown"
End Function


Comments on this post

No comments have been added for this post.

You must be logged in to make a comment.