Loqate, a GBG solution

Help Centre   |   Guides   |   Address, Email and Phone Verification   |   Zapcode Migration to Loqate's Address Capture

Zapcode Migration to Loqate's Address Capture

  1. Purpose of this guide
  2. What is Zapcode?
  3. What is Loqate's Address Verification?
  4. Your current integration
  5. Loqate's prerequisites
  6. Difference between Zapcode and Loqate
  7. Additional reading

Purpose of this guide

The purpose of this guide is to assist you with migrating from Zapcode local install to Loqate’s address verification tool as frictionless as possible.

What is Zapcode?

Zapcode is a locally installed street level validation tool that can reduce data entry time by performing a postcode to address search. This reduces the number of keystrokes needed to enter address information, which is invaluable in any environment where fast, accurate capture of an address is required.

What is Loqate's Address Verification?

Loqate’s address verification tool is the flagship web service solution of GBG for validating and verifying addresses at the point of capture. The web service uses real-time address lookups against a comprehensive dataset that is updated regularly in the cloud, eliminating the need for internal maintenance and supervision of a production server. 

Your current integration

In most situations, you will need access to your solution’s source code; this may have been written on a number of platforms in a variety of environments/languages. There are plenty of Loqate's address verification sample code examples for you to play with.

The below is not an exhaustive guide, simply key items to search for within your code to establish how Zapcode is currently utilised.

The Zapcode API comes in various flavours when integrating and the API you currently have may use one of the following:


For C developers, the client API is delivered as a library of objects (static library) and a dynamic library (DLL on Windows, shared library on Unix).

Key Methods to find:

  • To initiate a search for is zcSearch or ZAP_Search or ZAP_SearchEX this is where you’ll typically provide a postcode search
  • Methods such as ZAP_Initialise, ZAP_SetPath, ZAP_SetDataLicense ZAP_Exit, zcStartup, zcCleanup, zcConnect will become obsolete as no equivalent versions are available or necessary

Java API

For Java developers, the client API is available as a Java class packaged in a Java Archive (JAR) file - capscan.jar.

This API provides an optional pop up a dialog box that allows the user to select from the ambiguity list.

Key Methods and Imported Class to find:

  • search() where ZcConnection is part of the imported Zapcode class
  • Methods such as connect, ZcConnection etc will become obsolete as no equivalent versions are available or indeed necessary

ActiveX API

An ActiveX control version supports COM and MTS.

Key Methods and Imported Class to find:

  • The class used may be defined similar to ZCC = Server.CreateObject("Zapcode.Client.1") in ASP or ZcClientClass ZCC in C# or Private ZCC As ZcClientClass in VB
  • If the class is called ZCC then the key method will be ZCC.Search
  • Methods such as connect, Startup, GetErrorString etc will become obsolete as no equivalent versions are available or necessary


This Windows DLL wraps C API to provide the same functionality through an interface compatible with Visual BASIC, Delphi, Lotus Notes and other languages that can’t cope with the arrays and pointers in the underlying C API.

The DLL has the additional functionality of an optional built-in ambiguity list.

Key Methods and Imported Class to find:

  • The class used may be defined similarly to Private ZCC As ZcClientClass in VB
  • The main search may look like ZcSearchString
  • Methods such as connect, Startup, GetErrorString etc will become obsolete as no equivalent versions are available or necessary


This .NET assembly is a class wrapper for the Capscan Client API library routines.

Again, depending on language in use the format/naming convention may vary

Key Methods and Imported Class to find:

  • For C# it may look like Capscan.ClientApi.Search
  • For VB it may look like Capscan.ClientApi.Search(ConnectHandle, SearchType, CType(AvailableFields, String()), WhereList, SearchAddress, Timeout) or Search(CType(TypeOfSearch.AmbiguitySelect, Integer))

Standalone API **

The standalone API was originally intended for the purpose of a single production server used on a single machine. Again, various languages can be deployed.

If the above does not represent your current usage, we suggest you contact your Account Manager so they can secure assistance from the Helpdesk and/or Professional Services Team.

Your new integration - Loqate's Address Verification pre-requisites

Depending on environment and language deployed, you may need the ability to recompile your code once you recode appropriate changes. You will, of course, require the ability to call WebServices, and hence an internet connection and routes through your firewalls are essential.

It is possible that you will not need code changes, depending on how you wish to deploy Loqate's Address Verification as there are drag and drop capabilities within the solution. For instance, if your current deployment hosts a web page capturing UK postcodes, you can use a client-side HTML based resource see our setup guide

If you use Magento or Wordpress see our relevant guides for more information.

What are the differences between Zapcode and Loqate's address verification tool?


API calls

  • Zapcode

With Zapcode as described above, access to the engine is done by using the various different flavours available for Zapcode. The Zapcode engine will then make a call using the ‘Postcode’ field, which will then make a cross reference check against the reference dataset to see if there is a match.

  • Loqate's Address Verification

Loqate's Address Verification can be integrated in two ways:

  1. Into a webpage (client-side, browser-based application)
    This route can take just minutes to implement and includes a specific Javascript tag that is embedded into your web page HTML code. This is set up through a wizard-style application within your Loqate account dashboard. Find out more.
  2. Through the API, into a server-side or ‘back-end’
    This is also a simple integration but involves a little more program coding. The web service uses two methods ‘FIND’ and ‘RETRIEVE’ to perform an address lookup.

  • The FIND method is used to perform the address lookup. Find out more.
  • The RETRIEVE method is used to select the address from the search result of FIND Find out more.

Reference data  

  • Zapcode

Your Zapcode data updates and search software engine are both downloaded manually from a GBG website. This would usually be done by a user or your system administrator to perform periodic maintenance of the Zapcode software and data. This would involve taking your server offline during the update/installation period and would mean disruption to the services that utilise Zapcode. Only when the installation is complete will production server be booted back up again. 

  • Loqate's Address Verification

The reference data and engine are all maintained internally by GBG and hosted on an AWS server, which is updated on a regular basis and means that there is no downtime or interruption to the service for your customers



  • Zapcode

Zapcode was designed to search exclusively as a postcode lookup tool, which returns addresses to street level, meaning premise information such as building names, building numbers are not provided back to the user. All that is returned are street, county, town and postal code. 

  • Loqate

Loqate's address verification works in the same way as a search engine, autosuggesting addresses as the user begins to type. This saves the user a vast amount of typing, allowing them to proceed quickly and easily to the next step. It should be noted that you can supply a full postcode, or even full address to find the address of interest, as per your current application most likely utilises Zapcode.


Additional reading

Loqate's Address Verification:


Zapcode Manual

Take a trial - no obligation, full support Get started