Vend::Payment::TestPayment(3pm)
NAME
Vend::Payment::TestPayment - Interchange payment test module
SYNOPSIS
&charge=testpayment
or
[charge mode=testpayment param1=value1 param2=value2]
PREREQUISITES
None.
DESCRIPTION
The Vend::Payment::TestPayment module implements the testpayment()
routine for use with Interchange. It's compatible on a call level with
the other Interchange payment modules -- in theory (and even usually in
practice) you could switch from TestPayment to another payment module
with a few configuration file changes.
The module will perform one of three actions:
- o If the card number is 4111111111111111 then the transaction will be
- approved.
- o If the card number is 4111111111111129 then the transaction will be
- declined.
- o Any other card number will raise an error and the transaction will
- be declined.
- To enable this module, place this directive in "interchange.cfg":
Require module Vend::Payment::TestPayment- 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 "testpayment". 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 testpayment- 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=testpayment id=testid]- or
Route testpayment id testid- or
Variable MV_PAYMENT_ID testid- The active settings are:
- id A test account ID, which can be any value you like. Global
- parameter is MV_PAYMENT_ID.
- secret
- A test account password, which can be any value you like. Global
parameter is MV_PAYMENT_SECRET. This is not needed for test
charges, using this module, but you may as well set it up anyway. - transaction
- The type of transaction to be run. Valid values are:
auth
return
reverse
sale
settle
void - Actually, the transaction type is ignored in this version, but you may as well set it anyway.
- remap
- This remaps the form variable names to the ones needed by
TestPayment. See the "Payment Settings" heading in the Interchange documentation for use. - Troubleshooting
- o Make sure you "Require"d the module in interchange.cfg:
Require module Vend::Payment::TestPayment - o Check the error logs, both catalog and global.
- o Make sure you set your payment parameters 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, Cursor Software and other consultants are
- available to help with integration for a fee.
BUGS
There is actually nothing *in* Vend::Payment::TestPayment. It changes
packages to Vend::Payment and places things there.
AUTHORS
- Kevin Walsh <kevin@cursor.biz> Based on original code by Mike Heins
<mheins@perusion.com>