TotalCheck and Salesforce

Update – May 31, 2010: CRMe has done more work on a TotalCheck plugin for Salesforce!

An experimental version is now ready and for existing TotalCheck customers we will install the current version free of charge! Click here to test drive the application and see the power of TotalCheck which combines the Postal Address File and the White Pages.

Currently, the application will allow Salesforce users to create new Contacts (or Accounts) from an address which has been found through TotalCheck’s database.

Once the application has undergone testing, a beta will be publicly released as a managed Salesforce Application which can be installed through the AppExchange, and more news will be posted here.

Speeding up XML parsing in Salesforce

When making integrations, it is common to needing to parse XML as external application’s API’s almost always return XML (Web Services or REST).

Before Salesforce’s Spring ’10 edition, XML parsing wasn’t built into the platform, and we used Ron Hess’ XMLDom classes. There was a distinct disadvantage to this library because parsing a large XML document could result in the number of script statements (200,000 per request) being exceeded.

In Spring ’10, there is a new XML stream parser, and because it’s built-in, the class methods do not count towards your script statements used. Now, the XMLStreamReader class doesn’t even closely match the XMLDom class signature, but in the Salesforce developer newsletter there was mention of a Fast XML library by TechGerm.

The new wrapper library was easy to migrate to, and even though the initial test results actually increased the script statements, a quick conversation with the author soon fixed that!

Source code will be posted here soon.

Thanks again go to TechGerm for creating this wrapper library, if you currently have a Salesforce application which uses XMLDom, it’s the fastest way to migrate it and reduce script statements used.

TotalCheck integration for NetSuite

We have recently implemented a TotalCheck integration into NetSuite for Green Energy Trading who process data which needs to be submitted correctly to their regulator, and mistakes in addresses would be costly and time consuming.

Our client uses NetSuite for their data processing and required an AMAS certified system for address validation.

See the code in action in a demo environment:

The solution involved creating a server side component which can talk to the NetSuite server. The client side cannot connect directly to another server due to Cross Site Scripting (XSS) limitations of web browsers.

The server side component acts as a proxy which has an unfortunate side effect that it makes the lookups take longer than normal, which is amplified by the fact that NetSuite servers are located in the US, so for Australian users, each lookup has to pass through the US, meaning that if the latency is 0.2 sec, the request will take at least 0.8 sec, on top of the processing time.

Please read the case study by Sensis at Green Energy Trading.

Using Zendesk with your CRM

What is Zendesk?

Zendesk offers organisations a support desk in the cloud for a low subscription fee. It is used by a large variety of customers who seem to have very little in common, except that they have recognised they need to make an effort for their customers and give them the ability to track their own tickets and be more engaging by for example providing a knowledge base, enhancement request forum or product announcements.

Why do I need it if I already have a CRM?

Almost every CRM system has customer support functionality, often called Cases, which are records which represent a customer request or issue. Combined with workflow, Cases can be a great way to track Cases from the moment they come in until they are solved. But where CRMs often focus on the internal process, Zendesk is a system which focuses on the customer experience.

Zendesk does have workflow, which will work fine for most businesses, but for example compared to Salesforce, falls short where it comes to tracking Service Level Agreement (SLA) where the Service Level is expressed in business hours, as opposed to actual hours.

So why use Zendesk as well as CRM?

Zendesk isn’t a CRM, so you still need CRM. But why would you not stick with the CRM’s support functionality? Answer the following questions:

  • Does your CRM provide a customer portal, where the customer can always see the status of their issues?
  • Do you currently offer a knowledge base?
  • Do you accept enhancement requests from your customers?
  • Do your customers have online discussions about your product or services?

If you answered no to any of these questions, it’s worth considering Zendesk. CRMs often don’t offer this out of the box. Zendesk, apart from your customers being able to see their ticket status online, offers customer forums as standard which can be used for announcements, FAQs, general discussion and gathering valuable product feedback.

How will CRM and Zendesk work together?

If you were to implement Zendesk if you already have a CRM, the integration between the two systems is very important. When a salesperson wants to get a full picture of their account, they’ll need to see the status of any open issues. So how does this work? Zendesk offers API access to tickets which allows for integrations with any system such as CRMs. Zendesk already ships with integrations for Salesforce, Highrise and Tactile CRM.

What are the alternatives?

Apart from developing your own customer portal, there are many other helpdesk software solutions that offer a customer portal:

  • Web Help Desk – offers a free version, otherwise similar but no clear advantage over Zendesk
  • Get Satisfaction – more community oriented, sometimes used in conjunction with Zendesk
  • Kayako – integrated chat ability
  • Mojo Helpdesk – offers client satisfaction ratings, more cost efficient than Zendesk for large number of helpdesk staff

TotalCheck address validation

About TotalCheck

Sensis’ TotalCheck is a suite of APIs that allows developers to build address validation into any application. TotalCheck is essentially a Web Services API which provides a powerful search into the Australian Postal Address File (PAF) and the White Pages directory.

Businesses use TotalCheck to ensure address data can be entered with minimal effort and ensures it is always correct. A TotalCheck search combines the White Pages address database and the Postal Address File.

TotalCheck is AMAS certified and provides the address DPID (unique address identifier) and Australia Post barcode as part the address search, which can make a business eligible to use PreSort, and save on postage.

Search process

An application integrating with TotalCheck needs to go through three steps:

  1. Search for a name, which is either a business name or an individual’s last name. TotalCheck provides the suggestNames API which can be used to provide the 20 best matches to the user.
  2. Search for an address. TotalCheck offers a comprehensive suggestAddresses API which applications can use to auto-complete an address search field.
  3. Select an address. Once a user picks a suggestion from step #2, the address data is fetched from TotalCheck using the selectAddress API. It’s possible that another selection needs to be offered to the user, for example when the selected address is a block of units.


To integrate with TotalCheck, about the only prerequisite is that your application can connect to the Internet. If your application is a web application, it’s important to know that due to modern browsers’ cross site scripting (XSS) limitations, an integration cannot be achieved using JavaScript, or client side code only. To get around this limitation, connect to TotalCheck from the server-side, or setup a proxy.


Watch the demonstration by TotalCheck: