Class | ActiveMerchant::Billing::SkipJackGateway
In: | lib/active_merchant/billing/gateways/skip_jack.rb
Parent: | Gateway

### Methods

authorize capture credit new purchase status test? void

### Constants

API_VERSION | = | '?.?'
LIVE_URL | = | "https://www.skipjackic.com/scripts/evolvcc.dll"
TEST_URL | = | "https://developer.skipjackic.com/scripts/evolvcc.dll"
ACTIONS | = | { :authorization => 'AuthorizeAPI', :change_status => 'SJAPI_TransactionChangeStatusRequest', :get_status => 'SJAPI_TransactionStatusRequest'
SUCCESS_MESSAGE | = | 'The transaction was successful.'
MONETARY_CHANGE_STATUSES | = | ['AUTHORIZE', 'AUTHORIZE ADDITIONAL', 'CREDIT', 'SPLITSETTLE']
CARD_CODE_ERRORS | = | %w( N S "" )

CARD_CODE_MESSAGES

=

{ "M" => "Card verification number matched", "N" => "Card verification number didn't match", "P" => "Card verification number was not processed", "S" => "Card verification number should be on card but was not indicated", "U" => "Issuer was not certified for card verification", "" => "Transaction failed because incorrect card verification number was entered or no number was entered"

AVS_ERRORS | = | %w( A B C E I N O P R W Z )

AVS_MESSAGES

=

{ "A" => "Street address matches billing information, zip/postal code does not", "B" => "Street address match for international transaction. Postal code not verified due to incompatible formats", "C" => "Street address and postal code not verified for internation transaction due to incompatible formats", "D" => "Street address and postal code match for international transaction", "E" => "Address verification service error", "I" => "Address information not verified by international issuer", "M" => "Street address and postal code match for international transaction", "N" => "Neither street address nor zip/postal match billing information", "O" => "Non-US issuer does not participate", "P" => "Postal codes match for international transaction but street address not verified due to incompatible formats", "P" => "Address verification not applicable for this transaction", "R" => "Payment gateway was unavailable or timed out", "S" => "Address verification service not supported by issuer", "U" => "Address information is unavailable", "W" => "9-digit zip/postal code matches billing information, street address does not", "X" => "Street address and 9-digit zip/postal code matches billing information", "Y" => "Street address and 5-digit zip/postal code matches billing information", "Z" => "5-digit zip/postal code matches billing information, street address does not", }

CHANGE_STATUS_ERROR_MESSAGES | = | { '0' => 'Success', '-1' => 'Invalid Command', '-2' => 'Parameter Missing', '-3' => 'Failed retrieving response', '-4' => 'Invalid Status', '-5' => 'Failed reading security flags', '-6' => 'Developer serial number not found', '-7' => 'Invalid Serial Number'
TRANSACTION_CURRENT_STATUS | = | { '0' => 'Idle', '1' => 'Authorized', '2' => 'Denied', '3' => 'Settled', '4' => 'Credited', '5' => 'Deleted', '6' => 'Archived', '7' => 'Pre-Authorized', '8' => 'Split Settled'
TRANSACTION_PENDING_STATUS | = | { '0' => 'Idle', '1' => 'Pending Credit', '2' => 'Pending Settlement', '3' => 'Pending Authorization', '4' => 'Pending Manual Settlement', '5' => 'Pending Recurring'

RETURN_CODE_MESSAGES

=

{ '-1' => 'Data was not by received intact by Skipjack Transaction Network.', '0' => 'Communication Failure. Error in Request and Response at IP level.', '1' => 'Valid Data. Authorization request was valid.', '-35' => 'Invalid credit card number. Retry with correct credit card number.', '-37' => 'Merchant Processor Unavailable. Skipjack is unable to communicate with payment Processor. Retry', '-39' => 'Length or value of HTML Serial. Number Invalid serial number. Check HTML Serial Number length and that it is a correct/valid number. Confirm you are sending to the correct environment (Development or Production)', '-51' => 'The value or length for billing zip code is incorrect.', '-52' => 'The value or length for shipping zip code is incorrect.', '-53' => 'The value or length for credit card expiration month is incorrect.', '-54' => 'The value or length of the month or year of the credit card account number was incorrect.', '-55' => 'The value or length or billing street address is incorrect.', '-56' => 'The value or length of the shipping address is incorrect.', '-57' => 'The length of the transaction amount must be at least 3 digits long (excluding the decimal place).', '-58' => 'Length or value in Merchant Name Merchant Name associated with Skipjack account is misconfigured or invalid', '-59' => 'Length or value in Merchant Address Merchant Address associated with Skipjack account is misconfigured or invalid', '-60' => 'Length or value in Merchant State Merchant State associated with Skipjack account is misconfigured or invalid', '-61' => 'The value or length for shipping state/province is empty.', '-62' => 'The value for length orderstring is empty.', '-64' => 'The value for the phone number is incorrect.', '-65' => 'The value or length for billing name is empty.', '-66' => 'The value or length for billing e-mail is empty.', '-67' => 'The value or length for billing street address is empty.', '-68' => 'The value or length for billing city is empty.', '-69' => 'The value or length for billing state is empty.', '-70' => 'Empty zipcode Zip Code field is empty.', '-71' => 'Empty ordernumber Ordernumber field is empty.', '-72' => 'Empty accountnumber Accountnumber field is empty', '-73' => 'Empty month Month field is empty.', '-74' => 'Empty year Year field is empty.', '-75' => 'Empty serialnumber Serialnumber field is empty.', '-76' => 'Empty transactionamount Transaction amount field is empty.', '-77' => 'Empty orderstring Orderstring field is empty.', '-78' => 'Empty shiptophone Shiptophone field is empty.', '-79' => 'The value or length for billing name is empty.', '-80' => 'Length shipto name Error in the length or value of shiptophone.', '-81' => 'Length or value of Customer location', '-82' => 'The value or length for billing state is empty.', '-83' => 'The value or length for shipping phone is empty.', '-84' => 'There is already an existing pending transaction in the register sharing the posted Order Number.', '-85' => 'Airline leg info invalid Airline leg field value is invalid or empty.', '-86' => 'Airline ticket info invalid Airline ticket info field is invalid or empty', '-87' => 'Point of Sale check routing number must be 9 numeric digits Point of Sale check routing number is invalid or empty.', '-88' => 'Point of Sale check account number missing or invalid Point of Sale check account number is invalid or empty.', '-89' => 'Point of Sale check MICR missing or invalid Point of Sale check MICR invalid or empty.', '-90' => 'Point of Sale check number missing or invalid Point of Sale check number invalid or empty.', '-91' => 'CVV2 Invalid or empty “Make CVV a required field feature” enabled (New feature 01 April 2006) in the Merchant Account Setup interface but no CVV code was sent in the transaction data.', '-92' => 'Approval Code Invalid Approval Code Invalid. Approval Code is a 6 digit code.', '-93' => 'Blind Credits Request Refused “Allow Blind Credits” option must be enabled on the Skipjack Merchant Account.', '-94' => 'Blind Credits Failed', '-95' => 'Voice Authorization Request Refused Voice Authorization option must be enabled on the Skipjack Merchant Account.', '-96' => 'Voice Authorizations Failed', '-97' => 'Fraud Rejection Violates Velocity Settling.', '-98' => 'Invalid Discount Amount', '-99' => 'POS PIN Debit Pin Block Debit-specific', '-100' => 'POS PIN Debit Invalid Key Serial Number Debit-specific', '-101' => 'Invalid Authentication Data Data for Verified by Visa/MC Secure Code is invalid.', '-102' => 'Authentication Data Not Allowed', '-103' => 'POS Check Invalid Birth Date POS check dateofbirth variable contains a birth date in an incorrect format. Use MM/DD/YYYY format for this variable.', '-104' => 'POS Check Invalid Identification Type POS check identificationtype variable contains a identification type value which is invalid. Use the single digit value where Social Security Number=1, Drivers License=2 for this variable.', '-105' => 'Invalid trackdata Track Data is in invalid format.', '-106' => 'POS Check Invalid Account Type', '-107' => 'POS PIN Debit Invalid Sequence Number', '-108' => 'Invalid Transaction ID', '-109' => 'Invalid From Account Type', '-110' => 'Pos Error Invalid To Account Type', '-112' => 'Pos Error Invalid Auth Option', '-113' => 'Pos Error Transaction Failed', '-114' => 'Pos Error Invalid Incoming Eci', '-115' => 'POS Check Invalid Check Type', '-116' => 'POS Check Invalid Lane Number POS Check lane or cash register number is invalid. Use a valid lane or cash register number that has been configured in the Skipjack Merchant Account.', '-117' => 'POS Check Invalid Cashier Number'

### Public Class methods

new(options = {})

Creates a new SkipJackGateway

The gateway requires that a valid login and password be passed in the `options` hash.

#### Options

- `:login` — The SkipJack Merchant Serial Number.
- `:password` — The SkipJack Developer Serial Number.
- `:test => true or false` — Use the test or live SkipJack url.

### Public Instance methods

authorize(money, creditcard, options = {})
capture(money, authorization, options = {})

Captures the funds from an authorized transaction.

#### Parameters

- `money` — The amount to be capture as an Integer in cents.
- `authorization` — The authorization returned from the previous authorize request.
- `options` — A hash of optional parameters.

#### Options

- `:force_settlement` — Force the settlement to occur as soon as possible. This option is not supported by other gateways. See the SkipJack API reference for more details

credit(money, identification, options = {})
purchase(money, creditcard, options = {})
status(order_id)
test?()
void(authorization, options = {})

[Validate]