Vend::Payment::Skipjack(3pm)
NAME
Vend::Payment::Skipjack - Interchange Skipjack Support
SYNOPSIS
&charge=skipjack
or
[charge mode=skipjack param1=value1 param2=value2]
PREREQUISITES
- Net::SSLeay
- or
- LWP::UserAgent and Crypt::SSLeay
- Only one of these need be present and working.
DESCRIPTION
The Vend::Payment::Skipjack module implements the skipjack() routine
for using Skipjack IC payment services with Interchange. It is
compatible on a call level with the other Interchange payment modules.
- To enable this module, place this directive in "interchange.cfg":
- Require module Vend::Payment::Skipjack
- This must be in interchange.cfg or a file included from it.
- NOTE: Make sure CreditCardAuto is off (default in Interchange demos).
- 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 catalog, you can set 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 for the
mode, then finally a default global payment variable, For example, the "id" parameter would be specified by:
[charge mode=skipjack id=YourSkipjackID]- or
Route skipjack id YourSkipjackID- or with only Skipjack as a payment provider
Variable MV_PAYMENT_ID YourskipjackID- A fully valid catalog.cfg entry to work with the standard demo would
be:
Variable MV_PAYMENT_MODE skipjack
Route skipjack id YourSkipjackID
Route skipjack vendor YourSkipjackVendor- The active settings are:
- 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. Global parameter is MV_PAYMENT_ID. - vendor
- The developer ID of the system which interfaces with Skipjack.
Global parameter is MV_PAYMENT_VENDOR. - transaction
- The type of transaction to be run. Valid values are:
Interchange Skipjack
---------------- -----------------sale sale
recurring recurring - Default is "sale".
- If you wish to do a recurring charge, 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 URL 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 the parameter
"generate_error" to one of the following values (error it generates in parenthesese):
number (invalid credit card number)
avs (will succeed, but generate AVS message)
exp (expired card)
id (invalid Skipjack account?)
vendor (invalid vendor?) - The following should rarely be used, as the supplied defaults are
usually correct. - remap
- This remaps the form variable names to the ones needed by Skipjack. See the "Payment Settings" heading in the Interchange documentation for use.
- submit_url
- The Skipjack URL to submit to. Default is:
https://www.skipjackic.com/scripts/evolvcc.dll?Authorize - Add the following to catalog.cfg 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:
Route skipjack test 1 - A test order should complete.
- Then set a generate error
Route skipjack test 1
Route skipjack generate_error number- and try a sale. The sale should be denied, and the reason should be in [data session payment_error].
- If nothing works:
- o Make sure you "Require"d the module in interchange.cfg:
Require module Vend::Payment::Skipjack- o 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 -e 'print "It works\n"' - or
perl -MLWP::UserAgent -MCrypt::SSLeay -e 'print "It works\n"' - If either one prints "It works." and returns to the prompt you
should be OK (presuming they are in working order otherwise). - o Check the error logs, both catalog and global.
- o Make sure you set your account ID properly.
- o Try an order, then put this code in a page:
<XMP>
[calc]my $string = $Tag->uneval( { ref => $Session->{payment_result} });
$string =~ s/{/{\n/;
$string =~ s/,/,\n/g;
return $string;- [/calc]
</XMP> - That should show what happened.
- o If all else fails, consultants are available to help with
- integration for a fee. See http://www.icdevgroup.org/
BUGS
There is actually nothing *in* Vend::Payment::Skipjack. It changes
packages to Vend::Payment and places things there.
AUTHORS
Originally developed by New York Connect Net (http://nyct.net) Michael
Bacarella <mbac@nyct.net>
Modified for GetCareer.com by Slipstream.com by Troy Davis
<troy@slipstream.com>
LWP/Crypt::SSLeay interface code by Matthew Schick,
<mschick@brightredproductions.com>.
- Interchange implementation by Mike Heins.