MV_PAYMENT_MODE — payment gateway mode name
Interchange 5.7.0:
Source: code/UI_Tag/update_order_status.tag
Line 110 (context shows lines 100-114)
elsif($oid =~ /\*$/) {
Vend::Tags->error( {
name => 'settle_transaction',
set => "Order ID $oid already settled!",
});
return undef;
}
else {
#::logDebug("auth-code: $trec->{auth_code} oid=$oid");
my $settled = Vend::Tags->charge( {
route => $::Variable->{MV_PAYMENT_MODE},
order_id => $oid,
amount => $amount,
auth_code => $trec->{auth_code},
transaction => 'settle_prior',
Source: code/UI_Tag/update_order_status.tag
Line 162 (context shows lines 152-166)
elsif($oid =~ /-$/) {
Vend::Tags->error( {
name => 'void_transaction',
set => "Order ID $oid already voided!",
});
return undef;
}
else {
#::logDebug("auth-code: $trec->{auth_code} oid=$oid");
my $voided = Vend::Tags->charge( {
route => $::Variable->{MV_PAYMENT_MODE},
order_id => $oid,
amount => $amount,
auth_code => $trec->{auth_code},
transaction => 'void',
Source: lib/Vend/Payment/GoogleCheckout.pm
Line 252 (context shows lines 242-256)
In etc/log_transction, immediately after the
[elsif variable MV_PAYMENT_MODE]
[calc]
insert this line:
undef $Session->{payment_result}{MStatus};
and leave
[elsif variable MV_PAYMENT_MODE]
as set (contrary to earlier revisions of this document), but within the \
same section change the following
two instances of
[var MV_PAYMENT_MODE] to [value mv_payment_route]
Also add these five lines to the end of the section that starts "[import table=transactions ":
lead_source: [data session source]
referring_url: [data session referer]
Source: lib/Vend/Payment/SagePay.pm
Line 129 (context shows lines 119-133)
8. When running a card through 3DSecure, the route is run twice: firstly \ to Sagepay who check whether or not the card is part of 3DSecure - if it is they send the customer to the bank's authentication page and upon returning from that the route must be run a second time to send \ the authentication results to Sagepay. The second run is initiated from the 'ord/tdsreturn' page, not \ from etc/log_transaction as it normally would be. To handle this change to the normal system flow you need to alter \ log_transaction to make the call to the payment module conditional,ie, wrap the following code around \ the "[charge route...]" call found in ln 172 (or nearby): [if scratchd mstatus eq success] [tmp name="charge_succeed"][scratch order_id][/tmp] [else] [tmp name="charge_succeed"][charge route="[var MV_PAYMENT_MODE]" amount="[scratch \ tmp_remaining]" order_id="[value mv_transaction_id]"][/tmp] [/else] [/if] If the first call to Sagepay returns a request to send the customer to \ the 3DSecure server, then IC will write a payment route error to the error log prior to sending the customer \ there. This error stops the
Source: lib/Vend/Payment/Worldpay.pm
Line 143 (context shows lines 133-147)
[elsif variable MV_PAYMENT_MODE]
to
[elsif value mv_order_profile =~ /worldpay/] add an OR if required
eg [elsif value mv_order_profile =~ /googlecheckout|worldpay/]
Then in the [calc] block immediately below insert this line:
undef $Session->{payment_result}{MStatus};
Within the same section change the following two instances of
[var MV_PAYMENT_MODE] to [value mv_payment_route]
10. Creat a callback page in /pages called wpcallback.html or any name you prefer, set this page in
the Worldpay admin panel, the module also supports dynamic callback pages \
where different catalogs can
have different callback pages, if using this the callpage URL must be set \
in the route in catalog.cfg as
Source: lib/Vend/Payment/PRI.pm
Line 88 (context shows lines 78-92)
or Route PRI id YourPRIID or with only PRI as a payment provider Variable MV_PAYMENT_ID YourPRIID A fully valid catalog.cfg entry to work with the standard demo would be: Variable MV_PAYMENT_MODE "" Route PRI id "" Route PRI regkey "" Route PRI test_id "" Route PRI test_regkey ""
Source: lib/Vend/Payment/PaypalExpress.pm
Line 115 (context shows lines 105-119)
In etc/log_transction, immediately after the
[elsif variable MV_PAYMENT_MODE]
[calc]
insert this line:
undef $Session->{payment_result}{MStatus};
and leave
[elsif variable MV_PAYMENT_MODE]
as set (contrary to previous revisions of this document) but within the \
same section change the following
two instances of [var MV_PAYMENT_MODE] to [value mv_payment_route]. In \
particular, the setting inside the
[charge route="..] line will specify which payment processor is used for \
each particular case, and you
need to further modify this line so that it ends up like this:
[tmp name="charge_succeed"][charge route="[value mv_payment_route]" pprequest="dorequest" \
amount="[scratch tmp_remaining]" order_id="[value mv_transaction_id]"][/tmp]
If the value of 'mv_payment_route' is set to 'paypalexpress', then this \
is the one that is run. It is only