use FS::ClientAPI; #hmm
FS::ClientAPI->register_handlers(
- 'MyAccount/login' => \&login,
- 'MyAccount/customer_info' => \&customer_info,
- 'MyAccount/invoice' => \&invoice,
- 'MyAccount/cancel' => \&cancel,
- 'MyAccount/payment_info' => \&payment_info,
+ 'MyAccount/login' => \&login,
+ 'MyAccount/customer_info' => \&customer_info,
+ 'MyAccount/invoice' => \&invoice,
+ 'MyAccount/cancel' => \&cancel,
+ 'MyAccount/payment_info' => \&payment_info,
+ 'MyAccount/process_payment' => \&process_payment,
);
#store in db?
};
-sub make_payment{
+sub process_payment {
my $p = shift;
my $session = $cache->get($p->{'session_id'})
my $new = new FS::cust_main { $cust_main->hash };
$new->set( $_ => $p->{$_} )
foreach qw( payname address1 address2 city state zip payinfo );
- $new->set( 'paydate' => $p->{'month'}. '-'. $p->{'year'} );
+ $new->set( 'paydate' => $p->{'year'}. '-'. $p->{'month'}. '-01' );
$new->set( 'payby' => $p->{'auto'} ? 'CARD' : 'DCRD' );
my $error = $new->replace($cust_main);
return { 'error' => $error } if $error;
}
my $error = $cust_main->realtime_bop( 'CC', $p->{'amount'}, quiet=>1,
- 'paydate' => $p->{'month'}. '-'. $p->{'year'},
+ 'paydate' => $p->{'year'}. '-'. $p->{'month'}. '-01',
map { $_ => $p->{$_} }
qw( payname address1 address2 city state zip payinfo )
);
my $cust_main = qsearchs('cust_main', { 'custnum' => $custnum } )
or return { 'error' => "unknown custnum $custnum" };
- my @errors = $cust_main->cancel;
+ my @errors = $cust_main->cancel( 'quiet'=>1 );
my $error = scalar(@errors) ? join(' / ', @errors) : '';