The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Business::CyberSource::Request::Authorization - CyberSource Authorization Request object

VERSION

version v0.3.4

SYNOPSIS

        use Business::CyberSource::Request::Authorization;

        my $req = Business::CyberSource::Request::Authorization->new({
                username       => 'merchantID',
                password       => 'transaction key',
                production     => 0,
                reference_code => '42',
                first_name     => 'Caleb',
                last_name      => 'Cushing',
                street         => '100 somewhere st',
                city           => 'Houston',
                state          => 'TX',
                zip            => '77064',
                country        => 'US',
                email          => 'xenoterracide@gmail.com',
                total          => 5.00,
                currency       => 'USD',
                credit_card    => '4111111111111111',
                cc_exp_month   => '09',
                cc_exp_year    => '2025',
        });

        my $response = $req->submit;

        # or if you want to use items instead of just giving a total

        my $oreq = Business::CyberSource::Request::Authorization->new({
                username       => 'merchantID',
                password       => 'transaction key',
                production     => 0,
                reference_code => '42',
                first_name     => 'Caleb',
                last_name      => 'Cushing',
                street         => '100 somewhere st',
                city           => 'Houston',
                state          => 'TX',
                zip            => '77064',
                country        => 'US',
                email          => 'xenoterracide@gmail.com',
                currency       => 'USD',
                items          => [
                        {
                                unit_price => 1000.00,
                                quantity   => 2,
                        },
                        {
                                unit_price => 1000.00,
                                quantity   => 1,
                        },
                ],
                credit_card    => '4111111111111111',
                cc_exp_month   => '09',
                cc_exp_year    => '2025',
        });

        my $oresponse = $oreq->submit;

DESCRIPTION

Offline authorization means that when you submit an order using a credit card, you will not know if the funds are available until you capture the order and receive confirmation of payment. You typically will not ship the goods until you receive this payment confirmation. For offline credit cards, it will take typically five days longer to receive payment confirmation than for online cards.

ATTRIBUTES

ignore_cv_result

Reader: ignore_cv_result

Type: Bool

street

Reader: street

Type: MooseX::Types::Varchar::Varchar[60]

This attribute is required.

Additional documentation: First line of the billing street address as it appears on the credit card issuer's records. alias: street1

client_env

Reader: client_env

Type: Str

Additional documentation: provided by the library

cybs_wsdl

Reader: cybs_wsdl

Type: MooseX::Types::Path::Class::File

Additional documentation: provided by the library

state

Reader: state

Type: MooseX::Types::Varchar::Varchar[2]

Additional documentation: State or province of the billing address. Use the two-character codes. alias: province

trace

Reader: trace

Writer: trace

Type: XML::Compile::SOAP::Trace

email

Reader: email

Type: MooseX::Types::Email::EmailAddress

This attribute is required.

Additional documentation: Customer's email address, including the full domain name

password

Reader: password

Type: MooseX::Types::Common::String::NonEmptyStr

This attribute is required.

Additional documentation: your SOAP transaction key

cybs_api_version

Reader: cybs_api_version

Type: Str

Additional documentation: provided by the library

ignore_export_result

Reader: ignore_export_result

Type: Bool

cvn

Reader: cvn

Type: MooseX::Types::CreditCard::CardSecurityCode

Additional documentation: Card Verification Numbers

total

Reader: total

Type: MooseX::Types::Common::Numeric::PositiveOrZeroNum

Additional documentation: Grand total for the order. You must include either this field or item_#_unitPrice in your request

cc_exp_month

Reader: cc_exp_month

Type: MooseX::Types::Varchar::Varchar[2]

This attribute is required.

Additional documentation: Two-digit month that the credit card expires in. Format: MM.

username

Reader: username

Type: MooseX::Types::Varchar::Varchar[30]

This attribute is required.

Additional documentation: Your CyberSource merchant ID. Use the same merchantID for evaluation, testing, and production

card_type

Reader: card_type

Type: MooseX::Types::CyberSource::CardTypeCode

Additional documentation: Type of card to authorize

credit_card

Reader: credit_card

Type: MooseX::Types::CreditCard::CreditCard

This attribute is required.

Additional documentation: Customer's credit card number

zip

Reader: zip

Type: MooseX::Types::Varchar::Varchar[10]

Additional documentation: Postal code for the billing address. The postal code must consist of 5 to 9 digits. alias: postal_code

street2

Reader: street2

Type: MooseX::Types::Varchar::Varchar[60]

Additional documentation: Second line of the billing street address.

reference_code

Reader: reference_code

Type: MooseX::Types::Varchar::Varchar[50]

This attribute is required.

street3

Reader: street3

Type: MooseX::Types::Varchar::Varchar[60]

Additional documentation: Third line of the billing street address.

score_threshold

Type: Int

ignore_avs_result

Reader: ignore_avs_result

Type: Bool

ip

Reader: ip

Type: MooseX::Types::NetAddr::IP::NetAddrIPv4

Additional documentation: Customer's IP address. alias: ip_address

cv_indicator

Reader: cv_indicator

Type: MooseX::Types::CyberSource::CvIndicator

Additional documentation: Flag that indicates whether a CVN code was sent

last_name

Reader: last_name

Type: MooseX::Types::Varchar::Varchar[60]

This attribute is required.

Additional documentation: Customer's last name. The value should be the same as the one that is on the card.

currency

Reader: currency

Type: MooseX::Types::Locale::Currency::CurrencyCode

This attribute is required.

city

Reader: city

Type: MooseX::Types::Varchar::Varchar[50]

This attribute is required.

Additional documentation: City of the billing address.

production

Reader: production

Type: Bool

This attribute is required.

Additional documentation: 0: test server. 1: production server

street4

Reader: street4

Type: MooseX::Types::Varchar::Varchar[60]

Additional documentation: Fourth line of the billing street address.

country

Reader: country

Type: MooseX::Types::CyberSource::CountryCode

This attribute is required.

Additional documentation: ISO 2 character country code (as it would apply to a credit card billing statement)

ignore_validate_result

Reader: ignore_validate_result

Type: Bool

cc_exp_year

Reader: cc_exp_year

Type: MooseX::Types::Varchar::Varchar[4]

This attribute is required.

Additional documentation: Four-digit year that the credit card expires in. Format: YYYY.

cybs_xsd

Reader: cybs_xsd

Type: MooseX::Types::Path::Class::File

Additional documentation: provided by the library

ignore_dav_result

Reader: ignore_dav_result

Type: Bool

client_name

Reader: client_name

Type: Str

Additional documentation: provided by the library

decline_avs_flags

Type: ArrayRef[MooseX::Types::CyberSource::AVSResult]

client_version

Reader: client_version

Type: Str

first_name

Reader: first_name

Type: MooseX::Types::Varchar::Varchar[60]

This attribute is required.

Additional documentation: Customer's first name.The value should be the same as the one that is on the card.

items

Reader: items

Type: ArrayRef[MooseX::Types::CyberSource::Item]

METHODS

new

Instantiates a request object, see the attributes listed below for which ones are required and which are optional.

submit

Actually sends the required data to CyberSource for processing and returns a Business::CyberSource::Response object.

SEE ALSO

BUGS

Please report any bugs or feature requests on the bugtracker website https://github.com/xenoterracide/Business-CyberSource/issues

When submitting a bug or request, please include a test-file or a patch to an existing test-file that illustrates the bug or desired feature.

AUTHOR

Caleb Cushing <xenoterracide@gmail.com>

COPYRIGHT AND LICENSE

This software is Copyright (c) 2011 by Caleb Cushing.

This is free software, licensed under:

  The Artistic License 2.0 (GPL Compatible)