NAME

Business::OnlinePayment::IPPay - IPPay backend for Business::OnlinePayment

SYNOPSIS

use Business::OnlinePayment;

my $tx =
  new Business::OnlinePayment( "IPPay",
                               'default_Origin' => 'PHONE ORDER',
                             );
$tx->content(
    type           => 'VISA',
    login          => 'testdrive',
    password       => '', #password 
    action         => 'Normal Authorization',
    description    => 'Business::OnlinePayment test',
    amount         => '49.95',
    customer_id    => 'tfb',
    name           => 'Tofu Beast',
    address        => '123 Anystreet',
    city           => 'Anywhere',
    state          => 'UT',
    zip            => '84058',
    card_number    => '4007000000027',
    expiration     => '09/02',
    cvv2           => '1234', #optional
);
$tx->submit();

if($tx->is_success()) {
    print "Card processed successfully: ".$tx->authorization."\n";
} else {
    print "Card was rejected: ".$tx->error_message."\n";
}

SUPPORTED TRANSACTION TYPES

CC, Visa, MasterCard, American Express, Discover

Content required: type, login, action, amount, card_number, expiration.

Check

Content required: type, login, action, amount, name, account_number, routing_code.

DESCRIPTION

For detailed information see Business::OnlinePayment.

METHODS AND FUNCTIONS

See Business::OnlinePayment for the complete list. The following methods either override the methods in Business::OnlinePayment or provide additional functions.

result_code

Returns the response error code.

error_message

Returns the response error description text.

server_response

Returns the complete response from the server.

Handling of content(%content) data:

action

The following actions are valid

normal authorization
authorization only
post authorization
credit
void

Setting IPPay parameters from content(%content)

The following rules are applied to map data to IPPay parameters from content(%content):

# param => $content{<key>}
TransactionType     => 'TransactionType',
TerminalID          => 'login',
TransactionID       => 'order_number',
RoutingCode         => 'RoutingCode',
Approval            => 'authorization',
BatchID             => 'BatchID',
Origin              => 'Origin',
Password            => 'password',
OrderNumber         => 'invoice_number',
CardNum             => 'card_number',
CVV2                => 'cvv2',
Issue               => 'issue_number',
CardExpMonth        => \( $month ), # MM from MM(-)YY(YY) of 'expiration'
CardExpYear         => \( $year ), # YY from MM(-)YY(YY) of 'expiration'
CardStartMonth      => \( $month ), # MM from MM(-)YY(YY) of 'card_start'
CardStartYear       => \( $year ), # YY from MM(-)YY(YY) of 'card_start'
Track1              => 'track1',
Track2              => 'track2',
ACH
  AccountNumber       => 'account_number',
  ABA                 => 'routing_code',
  CheckNumber         => 'check_number',
CardName            => 'name',
DispositionType     => 'DispositionType',
TotalAmount         => 'amount' reformatted into cents
FeeAmount           => 'FeeAmount',
TaxAmount           => 'TaxAmount',
BillingAddress      => 'address',
BillingCity         => 'city',
BillingStateProv    => 'state',
BillingPostalCode   => 'zip',
BillingCountry      => 'country',           # forced to ISO-3166-alpha-3
BillingPhone        => 'phone',
Email               => 'email',
UserIPAddr          => 'customer_ip',
UserHost            => 'UserHost',
UDField1            => 'UDField1',
UDField2            => 'UDField2',
UDField3            => 'UDField3',
ActionCode          => 'ActionCode',
IndustryInfo
  Type                => 'IndustryInfo',
ShippingInfo
  CustomerPO          => 'CustomerPO',
  ShippingMethod      => 'ShippingMethod',
  ShippingName        => 'ship_name',
  ShippingAddr
    Address             => 'ship_address',
    City                => 'ship_city',
    StateProv           => 'ship_state',
    Country             => 'ship_country',  # forced to ISO-3166-alpha-3
    Phone               => 'ship_phone',

NOTE

COMPATIBILITY

Business::OnlinePayment::IPPay uses IPPay XML Product Specifications version 1.1.2.

See http://www.ippay.com/ for more information.

AUTHOR

Jeff Finucane, ippay@weasellips.com

SEE ALSO

perl(1). Business::OnlinePayment.