Tag Archives: ColdFusion

Top Payment Gateways – Integration with ColdFusion eCommerce Website

Top Payment Gateways - Integration with ColdFusion

One of ITLANDMARK’s biggest assets is our expertise in integrating payment gateways using ColdFusion. So far, we have integrated more than 25 payment gateways to numerous ColdFusion websites/applications.

With lot of new payment gateways coming up each year, we wanted to briefly review some of the most popular payment gateways. These are as follows:


Authorize.Net is one of the most economical and reliable services, which run their own payment gateway instead of contracting it to other services. Authorize.Net have very nominal monthly fees and charge $0.10 per CC transaction which is one of the lowest in its kind. There fraud prevention tools and virtual terminal come free with the subscription.

The API provided by the company could be used to completely customize webstore. Do contact us if you require any help in this regard. Simple Checkout is an option provided by them targetting small business where the highly secure payment forms are hosted elsewhere.

This could be great for small business entities and it’s always great to conduct credit card transactions on your website to gain confidence of your customers.

Technical support is completely free for Authorize.Net customers. They could be reached via email, phone or a live chat. Do remember that they are available only from Monday to Friday – 5 a.m. to 5 p.m. (Pacific Time).


Paypal is one of the most widely used payment gateways, as it is less problematic with merchant accounts, returned charges and credit card transactions. Some of the top payment solutions provided by Paypal are -

  • PayPal Payments Standard
  • PayPal Payments Advanced
  • PayPal Payments Pro

Websites using PayPal Payments Standard could accept credit cards but customers would be required to go to Paypal website. The Advanced and Pro version would let customers stay on your website as the payment forms would be hosted on your website.

PayPal Website Payments Pro is one of the best solutions which could be used by webstores that do not have huge transaction. They could be integrated easily with nearly all popular shopping carts.
Client support at Paypal is sometimes great while it sucks at some occasions. They have a history of holding back sellers’ funds and even freezing accounts. If you want to use it then employ it as a secondary payment option.

Google Checkout

Google Checkout is a payment gateway provided by Google.com using which merchants could accept credit card payments on their website or on retail outlets from people who use Google wallet.

The users could pay securely at online stores with the credit card information saved on Google checkout account. It is both safe and speeds up the checkout process simulataneously.

Google Checkout is quite similar to what paypal offers for their Advanced and Pro accounts where businesses could accept payments from the checkout hosted on Google servers or via shopping cart integration with the service. Merchants would require services from experienced web developer for the API integration.

Customer support for merchants at Google is horrible as compared to their other products. You should use it only as a secondary payment gateway.


CyberSource delivers services for business owners of every size and type. This is one of the most flexible and professional payment gateway solutions encountered so far. This gateway helps optimize business results by managing every aspect in your payment operations from accepting payments to pavement security.

This complete modular system of web based assistance offers versatility to add more options when and where required. Its features include –

#Global Payment Services – Give you freedom to sell online anywhere in the world and thus give a boost to your customer reach. Merchants can accept payments in preferred local markets, transact payments in nearly 190 countries and deposit capitals in major currency trade centers, enabling every step in a single connection.

#Payment Security – Offers a wide line of services that reduce the complexity and cost of payment security. Protects your brand and builds trust.

#Fraud Management – Detects the fraud sooner and accurately, while streamlining the fraud operations.
#Reporting and Reconciliation – Provides reporting and reconciliation knacks to streamline the process operations.

Amazon Payments

Amazon payment gateway is similar to PayPal and Google Checkout processes. This payment service offers its customers the flexibility to make their payments on other websites using Amazon account.

Amazon Simple Pay is one of the Amazon services used by merchants to create, improve conversion and attract users to their application. It enables easy payment processes. It can be set as a payment option for digital goods and services like digital content, online publications and social networking.

It also offers chargeback controls, fraud detection capabilities and risk management techniques to reduce bad debts and lowers costs.

Amazon Flexible Payments Service is the primary payment services created from ground-up for developers. This is created on top of Amazon’s scalable payment infrastructure, offering developers an easy way to charge millions of buyers. Customers are required to make their payments using login credentials, payment information and shipping address which is already present in the Amazon database.


SecurePay is one of the largest payment gateways in Australia and is being operated by Australian post. This Australian Post Business is specialized in developing cost effective payment services tailored to the business needs. The payment solutions are delivered using a wide range of proven and well-tested major proprietary developed systems. With PCI-DSS compliance, this is the most secured platform.

It easily integrates the existing applications, CRM (Customer Relationship Management) systems, shopping carts and booking engines. It builds and maintains the payment services so that the users can know where and how the payments are processed.


Stripe is comparatively a new payment gateway founded in 2010. There are no set-up fees for the service, no minimum charges and over all there are no monthly fees. Stripe charges fixed transaction fees of 2.9% plus $0.30 for all types of cards and areas. There are no fees for refunds or failed payments either. The company does have a $15 chargeback fees.
Stripe keeps the credit card information away from the merchant’s server thus eliminating the need for PCI-compliance. They however hold the money for seven days before paying it.

The company provides email support, but there is no phone or chat support which might pose some problems for merchants. Online reviews on this payment gateway provider are primarily positive and their customers are happy with their services. This service could be your first choice if you are implementing a payment processing for a moderate type of transactions.


Braintree Payment Solutions is a Chicago, Illinois based company founded in 2007. The company targets its services to e-commerce merchants and subscription based businesses.

Braintree offers PCI compliance automatically by storing the credit card information away from the merchant’s servers to its own secured servers. Re-entering the credit card information is not necessary when it comes to refund or recharge. It also lets merchants set up charges that are recurring and is done on periodic intervals. Merchants could accept payments in 134 currencies spanning 21 countries.

Transaction fees charged by the company are similar to that charged by Stripe & Paypal which is 2.9% plus $0.30 per transaction which is same for all credit card types. In case of disputes merchant has to bear a chargeback fees of $15. In case a merchant wants to use their payment gateway with different processor, they will then charge $49/month with 10 cents transaction fees.

You might want to consider Braintree services because they do not charge monthly fees, setup fees, PCI compliance fees and overall no cancellation fees. We could not find negative comments or reviews on them on web.


WorldPay was founded in 1989 under the name “Streamline”. The company has good presence in UK and Europe and is also active in 40 countries internationally.

Other than offering credit card processing services, the company also offers check processing, gift card processing, loyalty card services, ATM, while its online payment processing is powered by Authorize.net.

Rates for this service are higher as compared to other providers and longer agreement for their services might not go well with small merchants. Merchants are required to signup with them with three years standard service agreement and an automatic one year renewal. The cancellation penalty is $495.
Worldpay is a very big direct processor with a wide international presence. If they could work on their penalty and auto renewing contract, they might become a preferred provider for even small and medium businesses.


Dwolla was founded in 2008 and is primarily preferred provider due to their low cost service for businesses. Their services are similar to Paypal but with a little difference. They do not charge fees for the transactions by linking consumers’ accounts with Dwolla with their checking accounts.

Dwolla eliminates fees that merchants have to bear while accepting credit cards and also eliminates transfer delays and fraud. Dwolla also provides instant cash transfers globally.

Company provides email support and has a dedicated customer support number. The company offers low cost solution for business that are low in risk. Their service is highly preferable for business to business payment.


2Checkout is best known for supporting all leading payment methods and gateway services, like MasterCard, Visa, Discover, American Express, Diner’s Club, JCB, debit card, and even PayPal.
It has two different cehckout methods
1.Standard: It displays the checkout page depending on the customer’s device, which shows as if the Checkout page is part of the merchant’s site while providing all the benefits of a hosted checkout solution.
2.Hosted checkout solution.

Any transaction entered in 2Checkout is guaranteed to be secure thanks to the platform’s Payment Card Industry (PCI) Data Security Standard. Its PCI security is Level 1 certified, the highest certification possible that guarantees total protection for both merchant and customer from possible fraud.

offers integration with more than 100 online shopping carts and invoicing systems, which includes Shopify, Magento, and WP e-Commerce, among others. A suite of open API is also available that will enable your site to be integrated with 2Checkout’s powerful payment platform.

AlertPay (Payza)

Payza (formerly AlertPay) can be used by businesses and individuals to securely send and accept money anywhere in the world. Individuals can open a personal Payza account while enterprises can make use of business accounts for their larger needs. This solution performs conventional online payment processing and is similar to other payment gateways.

Payza is available in 22 currencies and is used in 190 countries. This service is especially popular in developing countries where merchants use it to send and receive money on a global scale. Top features of this solution include shopping cart integration, centralized management, payment buttons, local payment options, request funds, send funds, and secure online payments.Payza comes with all the features one expects from an online payment processing platform. The system makes it very convenient for users to send and receive money worldwide. Payza can perform many payment-related transactions and enables users to accept payments via ACH transfers, bank wires, cashier’s checks, bitcoin money orders, or credit and debit cards.

Payza management also guarantees to keep the platform as simple, international, versatile, and secure as possible. The service now caters to over 9 million users worldwide and that figure keeps on growing, giving users access to a very large customer base, which is beneficial for online merchants.


This is All-in-one Payment Platform is specifically designed to convert more shoppers to buyers by reducing checkout abandonment on the payment page and by optimizing payment approval rates behind the scenes. Over 1,000 customers worldwide trust BlueSnap to process their online payments.BlueSnap’s Platform you will be able to accept all major credit and debit cards: Visa, MasterCard, American Express, Discover, Diner’s Club, JCB.
This is bank agnostic which allows us to provide access to many alternative payment methods such as PayPal, SEPA, and 110 others built-in with the Platform. they also provide eWallets such as, MasterPass, Visa Checkout, Apple Pay and more. All we need is one integration with BlueSnap.

Built-in with the All-in-one Payment Platform are popular eCommerce platforms such as WooCommerce, Magento, and Shopify. These integrations allow you to quickly and easily process all major credit and debit card payments safely and securely. You’ll also receive the added benefit of our multiple acquiring bank relationships, which automatically increase your payment acceptance rates through the use of intelligent payment routing.

BlueSnap complies with Level 1 Payment Card Industry Data Security Standards (PCI-DSS), which are the highest standards in the industry. Merchants that are already compliant themselves can use our APIs to process payments without implementing any additional security measures. For merchants that opt not to obtain a Level 1 certification, BlueSnap offers several tools to simplify PCI compliance.


CardinalCommerce is a payment gateway provider that enables secure transactions and authenticated payments, and offers alternative payment brands for both mobile commerce and online eCommerce. This platform offers payment brands for thousands of global merchants.

CardinalCommerce has utilized years of feedback and experience to design suitable payment processing solutions for financial institutions and merchants. Its range of products is used by merchants in more than 200 countries and in greater than 180 currencies. Main features include universal wallet, universal PIN debit service, tokenization, mobile marketing, mobile banking, hosted payments, digital gift cards, and consumer authentication.

There is also the Universal Wallet which provides access to multiple digital wallets with a single integration, such as PayPal, Amazon Payments, MasterCard MasterPass, and Visa CheckOut. This is beneficial to consumers who can now pay safely and securely with just a few keystrokes or clicks. As far as security is concerned, users can enable tokenization to reduce PCI scope and protect the most sensitive information of their customers.


Converge is a cloud-hosted payment solution that enables businesses to accept payments online, in-store, and on the go. You can easily configure this flexible platform for your business needs.

Converge provides compatible solutions for all environments including eCommerce, mobile app, mobile Web, in-store, telephone, and traditional mail. You can use these solutions to optimize your payment processing procedures and drive long-term growth. Converge is successful because it also offers valuable integrations and affordable pricing. Key features include detailed reporting, tokenization, encryption, EMV, electronic benefit transfer, gift cards, and checks, and mobile payments.

Converge accepts a full range of payment methods, from cash, credit cards and debit cards, to other electronic payment solutions such as electronic checks, gift cards and even electronic transfers. Users can process payments not only online but also in-store through a computer, card reader, PIN pads, or other devices, and even process mail or phone payments through the system. Its mobile app is intuitive to use and is compatible with most smartphones and tablets in the market.

Converge also offers enhanced security features, including EMV, encryption, and tokenization that complies with the strictest security standards. The system is also easy to setup, so that users can start accepting payments instantly. For a more comprehensive view of the business’ sales performance, detailed reporting with up to 12 months of data storage is available to readily provide such information to gauge business performance and help formulate better strategies if necessary.

Customizable payment screens can be set up to ensure a unique customer experience that helps generate sales conversions. For businesses that have a lot of personnel such as salespeople, permission management is available for up to 5,000 users who may need to access the system at any time from any device.

We have expertise to integrate all the above payment gateway providers with your shopping cart. Do contact us in case you require any custom services in Coldfusion.

Clustering for load balancing and failover using ColdFusion 10 Enterprise edition


This week, we have worked on setting up load balancing with multiple server instances and clustering using ColdFusion 10 Enterprise Edition.

Why do we need clustering / load balancing?

The ColdFusion application server (Enterprise Edition) has the capability of routing the requests among the server instances in a cluster based on the individual instance load. This will be mostly helpful when yours is a high traffic website and needs a minimal downtime. In clustering, the requests go to the instance with less load. Also, when one of the instance in the cluster is down, the requests get routed to others ensuring the high availability of the application.

How do we it setup?

This is possible with ColdFusion Enterprise edition only.

  • The prerequisite for this setup is, IIS needs to be installed with all the necessary features (like Application Development, Security & Management Tools) enabled.


  • Then install the J2EE (EAR or WAR) using the ColdFusion installer.
  • Once J2EE is installed, install the ColdFusion Application Server.
  • Go to Enterprise Manager and add new cluster.
  • Create new instances from the Enterprise Manager and add to the cluster.
  • Run the ColdFusion web configuration tool of one of the instances and assign the instance to the website which needs to run on the cluster.

While this process is not so hard, one can end up spending days if the all the steps are not followed properly. If you need any help in setting up the clustering for load balancing and failover using ColdFusion, feel free to contact us.

Replace Flash Player with HTML5 Player on your ColdFusion Website – Make it compatible with Smart Phones & Tablets

HTML 5 Player - Alternative to Flash Player on Smart Phones like iPhone, Android, Blackberry, etc


Recently, we have been getting lot of requests saying the flash components (audio, video players, banners, etc) integrated on their ColdFusion Website / Application are not working on smart phones and tablets. True, while there are workarounds to make flash work on Android, it is absolutely not compatible with the most popular iOS (iPhone / iPad) and many other smart phones / tablets.

So, how do we resolve it? No need to panic. There is this alternative called HTML 5, a new web standard which has been adopted by Google, Apple and many others. It lets us create advanced graphics, animations, etc without any third party browser plug-ins (like Flash). This is very easy to integrate as well. Phew…

But, there are other problems like ‘not all the browsers accept same video format’, ‘not all videos (like HD) can be played on all the browsers’, etc to deal with. Here comes the need for a team who can work on HTML 5, Videos/Animations, ColdFusion to replace Flash and integrate HTML5 player on ColdFusion Website / Application so you need not worry about any more compatibility issues.

If you are in need of such help, please contact us.

ColdFusion + Google Maps Javascript API Version 3

ColdFusion & Google Maps Javascipt API v3

The Google Maps Javascript API is used to integrate maps on web pages. The new Google Maps API Version 3 is designed to be faster and more applicable to mobile devices, as well as traditional desktop browser applications.

Today, lets see how we can integrate Google Map API V3 with a ColdFusion website / application and make it interactive.

Simple code to integrate a Google Map on ColdFusion website (in fact, any HTML page):


<!DOCTYPE html>
<meta name="viewport" content="initial-scale=1.0, user-scalable=no" />
<style type="text/css">
html { height: 100% }
body { height: 100%; margin: 0; padding: 0 }
#map-canvas { height: 100% }
<script type="text/javascript" src="https://maps.googleapis.com/maps/api/js?key=API_KEY&sensor=SET_TO_TRUE_OR_FALSE"></script>
<script type="text/javascript">
function initialize() {
var mapOptions = {
center: new google.maps.LatLng(-34.397, 150.644),
zoom: 8,
mapTypeId: google.maps.MapTypeId.ROADMAP
var map = new google.maps.Map(document.getElementById("map-canvas"), mapOptions);
google.maps.event.addDomListener(window, 'load', initialize);
<body onUnload="initialize();">
<div id="map-canvas"/>

Make it interactive:

You can also show the markers on Google map to point locations that you would like to indicate. Obviously, on a dynamic ColdFusion website / application, we would to show the markers based on the location results from your database. But, sending all the data (locations) to Google Map would sometimes cause troubles when it comes to large data. The map loads really slow and might even make the page unresponsive. How could we handle this situation? Here are some tips:

1) Show only the results that fall into the viewport or define the boundaries.


2) Fetch and reload the results/markers upon zooming or navigating/panning by capturing and sending the map boundaries (min & max latitudes and longitudes). Here is a sample on how you would do it.

google.maps.event.addListener(map, 'zoom_changed', onClickCallback); //listen to zoom event and call function to reload markers
google.maps.event.addListener(map, 'drag', onClickCallback); //listen to drag/pan event and call function to reload markers

function onClickCallback() {


var southWestLat = map.getBounds().getSouthWest().lat();
var southWestLng = map.getBounds().getSouthWest().lng();
var northEastLat = map.getBounds().getNorthEast().lat();
var northEastLng = map.getBounds().getNorthEast().lng(); 

var minLat = map.getBounds().getSouthWest().lat();
var maxLat = map.getBounds().getNorthEast().lat();
var minLng = map.getBounds().getSouthWest().lng();
var maxLng = map.getBounds().getNorthEast().lng(); 

type: "POST",
url: "markers.cfm?minlat="+minLat+"&maxlat="+maxLat+"&minlng="+minLng+"&maxlng="+maxLng,
dataType: "json",
data: ({'southWestLat' : southWestLat , 'southWestLng' : southWestLng , 'northEastLat' : northEastLat , 'northEastLng' : northEastLng}),
success: function(json){
if (json.Locations.length > 0) {
var bounds = new google.maps.LatLngBounds();
var marker = [];
for (var i=0; i<json.Locations.length; i++) {
var location = json.Locations[i];
var LatLngbounds = new google.maps.LatLng(location.latitude, location.longitude);
var image = new google.maps.MarkerImage('/images/custom-marker.png');
marker[i] = new google.maps.Marker({
position: new google.maps.LatLng(location.latitude, location.longitude),
google.maps.event.addListener(marker[i], 'click',
infowindow.open(map, this);

if (viewportOverlay != null) {
viewportOverlay = new google.maps.Rectangle({
'bounds': bounds,
'strokeColor': '#0000ff',
'strokeOpacity': 1.0,
'strokeWeight': 2.0,
'fillOpacity': 0.0

This way you can load and point any number of locations dynamically without having to worry about slowing down the page.

Populate address based on the user location using ColdFusion components

Display nearby address based on user location using google map with ColdFusion

1. First, we need to display map with default map location


map = new google.maps.Map(document.getElementById('map'), {
center: {lat: 20.5937, lng: 78.9629},
zoom: 5

2. Get user’s location lat and lng values using geolocation object called navigator.geolocation()

navigator.geolocation.getCurrentPosition(function(position) {
var UserLocation = {
info: '<strong>This is User Location</strong><br>',
lat: position.coords.latitude,
lon: position.coords.longitude
var locations = [
[ UserLocation.info, UserLocation.lat, UserLocation.lon,0],

3. Pass the user’s location to CFC or ColdFusion component and get the surrounding address from the DB in JSON return format.

data: { "Latitude": UserLocation.lat, "Longitude": UserLocation.lon },
success: function(response) {
var obj = JSON.parse(response);
error: function(response) {
console.log('Error' + response)}

Return Data JSON Looks like this:

var jsondata = '{"Surroundinglocations":[{"location":"Kukatpally","lat":"17.4948", "lon":"78.3996"},{"location":"JubileeHills","lat":"17.4325", "lon":"78.4070"},{"location":"Khairtabad","lat":"17.4151", "lon":"78.4648" },{"location":"Secunderabad","lat":"17.4399", "lon":"78.4983"},{"location":"Kondapur","lat":"17.4622", "lon":"78.3568"}]}'

var obj = JSON.parse(response);

4. Loop the JSON object and populate those address on the google map with info window.

for(var key in obj.Surroundinglocations) {
marker = new google.maps.Marker({
position: new google.maps.LatLng(obj.Surroundinglocations[key].lat, obj.Surroundinglocations[key].lon),
map: map

Hope this helps. If you need any help, please feel free to contact us.

By the way, the Google Maps API V2 is now deprecated and it is time to upgrade to Google Maps API V3. Here is the official note from Google:

The Google Maps Javascript API Version 3 is now the official Javascript API. Version 2 of this API has been officially deprecated as per our deprecation policy. We encourage you to migrate your code to this newly updated and enhanced version!

Reference(s): Google Maps JavaScript API v3 Documentation

Canada Post Shipping API Integration with ColdFusion

Canada Post Shipping API Integration using ColdFusion
Today, we will discuss about how to integrate Canada Post Shipping API using ColdFusion. If you have searched for Canada Post API code, you might have already noticed that there is no SDK, open source code or a tag readily available. So, we want to help you in doing it by yourself in simple steps. Here is the code sample we give here can be extended to call other Canada Post API methods.

<!--- Step1: Initialize all the variables (Canada Post account details, shipping location, parcel dimensions, etc) --->

apiKey = "xxxxxxxxxxxxxxxx : xxxxxxxxxxxxxxxxxxx";
username = ListFirst(apiKey,':');
password = ListLast(apiKey,':');
customerNumber = "xxxxxxx";
serviceURL = "https://soa-gw.canadapost.ca/rs/ship/price";
originPostalCode = "xxxxxx";
postalCode = "xxxxxx";
countryCode = "CA";
weight = "1";
length = "1";
width = "1";
height = "1";

<!--- Step2: Construct xml to hit the api and get shipping options and prices --->

<cfsavecontent variable="xmlRequest">
<?xml version="1.0" encoding="utf-8"?>
<mailing-scenario xmlns="http://www.canadapost.ca/ws/ship/rate">
<length>#NumberFormat(length, ".9")#</length>
<width>#NumberFormat(width, ".9")#</width>
<height>#NumberFormat(height, ".9")#</height>
<weight>#NumberFormat(weight, ".9")#</weight>
<cfif countryCode EQ 'CA'>
<cfelseif countryCode EQ 'us'>

<!--- Step3: Post request to Canada Post API --->

username="#username#" password="#password#">
<cfhttpparam type="header" name="Content-type" value="application/vnd.cpc.ship.rate+xml">

<!--- Step4: Parse the XML response from the API and display the results --->

shipQuotes = xmlparse(httpResponse.Filecontent);
quoteDetail = shipQuotes["price-quotes"]["price-quote"];
quotesNum = ArrayLen(thisquote)

<table border="1">
<th>Service Code</th>
<th>Servie Name</th>
<th>Service Fee</th>
<cfloop from="1" to="#quotesNum#" index="i">

That’s it! You are all set to use CanadaPost API on your ColdFusion website / application.

If you have any questions or problems, please contact us.

References: Canada Post Getting Started Guide