For more information... RTFM!
NAVIGATION
RECENTLY VIEWED
ACCOUNT LOGIN

You are not logged in

Powered by Interchange version 5.7.0

Skipjack

Interchange's support for the Skipjack Link to an external page Payment Services Provider.

Synopsis

&charge = skipjack

or

[charge route="skipjack" param1="value1" param2="value2"]

Prerequisites

Net::SSLeay

or

LWP::UserAgent and Crypt::SSLeay

Only one of the above options needs be present and working.

Description

The Vend::Payment::Skipjack module implements the skipjack() subroutine for use with Interchange.  It is compatible on a call level with the other Interchange payment modules.  In theory (and even usually in practise) you could switch from another payment module to Skipjack with a few configuration file changes.

To enable this module, place this directive in your "interchange.cfg" file:

Require  module  Vend::Payment::Skipjack

This must be in interchange.cfg or a file included from it.

Make sure CreditCardAuto is off, which is the default in the Standard ecommerce demo.

The "mode" can be named anything, but the "gateway" parameter must be set to "skipjack".  To make it the default payment gateway for all credit card transactions in a specific website, you can set the following in catalog.cfg:

Variable  MV_PAYMENT_MODE  skipjack

It uses several of the standard settings from Interchange payment.  Any time we speak of a setting, it is obtained either first from the tag/call options, then from an Interchange order Route named after the mode, then finally a default global payment Variable.  For example, the id parameter would be specified by:

[charge route=skipjack id=YourSkipjackID]

or

Route  skipjack  id  YourSkipjackID

or

Variable  MV_PAYMENT_ID  YourSkipjackID

A fully valid catalog.cfg entry to work with the Standard demo could be:

Variable  MV_PAYMENT_MODE  skipjack
Route     skipjack  id     YourSkipjackID
Route     skipjack  vendor YourSkipjackVendor

Settings

Name Description
id Your account ID number, supplied by Skipjack when you sign up.  Use the supplied HTML Serial Numbers (Nova or Vital) while testing in development mode.  The variable is MV_PAYMENT_ID.
vendor The developer ID of the system which interfaces with Skipjack.  The variable is MV_PAYMENT_VENDOR.
transaction

The type of transaction to be run.  Valid values are:

Interchange Skipjack
sale sale
recurring recurring

The default is "sale"

If you want to submit a recurring charge, then you will have to ensure that the following Interchange values are set properly:

Interchange variable Skipjack variable
recurring_item rtItemNumber
recurring_desc rtItemDescription
recurring_start_date rtStartingDate
recurring_frequency rtFrequency
recurring_transactions rtTotalTransactions
recurring_comment rtComment
test If you set the "test" parameter, Interchange will remap some values and the URI for the transaction to point to the Skipjack test server.  It will return a valid transaction if all is working.
generate_error To generate errors (in test mode only), set this parameter to one of the following values:

Value Error generated
number invalid credit card number.
avs will succeed, but generate AVS message.
exp expired card.
id invalid Skipjack account?
vendor invalid vendor?

The following settings should rarely be required, as the supplied defaults are usually correct: 
Name Description
remap This remaps the form variable names to the ones needed by Skipjack.
submit_url

The Skipjack URI to submit to.  The default is:

https://www.skipjackic.com/scripts/evolvcc.dll?Authorize

You can add the following to your catalog.cfg file while in development mode:

Route  skipjack  submit_url  "https://developer.skipjackic.com/scripts/evolvcc.dll?Authorize"

Troubleshooting

Try the instructions above, then enable test mode.  A test order should complete.

Next, generate an error by posting a sale transaction with the following setup:

Route  skipjack  test            1
Route  skipjack  generate_error  number

The failure message should be available in [data session payment_error].

If nothing works:

  • Make sure you Required the module in interchange.cfg:

    Require module Vend::Payment::Skipjack

  • Make sure either Net::SSLeay, or Crypt::SSLeay and LWP::UserAgent are installed and working.  You can test to see whether your Perl thinks they are:

    perl -MNet::SSLeay -le 'print "Available"'

    or

    perl -MLWP::UserAgent -MCrypt::SSLeay -le 'print "Available"'

    If either of the above prints "Available", and returns to the shell prompt, then you should be OK (presuming they are in working order otherwise).


  • Check the local and global error log files.

  • Make sure you set your payment parameters properly, including the account "id".
  • Try an order, then put this code in a page:

    <pre>
    [calcn]
        my $string = $Tag->uneval({ ref => $Session->{payment_result} });

        $string =~ s/{/{\n/;
        $string =~ s/,/,\n/g;

        return $string;
    [/calcn]
    </pre>

    That should show what happened.


  • If all else fails, consultants are available to help with integration for a fee.

Security considerations

Because this library may call an executable, you should ensure that no untrusted users have write permission on any of the system directories or Interchange software directories.

Notes

There is actually nothing in Vend::Payment::Skipjack;  This module changes its package name to Vend::Payment and places things there.

Authors

Category:  Interchange payment modules
Last modified by: Kevin Walsh
Modification date: Tuesday 19 September 2006 at 11:05 AM (EDT)
Home  |  Legal nonsense  |  Privacy policy  |  Contact us