Test URL

http://3.9.115.83:8080/Equifaxapi/webresources/

Deployed URL

http://ec2-18-130-37-209.eu-west-2.compute.amazonaws.com:8787/Equifaxapi/webresources


1. Where is this test URL IP hosted? Is this URL active and can be used only for Test API?


Note: For testing we are using local server where base test URL is above, this will be changed after deployment.


STEP 1: Create Search ID                                                                                                                                                            


Request POST API URL:

 http://3.9.115.83:8080/Equifaxapi/webresources/info.rocsearchinput/search


Note: if equifax server connection is not established or running in test mode using stubbed data then skip this first step.


Body Parameters

ParameterDescription
applicationType"Single" for sole search of applicant, will it be fixed value always ?
bldgNamehouse number of the searched address
dateOfBirthYYYY-MM-DD format
firstNameFirst name of applicant
lastNameSurname of applicant
postTownCity name of the searched address
postcodepostal zip code of the searched address
search type"AML" is for Anti-money laundering search
"TV" is for Tenant verification that include AML
Both of search syntax are same.
searchType.equals("AML") || searchType.equals("aml")
searchType.equals("TV") || searchType.equals("tv")
street 1first line of searched address
middleNameOptional - middle name of applicant
dateCreatedwhat is this relates to?


Request method: POST

Sample request body: Content-Type application/json

{
"applicantType":"single",
"bldgName":"1865",
"dateOfBirth":"1986-10-06",
"firstName" :"JANICE",
"lastName":"JONED",
"postTown":"ELY",
"postcode":"CB6 1AU",
"searchType":"AML",
"street1":"BERNARD ST",
"middleName":"",
"dateCreated":""
}


Sample response message

Status code: 200 OK (Successfully inserted) what are other status codes and means?

1. Does this status code '200' means zyPass has successfully analyse all xml attribute output received from EquiFax and stored parsed raw and summary result data in table hosted in SQL dB with searchID and later step is just to retrieve result summary data? 


2.  OR, is this just a connection test to validate test data of name and address? 

3. What if this is failed, then what are error code and any other messages? how to deal with that, to contact Equifax or Zypass Support? in case of failed or error code, will that count in AML / TV paid search if its not success at step 1.

4.  Is this searchId example '381' created by Equifax? or zyPass?  Can this result be retrievable by calling again same test URL http://3.9.115.83:8080/Equifaxapi/webresources/info.rocsearchinput/aml/381? Will it trigger to Equifax service layer again or will this search response from existing SQL test stubbed data? I am thinking of cost perspective if this is relevant or can we do N number of searches with existing IDs tested in past?

5. Is this field name "bldgName" used for building number? If address has Flat number or building name , which field to input search and in what format? 

6. In test first endpoint URL search do we need to always put “Search Type” : ‘AML’ ? and then step 2.a with AML or TV result link? OR step 1 create search ID for TV we can insert 'TV' and run TV result URL?

7. “Application type “ : ‘Single’ : will it be fixed search input for all test cases? if not what are other possible input accepted?

{
    "searchId": 381,
    "message": "success"
}

Now 2nd step is to hit another url with this search id to generate results either AML or TV based on business requirement.


Note: During test when Equifax service connection is not established, lets assumed this skipped 1st step has returned searchID like 381.


STEP 2: (A) GET AML result                                                                                                                                                        


Request GET API URL:

 http://3.9.115.83:8080/Equifaxapi/webresources/info.rocsearchinput/aml/381


Request method: GET


Body Parameters

ParameterDescription
searchId381

Missing sample body json script.......................with specific searchId of the user ? 



Sample response message

Status code: 200 OK

1. What if this is failed, then what are error code and any other messages values?


Response Body Parameters

This includes 

1. AML Watchlist 

= Sanction check + Politically Exposed Person (PEP) + Relatives & Close Associate (RCA) + Special Interest Persons (SIP)

2. Identity address

= ID + Address + Alerts

ParameterDescription
address
resultmessage
value
"Pass"
"Supplied address Found"2







pepCheckPolitically exposed person check
resultmessagevalue
"Pass""No data matched"
"0"




identity
resultmessagevalue
"Pass""Confirmed""1"




sipCheckSpecial Interest Persons check
resultmessagevalue
"Pass"
"No data matched"
"false"




message"Success" - what is this meant for?

sanctions
resultmessagevalue
"Pass""No data matched"
"false"




rcaCheck
resultmessagevalue
"Pass"
"No data matched""0"




alerts
resultmessagevalue
passNo deceased identification fraud
failDeceased identity fraud was found


statustrue or ? what is this means
{
"address":{
"result":"Pass",
"message":"Supplied address found",
"value":"2"
} ,
"pepCheck":{
"result":"Pass",
"pepMsg":"No data matched",
"value":"0"
},
"identity":{
"result":"Pass",
"message":"Confirmed",
"value":"1"
},
"sipCheck":{
"result":"Pass",
"pepMsg":"No data matched",
"value":"0"
},
"message":"success",
"sanctions":{
"result":"Pass",
"message":"No data matched",
"value":"false"
},
"rcaCheck":{
"result":"Pass",
"pepMsg":"No data matched",
"value":"0"
},
"status":true
}


1. Where are values for hailo Alerts for deceased person identity fraud? 


2. Response parameters and description of other possible values? Can you please provide document of all possible values in API response so that external app can expect in various diff result.? I see only one sample response as example.


3. Have you tested this with test URL Postman? Is this URL is divert call directly from sample database? 


4 Can you Pls put in comparatives Test dummy  Endpoint URL how it will differentiate with production Equifax service layer? In other words what what will be endpoint URL in case of production and how the input body message can be differentiated with Test cases?


5. in response sample - AML- missing Hailo alerts -values for **VNC3 **and in TV- missing score data from RNOLN04. Can you please share latest search response from UAT result? I have also shared my doubt on 16th June 2019 that bitbucket source code and documentations are old, the one during testing in July was recent files (attached screenshot below). Can you please share updated API docs with updated response samples json files results with API. 




STEP 2: (B) GET TV result                                                                                                                                                            


Request GET API URL: 

 http://3.9.115.83:8080/Equifaxapi/webresources/info.rocsearchinput/tv/381



Request method: GET


Body Parameters

ParameterDescription
searchId381

Missing sample body json script.......................with specific searchId of the user ? 



Sample response message

Status code: 200 OK

1. What if this is failed, then what are error code and any other messages values?


{
"judgement": {
"judgeValue": 1,
"judgement": "Fail",
"judgementMsg": "Judgement - active (Amount last 6 year) 14 and Judgement - satisfi
ed (Amount last 6 year) 0"
},
"address": {
"result": "Pass",
"message": "Supplied address found",
"value": "2"
},
"adverseDebt": {
"adverseDebtMsg": "no adverse findings",
"adverseDebt": "Pass",
"adverseValue": 0
},
"disputesAndCorrection": {
"dispute": "Caution",
"disputeValue": "false",
"disputeMsg": "Notices of dispute or corrections found"
},
"message": "success",
"rcaCheck": {
"result": "Pass",
"pepMsg": "No data matched",
"value": "0"
},
"pepCheck": {
"result": "Pass",
"pepMsg": "No data matched",
"value": "0"
},
"identity": {
"result": "pass",
"message": "Confrmed",
"value": "1"
},
"insolvencies": {
"insolvancy": "Fail",
"value": 2,
"insolvancyMsg": "1 Bankruptcies were found"
},
"alias": {
"firstname": "",
"aliasMsg": "Alias not found",
"lastname": ""
},
"sipCheck": {
"result": "Pass",
"pepMsg": "No data matched",
"value": "0"
},
"sanctions": {
"result": "Pass",
"message": "No data matched",
"value": "false"
},
"status": true
}

Response Body Parameters

This includes 

AML + Consumer data search

ParameterDescription
judgement
judgementjudgementMsgjudgeValue
"Fail"
"Judgement - active (Amount last 6 year) 14
and

and Judgement - satisfied (Amount last 6 year) 0"

1







address
resultmessage
value
"Pass"
"Supplied address Found"2






adverseDebt
adverseDebtadverseDebtMsgadverseValue
"Pass""no adverse findings"
0




disputeAndCorrection
dispute
disputeMsg
disputeValue
"Caution""Notices of dispute or corrections found"
"false"




message
"Success" - what is this meant for? what are other possible value?
rcaCheck
resultmessagevalue
"Pass""No data matched"
0




pepCheckPolitically exposed person check
resultmessagevalue
"Pass"
"No data matched"
"0"



identity
resultmessagevalue
"pass"
"Confrmed"
"1"



insolvencies
insolvancymessagevalue
"Fail""1 Bankruptcies were found"
2




alias
firstname
aliasMsglastname
""
"Alias not found"
""




sipCheckSpecial Interest Persons check
resultpepMsgvalue
Pass"
"No data matched"
"0"



sanctions
resultmessagevalue
"Pass""No data matched"
"false"



statustrue or ? what is this used for?

1. Pls share all possible values of response message for AML and TV. There are different criteria result with message text and values number, we would like to have full documentation of that response codes.



STEP 3: Test with dummy S3 stubbed data                                                                                                                                


This response we uploaded to a rentoncloud bucket for testing (This is not necessary if server runs, exactly same response format will be returned ). 


Request method is GET.


Bucket url for Request GET aml sample is 

https://rentoncloud.s3.eu-west-2.amazonaws.com/aml.json


Bucket url for Rquest GET TV sample is 

https://rentoncloud.s3.eu-west-2.amazonaws.com/tv.json


Response is exactly same as above. Now store this data to rent on cloud database for using these data anytime and to generate screening report. To store these data hit url 

http://ec2-18-130-177-247.eu-west-
2.compute.amazonaws.com:3000/api/ScreeningData


Request method: POST

Request body: Store values returned from previous response


For AML:

"uId": this.state.userId,
"id": "",
"addResult response.data.address.result,
"addMsg": response.data.address.message,
"addValue": response.data.address.value,
"pepcheckResult":response.data.pepCheck.result,
"pepcheckMsg": response.data.pepCheck.pepMsg,
"pepcheckValue":response.data.pepCheck.value,
"identityResult": response.data.identity.result,
"identityMsg": response.data.identity.message,
"identityValue": response.data.identity.value,
"sipcheckResult": response.data.sipCheck.result,
"sipcheckMsg": response.data.sipCheck.pepMsg,
"sipcheckValue":response.data.sipCheck.value,
"message": response.data.message,
"sancResult": response.data.sanctions.result,
"sancMsg": response.data.sanctions.message,
"sancValue":response.data.sanctions.value,
"rcaResult": response.data.rcaCheck.result,
"rcaMsg": response.data.rcaCheck.pepMsg,
"rcaValue": response.data.rcaCheck.value,
"status": response.data.status

This code can be found in ROC code in src/Landlord/LandScreeningreview.jsx

In submit() method


For TV:



var payload={
"uId": this.state.userId,
"id": "",
"judgement":response.data.judgement.judgement,
"judgementMsg": response.data.judgement.judgementMsg,
"judgeValue": response.data.judgement.judgeValue,
"addressMsg":response.data.address.message,
"addressResult": response.data.address.result,
"addressValue":response.data.address.value,
"identityResult": response.data.identity.result,
"identityMsg": response.data.identity.message,
"identityValue": response.data.identity.value,
"adverseDebtMsg": response.data.adverseDebt.adverseDebtMsg,
"adverseDebt": response.data.adverseDebt.adverseDebt,
"adverseValue":response.data.adverseDebt.adverseValue,
"message": response.data.message,
"dispute": response.data.disputesAndCorrection.dispute,
"disputeValue": response.data.disputesAndCorrection.disputeValue,
"disputeMsg":response.data.disputesAndCorrection.disputeMsg,
"insolvancy": response.data.insolvencies.insolvancy,
"insolvancyValue": response.data.insolvencies.value,
"insolvancyMsg": response.data.insolvencies.insolvancyMsg,
"aliasFirstName": response.data.alias.firstname,
"aliasMsg": response.data.alias.aliasMsg,
"aliasLastName": response.data.alias.lastname,
"status": response.data.status
}

This can be found in ROC code in src/renter/RenScreeningreview.jsx

In submit() method


2. what is current DB storing strategy of Zypass built for parsed data and calculation of tables you have shown on Zoom call? Do you store the inflight data / attribute/characteristics result value in DB or its just server based calculation for user transaction session?

3. In your latest API sample document you had mentioned that ROC app (external consumption user) to store data in rentoncloud database using loopback api (ec2-18-130-177-247.eu-west-2.compute.amazonaws.com:3000/api ) following to receipt of Jason result file from Zypass API. Do we have to call the old loopback-api to save data to the db, as mentioned, everytime?