I've managed to get it going and would like to give a description to help anyone else in the future.
Look out for the syntax on the Meta Refresh, check the quotes if it starts to cycle and doesn't refresh. Took me ages to spot it and get it right!!
Also make sure the web.config Globalization Culture is correct and all settings in NB_Store relate to the correct currency.
WorldPay Select Junior requires the WorldPay Gateway installed. I used Version 2.1.0
Use the section in the Readme Help called - "HtmlRedirect Post (select)" this is applicable for WorldPay Select Junior.
Step1 - Install Gateway Provider Install package as a normal module in DNN.
Step2 - Update the "gatewayproviders.xml" found in the "/DesktopModules/NB_Store" directory.
<?xml version="1.0" encoding="utf-8" ?>
<root>
<gateways>
<gateway ref="SIPS">
Step 3 - Create a payment gateway setting call "WorldPay.gateway" and enter the settings needed. You will need to add this setting on the BackOffice by Selecting Add and Marking it as Payment to get the setting in the correct part of the tree.
In your WorldPay Integration Screen, the following should be set
Payment Response URL = http://www.yourdomain.com/Checkout/tabid/????/stg/4/ordid/ ITEM=cartId>/Default.aspx
where ???? = Your Tabid of the Checkout Page.
Payment Response enabled? = Checked
Enable the Shopper Response = Checked - This brings the response back to the site and uses the 2 templates as described below.
Now create two html templates in the BO>UItilities>templates...one called WorldPayY.html and one WorldPayC.html.
WorldPayC.html Template
Do not forget to change the domain and the ???? to your Checkout tabid
<!DOCTYPE html>
<html lang="en-GB">
<head><title>WorldPay Cancel Order</title><meta http-equiv="refresh" content="0;url=http://www.yourdomain.com/Checkout/tabid/????/stg/5/orderKey/[ORDERID]/WorldPayExit/CANCEL/Default.aspx"></head><body>
<div><p>Payment was Cancelled!!<br/>Your Order was not taken</p></div> </body>
Do not forget to change the domain and the ???? to your Checkout tabid
<!DOCTYPE html>
<html lang="en-GB">
<head><title>WorldPay Success Order</title><meta http-equiv="refresh" content="0;url=http://www.yourdomain.com/Checkout/tabid/????/stg/5/orderKey/[ORDERID]/WorldPayExit/RETURN/Default.aspx"></head><body id="Body" class="dnn6">
<div id="art-main"><div class="art-controlpanel-container"></div>
<div><p>Your Payment was successful !<br/>Collecting your order details.</div> </body>
</html>
Step 4 - Select the Payment Provider in the Checkout module settings.
Step 5 - In the DNN menu "Host>Host Settings", click on "Restart Application". This will clear the cache and ensure the new provider is used.
NOTES:
Test credit Card number: 4111111111111111
Thanks to Keith Johnson for writing the Gateway.
' --- Copyright (c) notice ---
' Copyright (c) 2010 Keith L Johnson. All rights are reserved.
' Author: K.L.Johnson - keithleejohnson@hotmail.com
Look out for the syntax on the Meta Refresh, check the quotes if it starts to cycle and doesn't refresh. Took me ages to spot it and get it right!!
Also make sure the web.config Globalization Culture is correct and all settings in NB_Store relate to the correct currency.
WorldPay Select Junior requires the WorldPay Gateway installed. I used Version 2.1.0
Use the section in the Readme Help called - "HtmlRedirect Post (select)" this is applicable for WorldPay Select Junior.
Step1 - Install Gateway Provider Install package as a normal module in DNN.
Step2 - Update the "gatewayproviders.xml" found in the "/DesktopModules/NB_Store" directory.
Add xml Reference Node of:
<gateway ref="WorldPay">
<name>WorldPay</name>
<assembly>NEvoweb.DNN.Modules.NB_Store.GatewayWorldPay</assembly>
<class>NEvoWeb.Modules.NB_Store.Gateway.GatewayWorldPay</class>
</gateway>
Example:-<?xml version="1.0" encoding="utf-8" ?>
<root>
<gateways>
<gateway ref="SIPS">
<name>SIPS</name>
<assembly>NEvoweb.DNN.Modules.NB_Store.GatewaySIPS</assembly>
<class>NEvoWeb.Modules.NB_Store.Gateway.GatewaySIPS</class>
</gateway><gateway ref="Paypal">
<name>Paypal</name>
<assembly>NEvoweb.DNN.Modules.NB_Store.GatewayPayPal</assembly>
<class>NEvoWeb.Modules.NB_Store.Gateway.GatewayPayPal</class>
</gateway>
<gateway ref="WorldPay">
<name>WorldPay</name>
<assembly>NEvoweb.DNN.Modules.NB_Store.GatewayWorldPay</assembly>
<class>NEvoWeb.Modules.NB_Store.Gateway.GatewayWorldPay</class>
</gateway>
</gateways>
</root>Step 3 - Create a payment gateway setting call "WorldPay.gateway" and enter the settings needed. You will need to add this setting on the BackOffice by Selecting Add and Marking it as Payment to get the setting in the correct part of the tree.
For a full explaination of the WorldPay settings refer to the WorldPay documentation.
<root><HtmlRedirectURL>https://secure.wp3.rbsworldpay.com/wcc/purchase</HtmlRedirectURL>
<testURL>https://select-test.wp3.rbsworldpay.com/wcc/purchase</testURL>
<instId>Merchant Code</instId>
<OrderDescription>Your Website - Webshop Purchase Heading</OrderDescription>
<Currency>GBP</Currency>
<ShopperCountryCode>GB</ShopperCountryCode>
<ButtonImageURL>/Desktopmodules/NB_Store_GatewayWorldPay/WorldPay.jpg</ButtonImageURL>
<testMode>100</testMode>
<extraurl></extraurl>
</root>In your WorldPay Integration Screen, the following should be set
Payment Response URL = http://www.yourdomain.com/Checkout/tabid/????/stg/4/ordid/
where ???? = Your Tabid of the Checkout Page.
Payment Response enabled? = Checked
Enable the Shopper Response = Checked - This brings the response back to the site and uses the 2 templates as described below.
Now create two html templates in the BO>UItilities>templates...one called WorldPayY.html and one WorldPayC.html.
WorldPayC.html Template
Do not forget to change the domain and the ???? to your Checkout tabid
<!DOCTYPE html>
<html lang="en-GB">
<head><title>WorldPay Cancel Order</title><meta http-equiv="refresh" content="0;url=http://www.yourdomain.com/Checkout/tabid/????/stg/5/orderKey/[ORDERID]/WorldPayExit/CANCEL/Default.aspx"></head><body>
<div><p>Payment was Cancelled!!<br/>Your Order was not taken</p></div> </body>
</html>
WorldPayY.html TemplateDo not forget to change the domain and the ???? to your Checkout tabid
<!DOCTYPE html>
<html lang="en-GB">
<head><title>WorldPay Success Order</title><meta http-equiv="refresh" content="0;url=http://www.yourdomain.com/Checkout/tabid/????/stg/5/orderKey/[ORDERID]/WorldPayExit/RETURN/Default.aspx"></head><body id="Body" class="dnn6">
<div id="art-main"><div class="art-controlpanel-container"></div>
<div><p>Your Payment was successful !<br/>Collecting your order details.</div> </body>
</html>
Step 4 - Select the Payment Provider in the Checkout module settings.
Step 5 - In the DNN menu "Host>Host Settings", click on "Restart Application". This will clear the cache and ensure the new provider is used.
NOTES:
Test credit Card number: 4111111111111111
Thanks to Keith Johnson for writing the Gateway.
' --- Copyright (c) notice ---
' Copyright (c) 2010 Keith L Johnson. All rights are reserved.
' Author: K.L.Johnson - keithleejohnson@hotmail.com