Finance::Bank::Wachovia version 0.01 ================================== NAME Finance::Bank::Wachovia - access account info from Perl * Account numbers * Account names * Account balances (posted and available) * Account transaction data (in all their detailed glory) Does not (yet) provide any means to transfer money or pay bills. (Note - I don't think this will ever happen unless Wachovia creates and documents a secure web service.) SYNOPSIS Since this version uses the website to get account info, it will need the information to login: There are two ways to login via the wachovia website, and depending on which login method you use, that decides which parameters you'll provide to the new() method. If you use the Customer access number method (left form on the website) then provide "customer_access_number", "pin", and "code_word". If you use the user id method (right form on the website) then provide "user_id" and "pass- word". use Finance::Bank::Wachovia; # Two different types of login information, # if you login using can/pin/codeword: my $wachovia = Finance::Bank::Wachovia->new( customer_access_number => '123456789', pin => '1234', code_word => 'blah' ) or die Finance::Bank::Wachovia->ErrStr(); # OR if you login using user_id/password: $wachovia = Finance::Bank::Wachovia->new( user_id => 'foo', password => 'bar' ) or die Finance::Bank::Wachovia->ErrStr(); my @account_numbers = $wachovia->account_numbers(); my @account_names = $wachovia->account_names(); my @account_balances = $wachovia->account_balances(); my $account = $wachovia->account( $account_numbers[0] ) or die $wachovia->ErrStr();; print "Number: ", $account->number, "\n"; print "Name: ", $account->name, "\n"; print "Type: ", $account->type, "\n"; print "Avail. Bal.: ", $account->available_balance, "\n"; print "Posted.Bal.: ", $account->posted_balance, "\n"; my $transactions = $account->transactions or die $account->ErrStr; foreach my $t ( @$transactions ){ print "Date: ", $t->date, "\n", "Action: ", $t->action, "\n", "Desc: ", $t->description, "\n", "Withdrawal", $t->withdrawal_amount, "\n", "Deposit", $t->deposit_amount, "\n", "Balance", $t->balance, "\n", "seq_no", $t->seq_no, "\n", "trans_code", $t->trans_code, "\n", "check_num", $t->check_num, "\n"; } DESCRIPTION Internally uses WWW::Mechanize to scrape the bank's website. The idea was to keep the interface as logical as possible. The user is com- pletely abstracted from how the data is obtained, and to a large degree so is the module itself. In case wachovia ever offers an XML inter- face, or soap, or DBI (right) this should be an easy module to add to/modify, but the application interface will not change, so YOUR code won't have to either. INSTALLATION To install this module type the following: perl Makefile.PL make make test make install DEPENDENCIES This module requires these other modules and libraries: WWW::Mechanize HTTP::Cookies COPYRIGHT AND LICENCE Copyright (C) 2004 Jim Garvin This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.