--- !ruby/object:RI::ClassDescription 
attributes: 
- !ruby/object:RI::Attribute 
  comment: 
  - !ruby/struct:SM::Flow::P 
    body: Essential attributes for a valid, non-bogus creditcards
  name: first_name
  rw: RW
- !ruby/object:RI::Attribute 
  comment: 
  - !ruby/struct:SM::Flow::P 
    body: Required for Switch / Solo cards
  name: issue_number
  rw: RW
- !ruby/object:RI::Attribute 
  comment: 
  - !ruby/struct:SM::Flow::P 
    body: Essential attributes for a valid, non-bogus creditcards
  name: last_name
  rw: RW
- !ruby/object:RI::Attribute 
  comment: 
  - !ruby/struct:SM::Flow::P 
    body: Essential attributes for a valid, non-bogus creditcards
  name: month
  rw: RW
- !ruby/object:RI::Attribute 
  comment: 
  - !ruby/struct:SM::Flow::P 
    body: Essential attributes for a valid, non-bogus creditcards
  name: number
  rw: RW
- !ruby/object:RI::Attribute 
  comment: 
  - !ruby/struct:SM::Flow::P 
    body: Required for Switch / Solo cards
  name: start_month
  rw: RW
- !ruby/object:RI::Attribute 
  comment: 
  - !ruby/struct:SM::Flow::P 
    body: Required for Switch / Solo cards
  name: start_year
  rw: RW
- !ruby/object:RI::Attribute 
  comment: 
  - !ruby/struct:SM::Flow::P 
    body: Essential attributes for a valid, non-bogus creditcards
  name: type
  rw: RW
- !ruby/object:RI::Attribute 
  comment: 
  - !ruby/struct:SM::Flow::P 
    body: Optional verification_value (CVV, CVV2 etc). Gateways will try their best to run validation on the passed in value if it is supplied
  name: verification_value
  rw: RW
- !ruby/object:RI::Attribute 
  comment: 
  - !ruby/struct:SM::Flow::P 
    body: Essential attributes for a valid, non-bogus creditcards
  name: year
  rw: RW
class_methods: 
- !ruby/object:RI::MethodSummary 
  name: requires_verification_value?
comment: 
- !ruby/struct:SM::Flow::H 
  level: 2
  text: Description
- !ruby/struct:SM::Flow::P 
  body: This credit card object can be used as a stand alone object. It acts just like an ActiveRecord object but doesn't support the .save method as its not backed by a database.
- !ruby/struct:SM::Flow::P 
  body: For testing purposes, use the 'bogus' credit card type. This card skips the vast majority of validations. This allows you to focus on your core concerns until you're ready to be more concerned with the details of particular creditcards or your gateway.
- !ruby/struct:SM::Flow::H 
  level: 2
  text: Testing With CreditCard
- !ruby/struct:SM::Flow::P 
  body: "Often when testing we don't care about the particulars of a given card type. When using the 'test' mode in your Gateway, there are six different valid card numbers: 1, 2, 3, 'success', 'fail', and 'error'."
- !ruby/struct:SM::Flow::H 
  level: 2
  text: Example Usage
- !ruby/struct:SM::Flow::VERB 
  body: "  cc = CreditCard.new(\n    :first_name =&gt; 'Steve',\n    :last_name  =&gt; 'Smith',\n    :month      =&gt; '9',\n    :year       =&gt; '2010',\n    :type       =&gt; 'visa',\n    :number     =&gt; '4242424242424242'\n  )\n\n  cc.valid? # =&gt; true\n  cc.display_number # =&gt; XXXX-XXXX-XXXX-4242\n"
constants: []

full_name: ActiveMerchant::Billing::CreditCard
includes: 
- !ruby/object:RI::IncludedModule 
  name: CreditCardMethods
- !ruby/object:RI::IncludedModule 
  name: Validateable
instance_methods: 
- !ruby/object:RI::MethodSummary 
  name: display_number
- !ruby/object:RI::MethodSummary 
  name: expired?
- !ruby/object:RI::MethodSummary 
  name: expiry_date
- !ruby/object:RI::MethodSummary 
  name: first_name?
- !ruby/object:RI::MethodSummary 
  name: last_digits
- !ruby/object:RI::MethodSummary 
  name: last_name?
- !ruby/object:RI::MethodSummary 
  name: name
- !ruby/object:RI::MethodSummary 
  name: name?
- !ruby/object:RI::MethodSummary 
  name: validate
- !ruby/object:RI::MethodSummary 
  name: verification_value?
name: CreditCard
superclass: Object
