silici0/credit-card-class

There is no license information available for the latest version (0.0.1) of this package.

0.0.1 2014-11-26 17:24 UTC

This package is auto-updated.

Last update: 2024-03-27 05:35:26 UTC


README

Simple PHP class for preparing and validating credit/debit card details. Typically this takes place before they are passed to a payment gateway for processing.

Example Usage

$card_details = array(
	'number' =>'4929000000006', 
	'expiry_year' => 2013,
	'expiry_month' => 5,
	'code' => '123'
);

$card = new Card();
$card->populate($card_details);

if (!$card->is_valid($message)) {
    // show error message
    echo 'There is a problem with your card details: ' . $message;
} else {
    // get the prepped, validated card data as an array
    $card_data = $card->to_array();
    // send $card_data to payment gateway
}

Data preparation

This class does some simple preparation of your card data. This includes removing non-numeric characters, including spaces, from:

  • The card number
  • The CVC/CV2 value
  • The card expiry date

Validation Checks

This class also checks:

  • That the card hasn't expired
  • A valid CVC/CV2 security code has been supplied
  • The card number passes the Luhn check