Mastersoft Harmony v1.3

This package provides capabilities that extend the Avoka Transact platform with integration to the Mastersoft Harmony suite of services for data validation. These include:

  1. Real-time Australian address search and auto-complete - demo
  2. >Real-time email address validation - demo
  3. Real-time Australian phone number validation - demo

For address auto-complete support, this package includes 3 components:

  1. Mastersoft Short Address Lookup
    This component provides address lookup capabilites for short format addresses and includes a short format address field set for manual address entry if required.
  2. Mastersoft Long Address Lookup
    This component provides address lookup capabilites for long format addresses and includes a long format address field set for manual address entry if required.
  3. Mastersoft Address Autocomplete
    This is a is used in the short and long address lookup components and is a single field address lookup that can be used to populate a custom address block where the short and long formats provided are not suitable.

For email validation support, this package includes the component:

  1. Mastersoft Email Validation
    This component provides email address validation capabilities.

For phone validation support, this package includes the component:

  1. Mastersoft Phone Validation
    This component provides phone validation capabilities.

Process Flow

Below are the sequence diagrams for Mastersoft Harmony. This gives an insight into the design of the Mastersoft Harmony Components.

Mastersoft Address Lookup

Mastersoft Email Validation

Mastersoft Phone Validation

Address Formats

Avoka provides 2 address format options:

Short format address (sometimes called standard 5 field address) is a very common address format used in systems of record and consists of the following fields:

  1. Address Line 1
  2. Address Line 2
  3. Locality
  4. State
  5. Postal Code

Long format address provides a more explicit breakdown of address components:

  1. Building Name
  2. Subdwelling
  3. Street Number
  4. Street Name
  5. Street Type
  6. Locality
  7. State
  8. Postal Code

Where practical we also provide the following addtional fields:

  1. Country
  2. Country Code
  3. Full Address
  4. Lookup Key
  5. Postal Flag

This package also supports the ability for you to configure the retrieval additional fields that may be provided by Mastersoft such as DPID, GNAFPID or Barcode (see

  1. Country
  2. Country Code
  3. Full Address
  4. Lookup Key
  5. Postal Flag

Address Field Definitions

FieldDescription
Address Line 1
(short format only)
This will be the first of 2 address lines. The contents of this element will depend on the existence of a building name or subdwelling where a subdwelling could be a unit/flat/shop/suite number or a level/floor number. If any of these elements exist then this field will contain these sub-location elements in the following order:

[buildingName] [floor/level] [unit/flat/shop/suite]

If none of these sub-location elements exist then this field will contain:

[streetNumber] [streetName] [streetType]

Address Line 2
(short format only)
This will be the second of 2 address lines and will be blank unless addressLine1 contains sub-location elements, in which case the addressLine2 will contain:

[streetNumber] [streetName] [streetType]

Building Name
(long format only)
Occasionally physical addresses include the name of the building they are located within. For example, performing a lookup for 34/267-277 CASTLEREAGH ST will return a building name of MUSEUM TOWERS.
Subdwelling
(long format only)
The subdwelling value will contain floor/level identifiers and/or unit/flat/shop/suite identifiers.
Street Number
(long format only)
For physical addresses this value will contain the street number of the address which does not include the unit or flat number, but may be represented as a range (e.g. 267-277). For non-physical addresses this field will contain the PO Box, Locked Bag, or similar data.
Street Name
(long format only)
Where practical, this field will contain the name of the street only, with street type being provided separately (see below).
Street Type
(long format only)
The street type value may be provided as an expanded value (e.g. ROAD) or abbreviation (e.g. RD), depending on the lookup service response data.
Locality The locality information varies from country to country but will usually be either suburb or city.
State The State that the address resides in. For some countries (e.g. New Zealand) this may be blank.
Postal Code The regional postal code, also referred to as Zip Code (US) and Postcode.
Country The Country that the address is located wihin, in its expanded form (e.g. Australia).
Country Code Where practical, the Country code will be provided as represented in the ISO 2 character (e.g. AU) or 3 character (e.g. AUS) standards, depending on the data provided by the lookup service.
Postal Flag The postal flag field indicate whether this address is a non-physical address (e.g. PO Box, Locked Bag etc...). Most address lookup providers support the ability to exclude non-physical addresses from lookup searches if required.
Full Address The intention of this field is to provide the full address with the exclusion of Country, as a single one line string. For example:

MUSEUM TOWERS U 34 267-277 CASTLEREAGH ST SYDNEY NSW 2000

Lookup Key This field represents a unique identifier for the address in the 3rd party system and will be different for each provider.

Licensing

Clients must ensure they are appropriately licenses in order to use this package. Organisations who wish to use this package are required to establish a commercial relationship with Mastersoft directly. Organisations

Compatibility

This package has the following compatibility requirements:

ModuleCompatibilityNotes
Transact Manager5.0.1 or above
Transact Maestro5.0.12 or above

Please note that if your project is on Maestro version 17.10, make sure Maestro version is 17.10.4 or above if you intend to set clearing hidden data on submit at form level.

Installation Instructions

To install this package please walk through the following proceedure:

  1. Unzip the package to a directory on your computer
  2. Import each zip archive found in the services folder to Transact Manager under the Services >> All Services menu item.
  3. Review the Help Doc tab for each of the imported services and make any required adjustments to service parameters.
  4. Review the Service Connection requirements under the same Help Doc tab for each of the imported services and make any required configurations to the Service Connection. Service Connections can be configured in Transact Manager under the Services >> Service Connections menu item.
  5. Import each archive found in the libraries folder to Maestro. Importing these into the Organisation level libraries folder is recommended as this will make the components available to all projects, however they can be imported at the Project level if required.

Usage Instructions

To configure the 'Mastersoft Long/Short Address Lookup' component, please walk through the following procedure:

  1. Open your form in Maestro and drag and drop the component from the Palette.
  2. Open the properties section of the component block.
  3. Under 'Options' section, setup the properties described below.
  4. Set calculation rule for 'Country Code' under the 'Control Fields' if you would like to limit the search result in certain country. Check Mastersoft Harmony - Address Search for detail.

To use the single field 'Mastersoft Address Autocomplete', please walk through the following procedure:

  1. Open your form in Maestro and drag and drop the field called 'Mastersoft Address Autocomplete' from the Palette.
  2. Open the properties section of the field.
  3. Under 'DDS Configuration' section, map the response data fields to your Maestro fields.

To use the email/phone validation, drag and drop the field from Maestro palette.

Release Notes

Version 1.3 Sep 18, 2018

  • Added postcode field validation in both long and short address components.
  • Added sequence diagrams.

Version 1.2 May 7, 2018

  • Made the long and short address components preserved the address information by default.

Version 1.1 Aug 4, 2017

  • Added support for language translation
  • Verify that the response status is SUCCESS, and log the response content when the service field 'Groovy Debug Logging' is set.

Version 1.0 Feb 7, 2017

  • Baseline release.

Maestro Assets

Mastersoft Address Autocomplete Library: exchange.mastersoft.harmony Category: Mastersoft Harmony

Australian address autocomplete service using the Mastersoft Harmony APIs

Used In

Service Calls

Rule Templates

You may add your own logic to handle the following rule types triggered by this component:

  • On Success : a script to run on success of the dynamic data call, the parameter info contains the response
  • On List Item Select : a script to run on the click of a result
  • On Extra Item Select : a script to run on the click of an extra item
  • On Label Button Click : a script to run on the click of an optional button next to label
  • On Complete : a script to run when the auto-complete process is successfully completed.

Mastersoft Email Address Validation Library: exchange.mastersoft.harmony Category: Mastersoft Harmony

Email address validation using Mastersoft Harmony API

Service Calls

Mastersoft Long Address Lookup Library: exchange.mastersoft.harmony Category: Mastersoft Harmony

Address lookup component with long format address block

Uses

Properties

Property Category Description Type Default
Mandatory Options

Controls the mandatory status of the address capture

boolean false
Include Postal Addresses Options

Controls whether the search results should include non-physical addresses such as PO Boxes and Locked Bags etc...

boolean true
All Capital Letters Options

Controls whether the address label in the auto-complete field is all capitalised

boolean false
Maximum Result Size Options

Controls the maximum number of results to be returned in address searches

integer
Show Address Block Options

Controls whether to always show the address block or not

boolean false
Show Country Field Options

Controls whether to present the Country field in the address block

boolean false
Mastersoft Phone Validation Library: exchange.mastersoft.harmony Category: Mastersoft Harmony

Mastersoft phone validation

Service Calls

Mastersoft Short Address Lookup Library: exchange.mastersoft.harmony Category: Mastersoft Harmony

Address lookup component with short format address block

Uses

Properties

Property Category Description Type Default
Mandatory Options

Controls the mandatory status of the address capture

boolean false
All Capital Letters Options

Controls whether the address label in the auto-complete field is all capitalised

boolean false
Maximum Result Size Options

Controls the maximum number of results to be returned in address searches

integer
Include Postal Addresses Options

Controls whether the search results should include non-physical addresses such as PO Boxes and Locked Bags etc...

boolean true
Show Address Block Options

Controls whether to always show the address block or not

boolean false
Show Country Field Options

Controls whether to present the Country field in the address block

boolean false

Services

Mastersoft Harmony - Address Search v1
This service facilitates address searching using the Mastersoft Harmony Address API. This API supports Australia and New Zealand addresses only.

Service Connection

Compatibility

Module Compatibility
Manager 5.0

Service Parameters

Name Description Required Default
maxResultSize Default value for maximum number of matching search results returned from the search function (default 10). This value can be overridden as a request parameter if required. Must be between 1 and 20. Yes 10
sourceMap A delimited string detailing the source of truth to use for each of the supported country codes, e.g. AU|AUPAF,NZ|NZPAF No AU|AUPAF,NZ|NZPAF
extraResultsMap A delimited string containing extra result fields to return with the address, e.g. barcode|attributes.Barcode,dpid|attributes.DPID No dpid|attributes.DPID

Inputs

Name Description Required
searchString The address search string. No
countryCode Optionally specify a country code to limit search scope. Expects ISO standard 2 character codes (e.g. AU, NZ) No
maxResultSize Optionally specify a numeric maximum result list size to override the default: 10. Cannot be less than 1 or greater than 20. No
allCaps Optionally request that results are returned in all capital letters [ true | false ] (default: false) No
includePostal Optionally specify whether to include non-physical addresses (PO Boxes, Locked Bags etc) in the results [ true | false ] (default: No
format Optionally specify the format of the address to be returned [ short | long ] (default: long) No

Outputs

Name Description
[] The results are provided as a JSON array of objects with the following attributes:
[].label The value to display in the result list, will be full address (excluding Country)
[].fullAddress The full address (excluding country)
[].lookupKey The unique identifier for the matched address in the source database.
[].buildingName
[].subdwelling
[].streetNumber
[].streetName
[].streetType
Where address format long is requested the address will be broken into these sub-elements
[].addressLine1
[].addressLine2
Where address format short is requested the address will be returned with the simple breakdown
[].locality The suburb
[].state The Australian state, blank for NZ addresses
[].postalCode The postcode
[].country The country name E.g. Australia
[].countryCode The 2 character country code
Mastersoft Harmony - Validate Email v1
This service facilitates email address validation using the Mastersoft Harmony API.

Service Connection

Compatibility

Module Compatibility
Manager 5.0

Inputs

Name Description Required
emailAddress The email address. Yes

Outputs

Name Description
validationStatus The status of the validation call, will be [VALID|INVALID|UNKNOWN]. UNKNOWN status is when the format, domain and server are valid, but mail box validation returned false. Clients should check that the validationStatus is not INVALID as an UNKNOWN result is not definitive. If validationStatus = INVALID a generic errorMessage will be provided and executionStatus will be set to DATA_ERROR
mailBoxValidated True if the mailbox for the email address has been found to exist, false otherwise.
domainValidated True if the domain of the email address has a valid MX record, false otherwise.
mailServerValidated True if the server of the email address is valid, false otherwise.
formatValidated True if the format of the email address is correct, false otherwise.
blackListValidated True if the email address doesn't appear on the email black list, false otherwise. a generic errorMessage will be provided and executionStatus will be set to DATA_ERROR
executionStatus The status of the service execution [ SUCCESS | DATA_ERROR | SYSTEM_ERROR ].

Successful execution will be denoted by a SUCCESS value. DATA_ERROR will indicate that there was an issue identified with the input data that may be resolved and potentially retried by the user. SYSTEM_ERROR indicates that there was an unrecoverable system fault and the form should fall-back gracefully to an alternative path.

errorMessage When a DATA_ERROR is experienced, this value may provide more detail on the nature of the error.
Mastersoft Harmony - Validate Phone v1
This service facilitates Australian Phone Number validation using the Mastersoft Harmony API.

Service Connection

Compatibility

Module Compatibility
Manager 5.0

Inputs

Name Description Required
phone The phone number. Yes
countryCode Optionally specify a country code to limit search scope. Expects ISO standard 2 character codes (e.g. AU, NZ) No

Outputs

Name Description
validationStatus The status of the validation call, will be [VALID|INVALID|UNKNOWN]. Clients should check that the validationStatus is not INVALID as an UNKNOWN result is not definitive. If validationStatus = INVALID a generic errorMessage will be provided and executionStatus will be set to DATA_ERROR
phoneStatus The current status of the mobile phone with the supplied number (e.g. 'Active').
operatorName The mobile operator associated with the supplied number (e.g. 'Telstra')
executionStatus The status of the service execution [ SUCCESS | DATA_ERROR | SYSTEM_ERROR ].

Successful execution will be denoted by a SUCCESS value. DATA_ERROR will indicate that there was an issue identified with the input data that may be resolved and potentially retried by the user. SYSTEM_ERROR indicates that there was an unrecoverable system fault and the form should fall-back gracefully to an alternative path.

errorMessage When a DATA_ERROR is experienced, this value may provide more detail on the nature of the error.

Service Connections

The following service connections are used by this package.

Mastersoft Harmony
Property Name Description Required
Type HTTP Endpoint Yes
Endpoint Must point to the Mastersoft Harmony endpoint. For example

https://hosted.mastersoftgroup.com/harmony/rest/au/

Yes
Username Username The username to access Mastersoft Harmony API. Yes
Password Password The password to access Mastersoft Harmony API. Yes