summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJonathan Prykop <jonathan@freeside.biz>2016-05-03 23:17:37 -0500
committerJonathan Prykop <jonathan@freeside.biz>2016-05-03 23:17:37 -0500
commit964e4fc98f070a1744fe0313f44309baa8f4fb15 (patch)
treed90cc5dde5b12bdc76b8c03165b4a4fe85fed8bf
parent1443045cf75c0bba05a753d6036327a8092bcfca (diff)
RT#37632: Credit card validation [cust_pay_pending handling on error]
-rw-r--r--FS/FS/cust_main/Billing_Realtime.pm11
1 files changed, 11 insertions, 0 deletions
diff --git a/FS/FS/cust_main/Billing_Realtime.pm b/FS/FS/cust_main/Billing_Realtime.pm
index bbf86a55d..54c7c5d32 100644
--- a/FS/FS/cust_main/Billing_Realtime.pm
+++ b/FS/FS/cust_main/Billing_Realtime.pm
@@ -1965,6 +1965,17 @@ sub realtime_verify_bop {
}
+ } else { # is not success
+
+ # status is 'done' not 'declined', as in _realtime_bop_result
+ $cust_pay_pending->status('done');
+ $cust_pay_pending->statustext( $transaction->error_message || 'Unknown error' );
+ # could also record failure_status here,
+ # but it's not supported by B::OP::vSecureProcessing...
+ # need a B::OP module with (reverse) auth only to test it with
+ my $cpp_declined_err = $cust_pay_pending->replace;
+ return $cpp_declined_err if $cpp_declined_err;
+
}
###