.\" Automatically generated by Pod::Man 2.25 (Pod::Simple 3.16) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "Vend::Payment::SagePay 3pm" .TH Vend::Payment::SagePay 3pm "2011-03-09" "perl v5.14.2" "User Contributed Perl Documentation" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "Interchange Sagepay Support" .IX Header "Interchange Sagepay Support" Vend::Payment::SagePay \f(CW$Revision:\fR 0.8.7 $ .PP http://kiwi.zolotek.net is the home page with the latest version. .SH "This package is for the 'SagePay Direct' payment system." .IX Header "This package is for the 'SagePay Direct' payment system." Note that their 'Direct' system is the only one which leaves the customer on your own site and takes payment in real time. Their other systems, eg Terminal or Server, do not require this module. .SH "Quick Start Summary" .IX Header "Quick Start Summary" 1 Place this module in /lib/Vend/Payment/SagePay.pm .PP 2 Call it in interchange.cfg with: Require module Vend::Payment::SagePay .PP 3 Add into variable.txt (tab separated): \s-1MV_PAYMENT_MODE\s0 sagepay Add a new route into catalog.cfg (options for the last entry in parentheses): Route sagepay id YourSagePayID Route sagepay host live.sagepay.com (test.sagepay.com) Route sagepay currency \s-1GBP\s0 (\s-1USD\s0, \s-1EUR\s0, others, defaults to \s-1GBP\s0) Route sagepay txtype \s-1PAYMENT\s0 (\s-1AUTHENTICATE\s0, \s-1DEFERRED\s0) Route sagepay available yes (no, empty) Route sagepay logzero yes (no, empty) Route sagepay logorder yes (no, empty) Route sagepay logsagepay yes (no, empty) Route sagepay applyavscv2 '0': if enabled then check, and if rules apply use. '1': force checks even if not enabled; if rules apply use. '2': force \s-1NO\s0 checks even if enabled on account. '3': force checks even if not enabled; do \s-1NOT\s0 apply rules. Route sagepay giftaidpayment 0 (1 to donate tax to Gift Aid) .PP 4 Create a new locale setting for en_GB as noted in \*(L"item currency\*(R" below, and copy the public space interchange/en_US/ directory to a new interchange/en_GB/ one. Ensure that any other locales you might use have a correctly named directory as well. Ensure that this locale is found in your version of locale.txt (and set up \s-1GB\s0 as opposed to \s-1US\s0 language strings to taste). .PP 5 Create entry boxes on your checkout page for: 'mv_credit_card_issue_number', 'mv_credit_card_start_month', \&'mv_credit_card_start_year', 'mv_credit_card_type' and 'mv_credit_card_cvv2'. .PP 6 The new fields in \s-1API\s0 2.23 are: BillingAddress, BillingPostCode, DeliveryAddress, DeliveryPostCode, BillingFirstnames, BillingSurname, DeliveryFirstnames, DeliverySurname, ContactNumber,ContactFax,CustomerEmail. CustomerName has been removed. Billing and Delivery State must be sent if the destination country is the \s-1US\s0, otherwise they are not required. State must be only 2 letters if sent. Other fields may default to a space if there is no proper value to send, though this may conflict with your \s-1AVS\s0 checking rules. SagePay currently accept a space as of time of writing \- if they change this without changing the \s-1API\s0 version then send either a series of '0' or '\-' characters to stop their error messages. .PP 7. Add a page in pages/ord/, tdsfinal.html, being a minimal page with only the header and side bar, and in the middle of the page put: [if scratch acsurl] [/if] .PP Add a page in pages/ord/, tdsauth.html, consisting of this: <\s-1FORM\s0 name=\*(L"form\*(R" action=\*(L"[scratchd acsurl]\*(R" method=\*(L"\s-1POST\s0\*(R" /> along with whatever