Business::OnlinePayment::CyberSource - CyberSource backend for Business::OnlinePayment
version 3.000016
use Business::OnlinePayment; my $tx = Business::OnlinePayment->new( "CyberSource" ); $tx->content( login => 'username', password => 'password', type => 'CC', action => 'Normal Authorization', invoice_number => '00000001', # MurchantReferenceCode first_name => 'Peter', last_name => 'Bowen', address => '123 Anystreet', city => 'Orem', state => 'Utah', zip => '84097', country => 'US', email => 'foo@bar.net', card_number => '4111111111111111', expiration => '09/06', cvv2 => '1234', #optional amount => '5.00', currency => 'USD', ); $tx->submit(); if($tx->is_success()) { print "Card processed successfully: ".$tx->authorization."\n"; } else { print "Card was rejected: ".$tx->error_message."\n"; } #### # Two step transaction, authorization and capture. # If you don't need to review order before capture, you can # process in one step as above. #### $tx = Business::OnlinePayment->new("CyberSource"); $tx->content( login => 'username', password => 'password', type => 'CC', action => 'Authorization Only', invoice_number => 44544, # MurchantReferenceCode description => 'Business::OnlinePayment visa test', amount => '42.39', first_name => 'Tofu', last_name => 'Beast', address => '123 Anystreet', city => 'Anywhere', state => 'Utah', zip => '84058', country => 'US', email => 'tofu@beast.org', card_number => '4111111111111111', expiration => '12/25', cvv2 => 1111, ); $tx->submit(); if($tx->is_success()) { # get information about authorization my $authorization = $tx->authorization(); my $order_number = $tx->order_number(); # RequestId my $avs_code = $tx->avs_code(); # AVS Response Code(); my $cvv2_response = $tx->cvv2_response(); # CVV2/CVC2/CID Response Code(); # now capture transaction $tx->content( login => 'username', password => 'password', type => 'CC', action => 'Post Authorization', invoice_number => 44544, #MurchantReferenceCode amount => '42.39', po_number => $tx->order_number(), # RequestId ); $tx->submit(); if($tx->is_success()) { print "Funds captured successfully\n"; } else { print "Card was rejected: ".$tx->error_message."\n"; } } else { print "Card was rejected: " . $tx->error_message() . "\n"; }
For detailed information see Business::OnlinePayment.
this is a before-construction hook for Moose. You Will never call this method directly.
Content required: type, login, action, amount, first_name, last_name, card_number, expiration.
cvv2 is required in order to get back a cvv2_response value.
To settle an authorization-only transaction (where you set action to Authorization Only), submit the order_number code in the field po_number with the action set to Post Authorization.
Authorization Only
order_number
po_number
Post Authorization
You can get the transaction id from the authorization by calling the order_number method on the object returned from the authorization. You must also submit the amount field with a value less than or equal to the amount specified in the original authorization.
For writing BOP - I didn't have to create my own framework.
Tested the first pre-release version and fixed a number of bugs. He also encouraged me to add better error reporting for system errors. He also added failure_status support.
Adding Request Token Requirements (Among other significant improvements... )
Business::OnlinePayment
Please report any bugs or feature requests on the bugtracker website https://github.com/xenoterracide/business-onlinepayment-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.
Jad Wauthier <Jadrien dot Wauthier at GMail dot com>
Caleb Cushing <xenoterracide@gmail.com>
Peter Bowen <peter@bowenfamily.org>
This software is copyright (c) 2014 by HostGator.com.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.
To install Business::OnlinePayment::CyberSource, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Business::OnlinePayment::CyberSource
CPAN shell
perl -MCPAN -e shell install Business::OnlinePayment::CyberSource
For more information on module installation, please visit the detailed CPAN module installation guide.