if (!$cc_args->{processor}) {
if (!($cc_args->{processor} =
$U->ou_ancestor_setting_value(
- $cc_args->{ou}, 'credit.processor.default'))) {
+ $this_ou, 'credit.processor.default'
+ )
+ )
+ ) {
return OpenILS::Event->new('CREDIT_PROCESSOR_NOT_SPECIFIED');
}
}
if ($U->event_code($response)) { # non-success (success is 0)
$logger->info(
"Credit card payment for user $user_id failed: " .
- $response->{"textcode"} . " " .
- $response->{"payload"}->{"error_message"}
+ $response->{textcode} . " " .
+ ($response->{payload}->{error_message} ||
+ $response->{payload}{message})
);
+ return $response;
} else {
# We need to save this for later in case there's a failure on
# the EG side to store the processor's result.