-#!/usr/bin/perl -w
-
-#
-# Make sure to copy Business::OnlinePayment::vSecureProcessing into its
-# proper system directory (aka /usr/share/perl5/Business/Onlinepayment)
-#
-
-use strict;
-use Data::Dumper;
-use Business::OnlinePayment;
-
-my %opt = (
- server =>'dvrotsos2.kattare.com',
- platform => 'Buypass',
- gid => '1432479912596791',
- tid => '01',
- userid=> 'tom@yiptv.com',
- port => 443,
- env => 'test'
-);
-
-my $action = shift || 'Normal Authorization';
-my $auth = shift || '';
-
-
-my %content = (
- appid => 'yiptv',
- action => $action,
- auth => $auth,
- description => 'Business::OnlinePayment visa test',
-# card_number => '4007000000027',
- card_number => '4111111111111111',
- cvv2 => '111',
- expiration => expiration_date(),
- amount => '42.24',
- name => 'Murphy Law',
- email => 'fake@acme.com',
- address => '123 Anystreet',
- zip => '84058',
-);
-
-main();
-
-sub main {
- my $transaction = Business::OnlinePayment->new("vSecureProcessing", %opt);
-
- print "MAKING PAYMENT\n";
- ProcessTransaction($transaction);
- $content{'action'} = 'void';
- $content{'ref_num'} = $transaction->authorization();
- $content{'txn_date'} = $transaction->txn_date();
- $content{'amount'} = $transaction->txn_amount;
- print "VOIDING PAYMENT\n";
- ProcessTransaction($transaction);
- $content{'action'} = 'Normal Authorization';
- $content{'amount'} = '30.00';
- print "MAKING PAYMENT\n";
- ProcessTransaction($transaction);
- $content{'action'} = 'credit';
- $content{'ref_num'} = $transaction->authorization;
- $content{'txn_date'} = $transaction->txn_date;
- $content{'amount'} = $transaction->txn_amount;
- print "REFUNDING PAYMENT\n";
- ProcessTransaction($transaction);
-}
-
-sub ProcessTransaction {
- my $transaction = shift;
- #print "Processing transaction with content:\n".Dumper(\%content)."\n";
- $transaction->content(%content);
-
- eval { $transaction->submit(); };
-
- if ( $@ ) {
-
- die "Error: $@\n";
-
- } else {
-
- if ( $transaction->is_success() ) {
- print "Card processed successfully: ". $transaction->authorization()."\n";
- } else {
- print "Card was rejected: ". $transaction->error_message(). "\n";
- }
- }
-}
-
-
-sub expiration_date {
- my($month, $year) = (localtime)[4,5];
- $month += 1;
- $year++; # So we expire next year.
- $year %= 100; # y2k? What's that?
-
- return sprintf("%02d/%02d", $month, $year);
-}