Online RESTful API documentation. V-Series 5.1



Similar documents
Achta's IBAN Validation API Service Overview (achta.com)

Bank Wizard. Comprehensive payment data validation and verification

Novell Identity Manager

STANDARD 48 FORMAT OF THE IBAN ISSUED IN THE UK (International Bank Account Number) June 2007

Address Verification and Security Code Guide. AVS Guide

Stripe. Chapters. Copyright. Authors. Stripe modules for oscommerce Online Merchant. oscommerce Online Merchant v2.3

CyberSource Global Payment Service

Symantec Endpoint Protection Shared Insight Cache User Guide

IBM WebSphere Application Server Communications Enabled Applications

Risk Management Service Guide. Version 4.2 August 2013 Business Gateway

Android App User Guide

Acronis SharePoint Explorer. User Guide

Cloud Elements! Marketing Hub Provisioning and Usage Guide!

Regulation on Bank Account Standard Numbering System

Setup Amazon Payments for Woocommerce

EBS204 Version 1 Published November EBS204 Version 2 Published July EBS204 Version 3 Published February 2001

Bank or building society account details form

Recurring Payments Manual

Strong Authentication for Cisco ASA 5500 Series

Background. IBAN Overview

Reference Data. IBAN Plus. Questions & Answers. This document contains the most frequently asked questions and answers.

EV Multi-Domain Certificate Enrollment Guide

Archive One Policy V4.2 Quick Start Guide October 2005

Recurring payments manual

IBM WebSphere Adapter for PeopleSoft Enterprise Quick Start Tutorials

High Availability Configuration

Customization & Enhancement Guide. Table of Contents. Index Page. Using This Document

Cardsave Payment Gateway

Microsoft Dynamics NAV Connector. User Guide

Secure XML API Integration Guide. (with FraudGuard add in)

Monitoring Nginx Server

MasterCard In tern et Gatew ay Service (MIGS)

Java Web Services SDK

PingFederate. Windows Live Cloud Identity Connector. User Guide. Version 1.0

Coveo Platform 7.0. Oracle Knowledge Connector Guide

DualShield SAML & SSO. Integration Guide. Copyright 2011 Deepnet Security Limited. Copyright 2011, Deepnet Security. All Rights Reserved.

CounterACT Plugin Configuration Guide for ForeScout Mobile Integration Module MaaS360 Version ForeScout Mobile

Unicorn Application Form Institutional (B) Shares

Monitoring App V eg Enterprise v6

Please use BLOCK CAPITALS only and blue or black ink, ticking boxes where appropriate.

FaxFinder. V.34 Fax Server. Configuration Guide for Inter-Operation with Panasonic TDA Phone Systems

Wave Analytics Data Integration

GFI Product Guide. GFI MailArchiver Archive Assistant

Specify the location of an HTML control stored in the application repository. See Using the XPath search method, page 2.

x x Accuity IBAN Complete Validation Messages Explanations Message Code IBAN Message Additional Explanation VALID INVALID WARNING

Virto Password Reset Web Part for SharePoint. Release Installation and User Guide

SOA Software: Troubleshooting Guide for Agents

Setup Guide Access Manager Appliance 3.2 SP3

CA Spectrum and CA Embedded Entitlements Manager

Merak Outlook Connector User Guide

SIPP benefit form annuity

PowerPay User Guide. Table of Contents

API Reference Guide. API Version 1. Copyright Platfora 2016

State Bank of Pakistan. Guidelines: IBAN Implementation in Pakistan

Cisco TelePresence Authenticating Cisco VCS Accounts Using LDAP

Server Installation Guide ZENworks Patch Management 6.4 SP2

Benefi t Form annuity purchase discharge. Bank of Scotland Share Dealing Self Invested Personal Pension

GFI Product Manual. Outlook Connector User Manual

IBM WebSphere Application Server

Symantec Data Center Security: Server Advanced v6.0. Agent Guide

IBM Connections Plug-In for Microsoft Outlook Installation Help

echeck.net Developer Guide

JD Edwards EnterpriseOne Tools. 1 Understanding JD Edwards EnterpriseOne Business Intelligence Integration. 1.1 Oracle Business Intelligence

Unicenter Workload Control Center r1 SP4. Server Status Troubleshooting Guide

Tutorial 5 Creating Advanced Queries and Enhancing Table Design

Automating client deployment

Electronic Check Services

Managing Qualys Scanners

Deploying the BIG-IP LTM system and Microsoft Windows Server 2003 Terminal Services

Standard and Advantage SSL Certificate

Config Guide. Gimmal Smart Tiles (SharePoint-Hosted) Software Release 4.4.0

Veritas Operations Manager Release Notes. 3.0 Rolling Patch 1

INTERNATIONAL PAYMENTS - PERSONAL

VPN Client User s Guide Issue 2

NetIQ AppManager for Self Monitoring UNIX and Linux Servers (AMHealthUNIX) Management Guide

IP Office Avaya Radvision Interoperation Notes

How to Guide (Getting your Deferment Application Form right)

ADFS for. LogMeIn and join.me authentication

Interworks. Interworks Cloud Platform Installation Guide

SIPP benefit form annuity purchase discharge form

Acronis Backup & Recovery: Events in Application Event Log of Windows

etrust Audit Using the Recorder for Check Point FireWall-1 1.5

HireDesk API V1.0 Developer s Guide

WebSphere DataPower Release DNS Enhancements

Dolphin's Automatic Credit Card Authorisation and Fund Transfer - Servebase

IP Office Avaya Microsoft CRM 3.0 Integration Solution Installation & User Guide

NetIQ Identity Manager

GFI Product Manual. GFI MailArchiver Outlook Addon

Novell LDAP Proxy Server

API Integration Payment21 Button

Wealth and Investment Management Intermediaries. Online Banking. Bulk Payments User guide

COMMERCIAL-IN-CONFIDENCE

Fairsail REST API: Guide for Developers

SSL Configuration on Weblogic Oracle FLEXCUBE Universal Banking Release [August] [2014]

Transcription:

Online RESTful API documentation V-Series 5.1

V-Series Online RESTful API documentation Version 5.1 Copyright Bottomline Technologies Limited, 2013. All Rights Reserved Information in this document is subject to change without notice and does not represent a commitment on the part of Bottomline Technologies. Bottomline Technologies makes no warranties with respect to this documentation and disclaims any implied warranties of merchantability or fitness for particular purpose. Bottomline Technologies Limited Internet: www.bottomline.com Europe, Middle East, Africa 115 Chatham Street Reading, Berkshire RG17JX UK Telephone: +44 118 925 8250 Email: emea-info@bottomline.com V-Series 5.1, October 2013 Page 2

What functions are available in the RESTful API?... 4 UK Validation... 4 UK Verification... 4 International Validation... 5 RESTful API Usage notes... 6 RESTful API Methods... 7 General... 7 GET api/getversion... 7 GET api/getlicensedinfo... 7 GET api/getcredits... 7 POST manage/updateverify... 8 GET manage/verifyupdatestatus... 8 UK Bank Account Validation... 9 GET api/validateukbankaccount... 9 GET api/getukbankbranches... 12 GET api/getukbankbranch... 14 UK Bank Account Ownership Verification... 15 Test Data... 15 GET api/getukaddresses... 16 GET api/verifyukaccountownership... 17 GET api/verifyukaccountownershipwithaddresses... 18 International Validation... 20 GET api/validateiban... 20 GET api/ validateibanadvanced... 21 GET api/getibanadvancedcountries... 21 GET api/validatebban... 22 GET api/validatedomesticaccount... 23 V-Series 5.1, October 2013 Page 3

What functions are available in the RESTful API? UK Validation UK Validation checks the sort code details against the Extended Industry Sort Code Directory (EISCD) to ensure that the bank branch exists, and then confirms the validity of the account number for that sort code algorithmically using modulus rules supplied by the banks. Account details are automatically transposed where appropriate and building society roll number requirements are also validated. Administrative information about the bank offices is retrieved, including contact details and particulars about the UK clearing services that the office is able to participate in Direct Debits, Direct Credits, Faster Payments, CHAPS for example. The full database of bank office information can be searched based on a variety of criteria to identify matches. When using the Bottomline Technologies online service validation data is automatically updated to ensure that you are always checking against the latest records. When using a local RESTful service (either self-hosted as a service, or deployed under IIS) you must call the POST manage/updateverify method on a regular basis (recommended monthly) to update the local validation data UK Verification The verification allows you to minimize the risk of payment fraud by confirming the ownership of the bank account, by linking the individual to the account details at the given address Using available information provided by the banks, V-Series confirms that the individual is truly associated with the home address and bank account details provided, as well as checking that the account is still open. By integrating the check into your acquisition systems at the point of contact, the customer sign up process is streamlined and efficient, reducing the need for alternative document based verification procedures. When performing a UK Verification using a local RESTful service, data is passed to the online service in the background, there is no local data used. Note: You must seek the consent of the individual being checked prior to performing UK Verification. It is recommended to explain the reasons for seeking consent to the individual, a recommended explanation to be displayed or read to the individual is that: As part of our checking process we need to confirm the details provided against a Credit Reference Agency (CRA). A record of this check is stored by the CRA. It is not used in any credit risk scoring and does not affect credit ratings in any way." V-Series 5.1, October 2013 Page 4

International Validation International validation provides four main functions: Simple IBAN Validation (api/validateiban) Validates the ISO-13616 International Bank Account Number checking that the country code is valid, the length of the IBAN is correct for the country and that the checksum in the IBAN is valid. It does not validate the domestic account details within the IBAN. Advanced IBAN Validation (api/validateibanadvanced) Validates an IBAN (ISO-13616 International Bank Account Number) using the Advanced validation rules. In contrast to Simple Validation, the domestic account details are extracted from the IBAN and are validated to ensure that: The bank branch exists The account number passes any modulus checks required for the institution Administrative information about the bank branch is also returned, including the branch address & BIC Advanced Domestic Account Validation (api/validatedomesticaccount) Validates domestic account details (bank/branch number & account) for any IBAN using country to confirm that: The bank branch exists The account number passes any modulus checks required for the institution Administrative information about the bank branch is also returned, including the branch address & BIC If the domestic bank branch exists, and any modulus checks are successful a IBAN is formed and returned Advanced BBAN Validation (api/validatebban) Validates BBAN* information for any IBAN using country to confirm that: The bank branch exists The account number passes any modulus checks required for the institution Administrative information about the bank branch is also returned, including the branch address & BIC If the domestic bank branch exists, and any modulus checks are successful a IBAN is formed and returned * A BBAN is the account identifier of an IBAN, without the country code & check digit; typically a concatenated bank/branch code & account number with additional country specific information V-Series 5.1, October 2013 Page 5

RESTful API Usage notes When using the online RESTFul API, you'll need to prefix the URLs described below with the correct value. This depends on how you're using the service: If testing against our online RESTful API: https://vseries-test.bottomline.com/ If in production with our online RESTful API: https://vseries.bottomline.com/ Note: when using our online RESTful API you must provide your API key with each request. This can be done simply by appending &apikey=[yourkey] to the request URL before any parameters https://vseries.bottomline.com/&apikey=[yourkey]&parameter1=&parameter= When using the local RESTFul API, either deployed as a self hosting service or under Internet Information Server the URL to access the service will depend on the configuration of the local machine & installation options (such as TCP listen port default 5600). The default URL for a locally installed self hosted service would be http://localhost:56000/ Note: when using the local RESTful API you do not need to supply an API key in the URL This document will describe how to make RESTful calls for integration into your own application, with sample responses where appropriate. There is also a separate, comprehensive compiled HTML help (.chm ) file that provides information on alternative methods of integrating V-Series with Microsoft.Net based applications. V-Series 5.1, October 2013 Page 6

RESTful API Methods General GET api/getversion Gets the version number. A version number string. GET api/getlicensedinfo Retrieves information detailing what the current user is licenced for. An object detailing current licenced status. "Name": null, "Identifier": null, "Expires": "0001-01-01T00:00:00", "LicencedItems": [ "Verifier": 0, "OnlineOnly": false, "VerifierDescription": "UK Bank Account Validation", "Verifier": 2, "OnlineOnly": false, "VerifierDescription": "IBAN Validation" ] GET api/getcredits Retrieves the number of credits remaining for the current user. The current number of credits remaining for the current user V-Series 5.1, October 2013 Page 7

POST manage/updateverify Request that Verify updates its data. Request Information Parameters Name Description Optional Usage updaterequestmodel Details of the product being updated No Request body 200 OK, if the update could be started. "Version": "Major": 1, "Minor": 1, "Build": -1, "Revision": -1, "MajorRevision": -1, "MinorRevision": -1, "Content": null, "StatusCode": 200, "ReasonPhrase": "OK", "Headers": [], "RequestMessage": null, "IsSuccessStatusCode": true GET manage/verifyupdatestatus Gets the status of the latest Verify update request. "Status": 0, "StatusDescription": "", "LatestError": "", "Errors": [], "TotalVerifiers": 0, "CompletedVerifiers": 0, "CompletedVerifiersPercentage": 0, "CurrentVerifierDescription": "", "CurrentVerifierTotalPackages": 0, "CurrentVerifierCompletedPackages": 0, "CurrentVerifierCompletedPackagesPercentage": 0 V-Series 5.1, October 2013 Page 8

UK Bank Account Validation The UK Bank verifier allows you to validate that a UK Bank Sort Code and Account Number are structurally valid, that the Sort Code is live, and that the Account Number is correct for the given Sort Code. V-Series will validate that the Sort Code and Account Number provided are valid, that the Sort Code is a known Sort Code, and that the Account Number passes a modulus check to ensure that it is correct for the given Sort Code. Additionally, in the provided result, V-Series will return all details about the UK Bank Branch that corresponds to the valid Sort Code. V-Series may alter or transpose some of the account details that you provide. You should ensure that you inspect the account details on the provided result as the validity of your information will be based upon the account details that are in the result, not necessarily the exact details that you input. Some UK account details require a Building Society Roll Number. This is an optional input, but if the account details provided require a Roll Number, the result will reflect this. The Roll Number can also be transposed, so you should inspect the details on the result as per above. The UKBank Verifier also provides API methods for finding Bank Branches based upon Sort Codes, or address details. GET api/validateukbankaccount Validates UK bank or building society account details. Request Information Parameters Name Description Optional Usage sortcode Sort code to be validated No Querystring accountnumber Account number to be validated No Querystring buildingsocietyrollnumber Building society roll number to be validated Yes Querystring If the bank account can be used for a payment then Valid = true If the bank account cannot be used for a payment then Valid = false, and an InvalidParameter field will be populated with the Name of the invalid parameter field. If the bank account cannot be used for a payment then Valid = false, and the InvalidReason & InvalidReason fields will be populated as per the enumeration table on the following page V-Series 5.1, October 2013 Page 9

InvalidIssue & InvalidReason Enumeration InvalidIssue Name InvalidReason 1 SortCodeInvalidLength The sorting code supplied is either too short or too long according to UK domestic banking rules. 2 SortCodeInvalidMisplacedCharacters The sorting code supplied contains non-numeric characters or invalid/misplaced separators. 3 AccountNumberTooShort The account number supplied is too short according to UK domestic banking rules. 4 AccountNumberTooLong The account number supplied is too long according to UK domestic banking rules. 5 AccountNumberInvalidMisplacedCharacters The account number supplied is not numeric; it contains nonnumeric characters. 6 ModulusCheckFailed The sort code and account number combination supplied failed the modulus check. 7 SortCodeNotFound The sort code supplied was not found in the database. 8 AccountNumberTooShortForTranscription The account number requires transcription, but it is too short according to the transcription rule. 9 AccountNumberTooLongForTranscription The account number requires transcription, but it is too long according to the transcription rule. 10 AccountNumberInvalidPrefixForTranscription The account number requires transcription, but the transcription rule specifies that it should start with particular characters, and it did not. 11 AccountNumberInvalidFormatForTranscription The account number requires transcription, but the transcription rule specifies that the account number should be in a specific format, and it was not. 12 MissingBuildingSocietyRollNumber The account details require a Building Society Roll number, but none was supplied. 13 InvalidBuildingSocietyRollNumber The account details require a Building Society Roll number, but it did not match the required format. V-Series 5.1, October 2013 Page 10

"AccountDetailsInput": "SortCode": "404772", "AccountNumber": "91521187", "BuildingSocietyRollNumber": "", "AccountDetailsOutput": "SortCode": "404772", "AccountNumber": "91521187", "BuildingSocietyRollNumber": "", "AccountIBAN": "GB41MIDL40477291521187", "AccountTranscribed": false, "UKBankBranch": "BankBIC": "MIDLGB21", "BranchBIC": "67M", "BankName": "HSBC BANK PLC", "BankOfficeTitle": "FIRST DIRECT, LEEDS", "BranchName": "FIRST DIRECT", "OfficeTitle": "First Direct", "ContactAddress1": "40 Wakefield Road", "ContactAddress2": "", "ContactAddress3": "", "ContactAddress4": "", "ContactAddressCity": "Leeds", "ContactAddressCounty": "", "ContactAddressPostCode": "LS98 1FD", "ContactAddressPostCountry": "UNITED KINGDOM", "ContactPhoneNumber": "0113 2766100", "SortCode": "404772", "DateLastChanged": "0001-01-01T00:00:00", "TransactionInfo": "BacsCredits": true, "BacsDebits": true, "FasterPaymentsService": true, "ChapsSterling": true, "DirectDebitInstructions": true, "UnpaidChequeClaims": true, "DividendInterest": true, "BuildingSocietyInterest": true, "ChapsBankBIC": "MIDLGB22", "ChapsBranchBIC": "XXX", "RequiresBuildingSocietyRollNumber": false, "BuildingSocietyRollNumberTranscribed": false, "InvalidIssue": 0, "Valid": true, "InvalidReason": "", "InvalidParameter": "" V-Series 5.1, October 2013 Page 11

GET api/getukbankbranches Retrieves a list of up to 1,000 bank branches that match the criteria provided. Request Information Parameters The Optional parameters detailed below must still be specified in the URL, although no specific values need to be assigned: Name Description Optional Usage bankname Bank name Yes Querystring bankofficetitle The title of the bank branch Yes Querystring branchname The name of the bank branch Yes Querystring officetitle The title of the branch Yes Querystring town Town Yes Querystring county County Yes Querystring postcode Postcode Yes Querystring bacscredits If true, will only return results that support Bacs credits Yes Querystring bacsdebits If true, will only return results that support Direct Debits Yes Querystring fasterpayments If true, will only return results that support Faster Payments Yes Querystring chaps If true, will only return results that support CHAPS Yes Querystring V-Series 5.1, October 2013 Page 12

[ ] "BankBIC": "MIDLGB21", "BranchBIC": "67M", "BankName": "HSBC BANK PLC", "BankOfficeTitle": "FIRST DIRECT, LEEDS", "BranchName": "FIRST DIRECT", "OfficeTitle": "First Direct", "ContactAddress1": "40 Wakefield Road", "ContactAddress2": "", "ContactAddress3": "", "ContactAddress4": "", "ContactAddressCity": "Leeds", "ContactAddressCounty": "", "ContactAddressPostCode": "LS98 1FD", "ContactAddressPostCountry": "UNITED KINGDOM", "ContactPhoneNumber": "0113 2766100", "SortCode": "404772", "DateLastChanged": "0001-01-01T00:00:00", "TransactionInfo": "BacsCredits": true, "BacsDebits": true, "FasterPaymentsService": true, "ChapsSterling": true, "DirectDebitInstructions": true, "UnpaidChequeClaims": true, "DividendInterest": true, "BuildingSocietyInterest": true, "ChapsBankBIC": "MIDLGB22", "ChapsBranchBIC": "XXX" V-Series 5.1, October 2013 Page 13

GET api/getukbankbranch Retrieves the branch details for a specific sort code. Request Information Parameters Name Description Optional Usage sortcode Branch sort code No Querystring "BankBIC": "MIDLGB21", "BranchBIC": "67M", "BankName": "HSBC BANK PLC", "BankOfficeTitle": "FIRST DIRECT, LEEDS", "BranchName": "FIRST DIRECT", "OfficeTitle": "First Direct", "ContactAddress1": "40 Wakefield Road", "ContactAddress2": "", "ContactAddress3": "", "ContactAddress4": "", "ContactAddressCity": "Leeds", "ContactAddressCounty": "", "ContactAddressPostCode": "LS98 1FD", "ContactAddressPostCountry": "UNITED KINGDOM", "ContactPhoneNumber": "0113 2766100", "SortCode": "404772", "DateLastChanged": "0001-01-01T00:00:00", "TransactionInfo": "BacsCredits": true, "BacsDebits": true, "FasterPaymentsService": true, "ChapsSterling": true, "DirectDebitInstructions": true, "UnpaidChequeClaims": true, "DividendInterest": true, "BuildingSocietyInterest": true, "ChapsBankBIC": "MIDLGB22", "ChapsBranchBIC": "XXX" V-Series 5.1, October 2013 Page 14

UK Bank Account Ownership Verification The UK Account Ownership verifier allows you to verify the owner and address of a set of UK bank account details. Tip: It is strongly recommended that you validate the Sort Code and Account Number using the UK Bank Verifier first to ensure that the sort code exists and the account passes the modulus check if the validation fails then there is no point in proceeding to the account verification check as the account cannot exist. V-Series will verify that the Sort Code and Account Number, Person and Address provided are correct; i.e. that the Person is the owner of the account and that this account is listed at this address. There are two versions of the API method: One method takes the full address text and will attempt to match it to a UK address. The second requires Address Keys which can be found by pre-searching for the address. When entering address details, it is recommended that a Post Code is always entered, along with a house number or name. If the Post Code is not entered then finding a match may prove less likely. You must supply the Current address, but can optionally supply a Previous address. You will receive separate results for these, but if the Current address is not valid or matched, then the Previous address will not be processed. The minimum data that must be entered for the Person is Forename (at least the initial) and Surname. Optionally, you can enter Title, Middlename and Date of birth. For each address supplied, you will receive a result. This result will have a status for both Sort Code and Account Number, along with a Recommended result, which provides a suggestion of how the result should be interpreted, based upon the combination of the two statuses. In most cases, if there is an issue with the Person or Address details, then the two statuses will likely be the same. However, should there be an issue with either the Sort Code or Account Number then the separate statuses allow you to detect which one has the problem. Test Data When evaluating this service with the test environment, the following test data is available: Name Date of Birth Address Sort Code Account Number David Archer 01/02/1947 530 High St, Westbury, BA133BN Outcome 56-00-36 40308669 Sort Code and Account Number both match Debbie Mann 278 High St, Westbury, BA133BN 56-00-36 57607230 Closed account Karen Tennant 01/08/1975 473 Rowlands Close, Training Town, IV448TZ 07-01-16 11111118 Sort Code is not held, but account number does match V-Series 5.1, October 2013 Page 15

GET api/getukaddresses Retrieves UK Addresses that match the given input criteria. Blank parameters are ignored. Request Information Parameters ALL the Optional parameters detailed in the table below must still be specified in the URL, although no specific values need to be assigned and they can be blank: Name Description Optional Usage housenameornumber The name or number of the property Yes Querystring street1 The first street Yes Querystring street2 The second street Yes Querystring district The district Yes Querystring town The town or city Yes Querystring county The county Yes Querystring postcode The postcode Yes* Querystring Note: *If the postcode is not passed, then at least one other field must be completed. A list of matching UKAddresses instances. [ ] "AddressKey": "TEST0004429", "AddressShortname": "430 ROWLANDS CLOSE, IV448TZ", "HouseNumberOrName": "430", "Street1": "ROWLANDS CLOSE", "Street2": "BARNTON MILLS", "District": "", "Town": "TRAINING TOWN", "County": "ISLE OF SKYE", "Postcode": "IV448TZ" V-Series 5.1, October 2013 Page 16

GET api/verifyukaccountownership Verifies if the given Bank Account details are owned by the provided Person and pre-validated Address keys. Request Information Parameters The Optional parameters highlighted in the table below must still be specified in the URL, although no specific values need to be assigned and they can be blank: Name Description Optional Usage title The subject's title Yes Querystring forename The subject's firstname No Querystring middlename The subject's middlename Yes Querystring surname The subject's surname No Querystring dob The subject's data of birth Yes Querystring accountnumber The account number No Querystring sortcode The sortcode No Querystring currentaddresskey The address key of the current address No Querystring previousaddresskey An address key for a previous address Yes Querystring A VerifyUKAccountOwnershipResult instance containing the validation results. "CurrentAddress": "SortCodeDataStatus": 9, "AccountNumberDataStatus": 10, "RecommendedStatus": 3, "PreviousAddress": "SortCodeDataStatus": 9, "AccountNumberDataStatus": 10, "RecommendedStatus": 3 V-Series 5.1, October 2013 Page 17

GET api/verifyukaccountownershipwithaddresses Verifies if the given Bank Account details are owned by the provided Person and explicit Address details. Request Information Parameters The Optional parameters highlighted in the table below must still be specified in the URL, although no specific values need to be assigned and they can be blank: Name Description Content Optional Usage title The subject's title Yes Querystring forename The subject's firstname No Querystring middlename The subject's middlename Yes Querystring surname The subject's surname No Querystring dob The subject's data of birth Yes Querystring accountnumber The account number No Querystring sortcode The sortcode No Querystring currentaddress The address details of the current address (refer to CHM documentation for further detail) No Request body previousaddress An optional address details for a previous address (refer to CHM documentation for further detail) Yes Request body "CurrentAddress": "SortCodeDataStatus": 9, "AccountNumberDataStatus": 10, "RecommendedStatus": 3, "PreviousAddress": "SortCodeDataStatus": 9, "AccountNumberDataStatus": 10, "RecommendedStatus": 3 V-Series 5.1, October 2013 Page 18

NOTE: only the Returned Value is present in returned JSON, the Name and corresponding Value are listed for reference purposes in order for the implementer to understand the context of the returned status:enumerations for RecommendedStatus Returned Value Name Value 0 Unknown An error has occurred retrieving results. 1 NotChecked Nothing was checked because the Current address provided was not a valid address. 2 AccountDetailsNotHeld The sort code or account number provided is not able to be checked as they are not on record. 3 NotVerified Not Verified an association between person, account details and address could not be established. 4 ReviewDetails 5 AccountOwnershipVerified 6 PersonAddressMatch Account ownership verification result review needed, you should inspect the individual account & sort code results in order to decide if the verification is acceptable to your business. Account ownership verification was successful; the account details are known to be associated with the person at the given address A link between the person and the given address was confirmed, but the account details could not be confirmed as associated with the person at the given address Enumerations for SortCodeDataStatus & AccountNumberDataStatus Returned Value 0 1 2 3 4 5 6 7 8 9 10 Name NotChecked NoData DataWrongFormat DataNotFound AddressNotFound NoAccountsForPersonAddressCombination Unmatched DataOutByTwoDigit DataOutByOneDigit Matched AccountClosed Value If this result is on a Previous address, this indicates that it was not processed due to the Current address provided not being valid. If on a Sort Code, this indicates that the Sort Code was not processed due to the Account Number not being matched. The data was not provided. The data provided was in an incorrect format. The data provided cannot be found in our records The address provided could not be matched to an address on record The address provided was valid, but no association of the person to the address could be made, or no accounts can be associated with the person at the address The data does not match any of the known associated account details held for this person at this address. The data was verified as two digits in position/value difference to an exact match of the person at the address provided. The data was verified as one digit in position/value difference to an exact match of the person at the address provided. The data was verified as matching the person at the address provided. The data refers to an account which is now closed. V-Series 5.1, October 2013 Page 19

International Validation GET api/validateiban Parameters Validates an IBAN (ISO-13616 International Bank Account Number). Name Description Optional Usage iban The IBAN. No Querystring An object containing details of the outcome. "CountryCode": "GB", "Bban": "WEST12345698765432", "InvalidIssue": 0, "Valid": true, "InvalidReason": "", "InvalidParameter": "" V-Series 5.1, October 2013 Page 20

GET api/ validateibanadvanced Validates an IBAN (ISO-13616 International Bank Account Number) using the Advanced rules. Request Information Parameters Name Description Optional Usage Iban The IBAN. No Querystring An object containing details of the outcome. "InputIban": "GB71LOYD30919700875502", "AdditionalValidationInfo": false, "AdditionalValidationInfoText": null, "OutputCountryCode": "GB", "OutputCountryName": "United Kingdom", "OutputIban": "GB71LOYD30919700875502", "OutputBban": "LOYD30919700875502", "OutputAccountNumber": "00875502", "BankBranch": "BranchTitle": "Ariel House", "BranchCode": "LOYD309197", "RoutingNumber": "309197", "InstitutionTitle": "Lloyds TSB Bank plc", "BranchAddress": "2138 Coventry Road, Sheldon, B26 3JA Birmingham GB", "Bic": "LOYDGB21233", "OverridingProcessingBank": "Lloyds TSB Bank plc", "OverridingSwiftBic": "LOYDGB2L", "InvalidIssue": 0, "Valid": true, "InvalidReason": "", "InvalidParameter": "" GET api/getibanadvancedcountries Retrieves Countries that are supported by the Advanced Iban methods. Request Information A list of matching IbanAdvancedCountry instances. [ "CountryName": "United Kingdom", "CountryCode": "GB", "BankIdentifierDescription": "Bank Branch Code" ] V-Series 5.1, October 2013 Page 21

GET api/validatebban Validates a BBAN against the provided IBAN Country using the Advanced IBAN rules. Request Information Parameters Name Description Optional Usage countrycode The country code. No Querystring Iban The IBAN. No Querystring "InputCountryCode": "GB", "InputBban": "LOYD30919700875502", "AdditionalValidationInfo": false, "AdditionalValidationInfoText": null, "OutputCountryCode": "GB", "OutputCountryName": "United Kingdom", "OutputIban": "GB71LOYD30919700875502", "OutputBban": "LOYD30919700875502", "OutputAccountNumber": "00875502", "BankBranch": "BranchTitle": "Ariel House", "BranchCode": "LOYD309197", "RoutingNumber": "309197", "InstitutionTitle": "Lloyds TSB Bank plc", "BranchAddress": "2138 Coventry Road, Sheldon, B26 3JA Birmingham GB", "Bic": "LOYDGB21233", "OverridingProcessingBank": "Lloyds TSB Bank plc", "OverridingSwiftBic": "LOYDGB2L", "InvalidIssue": 0, "Valid": true, "InvalidReason": "", "InvalidParameter": "" V-Series 5.1, October 2013 Page 22

GET api/validatedomesticaccount Validates domestic account details against the provided IBAN Country using the Advanced IBAN rules. Request Information Parameters Name Description Optional Usage countrycode The country code. No Querystring bankidentifier The Bank Branch Code (or Institution Name). No Querystring accountnumber The Account Number. No Querystring An object containing details of the outcome. "InputCountryCode": "GB", "InputBankIdentifier": "309197", "InputAccountNumber": "00875502", "AdditionalValidationInfo": false, "AdditionalValidationInfoText": null, "OutputCountryCode": "GB", "OutputCountryName": "United Kingdom", "OutputIban": "GB71LOYD30919700875502", "OutputBban": "LOYD30919700875502", "OutputAccountNumber": "00875502", "BankBranch": "BranchTitle": "Ariel House", "BranchCode": "LOYD309197", "RoutingNumber": "309197", "InstitutionTitle": "Lloyds TSB Bank plc", "BranchAddress": "2138 Coventry Road, Sheldon, B26 3JA Birmingham GB", "Bic": "LOYDGB21233", "OverridingProcessingBank": "Lloyds TSB Bank plc", "OverridingSwiftBic": "LOYDGB2L", "InvalidIssue": 0, "Valid": true, "InvalidReason": "", "InvalidParameter": "" V-Series 5.1, October 2013 Page 23