X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=InternetSecure.pm;h=a4cd4ed66824bc32bfbc02fd3f6f29c284e6c566;hb=b2492009212a9e84abac9f50f9e7ac26ec72f610;hp=964eb9e2e5a872626e8a5cd07b5547517431d503;hpb=4b7a5ee304316798c4ad690dbadbcf5f0fe125fa;p=Business-OnlinePayment-InternetSecure.git diff --git a/InternetSecure.pm b/InternetSecure.pm index 964eb9e..a4cd4ed 100755 --- a/InternetSecure.pm +++ b/InternetSecure.pm @@ -79,13 +79,13 @@ sub parse_expdate { my ($y, $m); - if (/^(\d{4})\W(\d{1,2})$/ || # 2004.07 or 2004-7 - /^(\d\d)\W(\d)$/ || # 04/7 - /^(\d\d)[.-](\d\d)$/) { # 04-07 + if (/^(\d{4})\W(\d{1,2})$/ || # YYYY.MM or YYYY-M + /^(\d\d)\W(\d)$/ || # YY/M or YY-M + /^(\d\d)[.-](\d\d)$/) { # YY-MM ($y, $m) = ($1, $2); - } elsif (/^(\d{1,2})\W(\d{4})$/ || # 07-2004 or 7/2004 - /^(\d)\W(\d\d)$/ || # 7/04 - /^(\d\d)\/?(\d\d)$/) { # 07/04 or 0704 + } elsif (/^(\d{1,2})\W(\d{4})$/ || # MM-YYYY or M/YYYY + /^(\d)\W(\d\d)$/ || # M/YY or M-YY + /^(\d\d)\/?(\d\d)$/) { # MM/YY or MMYY ($y, $m) = ($2, $1); } else { croak "Unable to parse expiration date: $str"; @@ -230,8 +230,8 @@ sub parse_response { $self->server_response($response); - # (It's not quite clear whether there should be some decoding, or if - # the result is already utf8.) + # FIXME: It's not quite clear whether there should be some decoding, or + # if the result is already utf8.) $response = xml_in($response, ForceArray => [qw(product flag)], @@ -394,23 +394,24 @@ Transaction type, being one of the following: =item card_number (required) -Credit card number. Any spaces will be removed. +Credit card number. Spaces are allowed, and will be automatically removed. =item exp_date (required) -Credit card expiration date. Since L does not -specify any syntax, this module is rather lax in what it will accept. It is -recommended to use either I or I, to avoid any nasty -surprises. +Credit card expiration date. Since L does not specify +any syntax, this module is rather lax regarding what it will accept. The +recommended syntax is I, but forms such as I or I are +allowed as well. =item cvv2 Three- or four-digit verification code printed on the card. This can be left blank or undefined, in which case no check will be performed. Whether or not a -transaction will be declined in case of a mismatch depends on the merchant. +transaction will be declined in case of a mismatch depends on the merchant +account configuration. This number may be called Card Verification Value (CVV2), Card Validation -Code (CVC2) or Card Identification number (CID). +Code (CVC2) or Card Identification number (CID), depending on the card issuer. =item description @@ -427,21 +428,21 @@ L<"Products list syntax">. =item currency Currency of all amounts for this order. This can currently be either -C (default) or C. +C (default) or C. =item taxes Taxes to be added automatically. These should not be included in B; -they will be added by Internet Secure later on. +they will be automatically added by Internet Secure later on. -Available taxes are C, C and C; multiple taxes must be -separated by spaces. +Available taxes are C, C and C. Taxes can be combined by +separating them with spaces, such as C. =item name / company / address / city / state / zip / country / phone / email Facultative customer information. B should be either a postal abbreviation or a two-letter code taken from ISO 3166-2, and B should -be a two-letter code taken from in ISO 3166-1. +be a two-letter code taken from ISO 3166-1. =back @@ -552,7 +553,7 @@ Frederic Briere, Efbriere@fbriere.netE =head1 COPYRIGHT AND LICENSE -Copyright (C) 2004 by Frederic Briere +Copyright (C) 2006 by Frederic Briere This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.8.4 or,