Vend::Payment::Getitcard(3)

NAME
Vend::Payment::Getitcard - Interchange Getitcard Support

SYNOPSIS
&charge=getitcard

    or

[charge gateway=getitcard param1=value1 param2=value2]

PREREQUISITES
    Digest::SHA

    Net::SSLeay or LWP::UserAgent and Crypt::SSLeay

DESCRIPTION
This module adds support for purchases with prepaid cards issued by Getitcard (http://www.getitcard.com/).

The Vend::Payment::Getitcard module implements the getitcard() routine for use with Interchange. It is compatible on a call level with the other Interchange payment modules -- in theory (and even usually in practice) you could switch from CyberCash to Getitcard with a few configuration file changes.

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

    Require module Vend::Payment::Getitcard

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

Make sure CreditCardAuto is off (default in Interchange demos).

The mode can be named anything, but the "gateway" parameter must be set to "getitcard". 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 getitcard

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=getitcard id=YourGetitcardID]

or

    Route getitcard id YourGetitcardID

or

    Variable MV_PAYMENT_ID YourGetitcardID

Required settings are "id".

The active settings are:

host
    Your Getitcard payment gateway host. Usually secure.getitcard.com.

secure
    MD5 checksum required for valid transactions.

id  Store number assigned to your merchant account.

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

        Interchange         Getitcard
        ----------------    -----------------
            auth            authorize
            sale            authorize + commit (inside authorize step)
            settle          commit
            void            cancel

    Default is "sale".

order_id
    Getitcard unique transact (transaction number), you receive as authorize result.

order_number
    Interchange unique order_id, sent to Getitcard on all transactions

  Troubleshooting
If nothing works:

•   Make sure you "Require"d the module in interchange.cfg:

        Require module Vend::Payment::Getitcard

•   Check the error logs, both catalog and global.

•   Make sure you have all the necessary parameters (you can consult getitcard docs).

•   Make sure you set your payment parameters properly.

•   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.

EXAMPLES
This examples should work if you provide a valid card number, and set variables MV_PAYMENT_ID, MV_PAYMENT_SECRET and MV_PAYMENT_CURRENCY.

  Sale
[calc]$CGI->{mv_credit_card_number}='0123456789123456'[/calc]

[charge gateway=getitcard amount=12]

  Authorize
[calc]$CGI->{mv_credit_card_number}='0123456789123456'[/calc]

[charge gateway=getitcard transaction=authorize amount=123]

  Cancel
[charge gateway=getitcard transaction=cancel order_id=12345 order_number=123456]

  Commit
[charge gateway=getitcard transaction=commit order_id=12345 order_number=123456]

AUTHORS
Stefan Hornburg (Racke) <racke@linuxia.de>

Jure Kodzoman (Yure) <jure@tenalt.com>