Business-OnlinePayment-OpenECHO
view release on metacpan or search on metacpan
OpenECHO.pm view on Meta::CPAN
"62" => [ "Restricted card", "The card has been restricted." ],
"63" => [ "Security violation.", "The card has been restricted." ],
"64" => [ "Original amount incorrect", "Original amount incorrect." ],
"65" => [ "Exceeds withdrawal frequency", "The allowable number of daily transactions has been exceeded." ],
"66" => [ "Call acquirer security, call ECHO", "Call acquirer security, call ECHO." ],
"68" => [ "Response received too late", "Response received too late." ],
"75" => [ "PIN tries exceeded", "The allowed number of PIN retries has been exceeded." ],
"76" => [ "Invalid \"to\" account", "The debit account does not exist." ],
"77" => [ "Invalid \"from\" account", "The credit account does not exist." ],
"78" => [ "Invalid account specified (general)", "The associated card number account is invalid or does not exist." ],
"79" => [ "Already reversed", "Already reversed." ],
"84" => [ "Invalid authorization life cycle", "The authorization life cycle is invalid." ],
"86" => [ "Cannot verify PIN", "Cannot verify PIN." ],
"87" => [ "Network Unavailable", "Network Unavailable." ],
"89" => [ "Ineligible to receive financial position information", "Ineligible to receive financial position information." ],
"90" => [ "Cut-off in progress", "Cut-off in progress." ],
"91" => [ "Issuer or switch inoperative", "The bank is not available to authorize this transaction." ],
"92" => [ "Routing error", "The transaction cannot be routed to the authorizing agency." ],
"93" => [ "Violation of law", "Violation of law." ],
"94" => [ "Duplicate transaction", "Duplicate transaction." ],
"95" => [ "Reconcile error", "Reconcile error." ],
"96" => [ "System malfunction", "A system error has occurred." ],
"98" => [ "Exceeds cash limit", "Exceeds cash limit." ],
"1000" => [ "Unrecoverable error.", "An unrecoverable error has occurred in the ECHONLINE processing." ],
"1001" => [ "Account closed", "The merchant account has been closed." ],
"1002" => [ "System closed", "Services for this system are not available. (Not used by ECHONLINE)" ],
"1003" => [ "E-Mail Down", "The e-mail function is not available. (Not used by ECHONLINE)" ],
"1012" => [ "Invalid trans code", "The host computer received an invalid transaction code." ],
"1013" => [ "Invalid term id", "The ECHO-ID is invalid." ],
"1015" => [ "Invalid card number", "The credit card number that was sent to the host computer was invalid" ],
"1016" => [ "Invalid expiry date", "The card has expired or the expiration date was invalid." ],
"1017" => [ "Invalid amount", "The dollar amount was less than 1.00 or greater than the maximum allowed for this card." ],
"1019" => [ "Invalid state", "The state code was invalid. (Not used by ECHONLINE)" ],
"1021" => [ "Invalid service", "The merchant or card holder is not allowed to perform that kind of transaction" ],
"1024" => [ "Invalid auth code", "The authorization number presented with this transaction is incorrect. (deposit transactions only)" ],
"1025" => [ "Invalid reference number", "The reference number presented with this transaction is incorrect or is not numeric." ],
"1029" => [ "Invalid contract number", "The contract number presented with this transaction is incorrect or is not numeric. (Not used by ECHONLINE)" ],
"1030" => [ "Invalid inventory data", "The inventory data presented with this transaction is not ASCII \"printable\". (Not used by ECHONLINE)" ],
"1508" => [ " ", "Invalid or missing order_type." ],
"1509" => [ " ", "The merchant is not approved to submit this order_type." ],
"1510" => [ " ", "The merchant is not approved to submit this transaction_type." ],
#"1511" => [ " ", "Duplicate transaction attempt (see counterin Part I of this Specification</EM>)." ],
"1511" => [ " ", "Duplicate transaction attempt (set counter field?)." ],
"1599" => [ " ", "An system error occurred while validating the transaction input." ],
"1801" => [ "Return Code \"A\"", "Address matches; ZIP does not match." ],
"1802" => [ "Return Code \"W\"", "9-digit ZIP matches; Address does not match." ],
"1803" => [ "Return Code \"Z\"", "5-digit ZIP matches; Address does not match." ],
"1804" => [ "Return Codes \"U\"", "Issuer unavailable; cannot verify." ],
"1805" => [ "Return Code \"R\"", "Retry; system is currently unable to process." ],
"1806" => [ "Return Code \"S\" or \"G\"", "Issuer does not support AVS." ],
"1807" => [ "Return Code \"N\"", "Nothing matches." ],
"1808" => [ "Return Code \"E\"", "Invalid AVS only response." ],
"1809" => [ "Return Code \"B\"", "Street address match. Postal code not verified because of incompatible formats." ],
"1810" => [ "Return Code \"C\"", "Street address and Postal code not verified because of incompatible formats." ],
"1811" => [ "Return Code \"D\"", "Street address match and Postal code match." ],
"1812" => [ "Return Code \"I\"", "Address information not verified for international transaction." ],
"1813" => [ "Return Code \"M\"", "Street address match and Postal code match." ],
"1814" => [ "Return Code \"P\"", "Postal code match. Street address not verified because of incompatible formats." ],
"1897" => [ "invalid response", "The host returned an invalid response." ],
"1898" => [ "disconnect", "The host unexpectedly disconnected." ],
"1899" => [ "timeout", "Timeout waiting for host response." ],
"2071" => [ "Call VISA", "An authorization number from the VISA Voice Center is required to approve this transaction." ],
"2072" => [ "Call Master Card", "An authorization number from the Master Card Voice Center is required to approve this transaction." ],
"2073" => [ "Call Carte Blanche", "An authorization number from the Carte Blanche Voice Center is required to approve this transaction." ],
"2074" => [ "Call Diners Club", "An authorization number from the Diners' Club Voice Center is required to approve this transaction." ],
"2075" => [ "Call AMEX", "An authorization number from the American Express Voice Center is required to approve this transaction." ],
"2076" => [ "Call Discover", "An authorization number from the Discover Voice Center is required to approve this transaction." ],
"2078" => [ "Call ECHO", "The merchant must call ECHOCustomer Support for approval.or because there is a problem with the merchant's account." ],
"2079" => [ "Call XpresscheX", "The merchant must call ECHOCustomer Support for approval.or because there is a problem with the merchant's account." ],
"3001" => [ "No ACK on Resp", "The host did not receive an ACK from the terminal after sending the transaction response." ],
"3002" => [ "POS NAK'd 3 Times", "The host disconnected after the terminal replied 3 times to the host response with a NAK." ],
"3003" => [ "Drop on Wait", "The line dropped before the host could send a response to the terminal." ],
"3005" => [ "Drop on Resp", "The line dropped while the host was sending the response to the terminal." ],
"3007" => [ "Drop Before EOT", "The host received an ACK from the terminal but the line dropped before the host could send the EOT." ],
"3011" => [ "No Resp to ENQ", "The line was up and carrier detected, but the terminal did not respond to the ENQ." ],
"3012" => [ "Drop on Input", "The line disconnected while the host was receiving data from the terminal." ],
"3013" => [ "FEP NAK'd 3 Times", "The host disconnected after receiving 3 transmissions with incorrect LRC from the terminal." ],
"3014" => [ "No Resp to ENQ", "The line disconnected during input data wait in Multi-Trans Mode." ],
"3015" => [ "Drop on Input", "The host encountered a full queue and discarded the input data." ],
);
for ( 9000..9999 ) {
$error{$_} = [ "Host Error", "The host encountered an internal error and was not able to process the transaction." ];
}
sub error {
my( $self, $num ) = @_;
$num =~ s/^00(\d\d)$/$1/;
return $num. ': '. $error{$num}[0]. ': '. $error{$num}[1];
}
1;
__END__
=head1 NAME
Business::OnlinePayment::OpenECHO - ECHO backend module for Business::OnlinePayment
=head1 SYNOPSIS
use Business::OnlinePayment;
####
# One step transaction, the simple case.
####
my $tx = new Business::OnlinePayment("OpenECHO");
$tx->content(
type => 'VISA',
login => '1234684752',
password => '43400210',
action => 'Normal Authorization',
description => 'Business::OnlinePayment test',
amount => '49.95',
invoice_number => '100100',
customer_id => 'jsk',
first_name => 'Tofu',
last_name => 'Beast',
address => '123 Anystreet',
city => 'Anywhere',
state => 'UT',
zip => '84058',
( run in 1.829 second using v1.01-cache-2.11-cpan-8f98c5d2c55 )