Compatible Cases
Phone Verification UK 046 service verifies a provided phone number.
Product Code: W2_PHONEVERIFICATION_UK_046
Does this service leave a credit search Footprint? No
Callback Preference
The details of how this response should be communicated need to be agreed with W2 during the onboarding process. The current options are:
- Emai
- HTTP POST request to a specified endpoint (Formatted in XML or Json)
This preference must be agreed with W2 during the on-boarding process in order to use the service.
Request
Property | Type | Mandatory | Notes |
---|---|---|---|
MobileNumber | string | 🔒 | The number must be in E.164 international format, without leading 00 or +, e.g. 447000000000. |
Response
Example response
"w2PhoneVerificationResult": {
"response": "OK [tid]"
}
Immediate Response
The service will then immediately send back a W2PhoneVerificationResult result, which is part of the ServiceResult object of the response.
Immediate response breakdown
Property Name | Type | Notes |
---|---|---|
Response | String | Success - The query is successfully accepted by the system. A reference (max 30 chars) for the lookup is returned inside the square brackets. e.g. OK [tid] Fail - The query has been rejected due to erroneous input. The reason for the error is returned inside the square brackets. e.g. ERROR [Invalid NUMBER] |
Final Response
After a short while, W2 will send a second response to the initial query, containing the final result. This result will be sent either by email or HTTP POST as request. The recipient email address / URL endpoint will have been agreed upon during the on-boarding process.
Email Response
If email was requested, an email will be sent out containing the Call ID of the initial request and the link to the result. It will look something like this:
Result Email |
---|
Subject: W2_PHONEVERIFICATION_UK_046 Result for [CallReference] Dear [Company Name], This is the final result of a call to W2_PHONEVERIFICATION_UK_046 that you made at [Date Of Request] Order ID: [tid]. Client Reference: [your-client-reference] Call Reference: [CallReference] To view the results, please click on this link: [Link to our portal with the result] Kind regards W2 Global Data |
POST Response
If a POST response was requested, a HTTP post request will be sent out containing a populated TransactionInformation object serialized into XML or Json.
The TransactionInformation object will be identical in structure to the one returned in the immediate response. However it will only contain a single ServiceTransaction which will be the final result of the W2_PHONEVERIFICATION_UK_046 call.
The end result is that the resulting HTTP POST request will look something like this:
Result POST request |
---|
POST [Callback URL] HTTP/1.1 Content-Type: application/xml or application/json Authorization: Basic [Network credential built from company name and API key - see note 1] Host: [Callback URL host] Content-Length: [Length of message] Expect: 100-continue [XML of TransactionInformation object] |
Example POST request / response
{
"WebServiceCallHistoryRef": "293c7e38-ea1d-4565-9a79-c99e6f47c260",
"ServiceTransactionInformation": {
"Service": 89,
"ServiceTransactionResult": 200,
"ServiceTransactionResultMessage": "",
"ValidationResult": "NotApplicable",
"HaltTriggered": false,
"ServiceInterpretResult": "NotApplicable",
"ServiceHasFailedOver": false
},
"Result": {
"Number": "xxxxxxxxxxxx",
"Reference": "tid",
"Status": "Delivered",
"Reason": "0",
"Timestamp": "20220511103811",
"Imsi": "string",
"NetworkCode": "string",
"Operator": "(UNITED KINGDOM)3",
"CountryCode": "gb",
"Msc": null
}
}
Breakdown of the Result section
Property Name | Type | Possible Outcomes |
---|---|---|
Number | String | The number of the number lookup query. |
Reference | String | The reference of the number lookup query (max 30 chars). |
Status | String | The status of the number lookup query. Possible values: - 'Delivered' - indicates a successful HLR lookup on a valid/active number. - 'NotDelivered', - 'Rejected', - 'Expired', - 'Unknown' |
Reason | String | When the status is not 'Delivered', a reason will be specified. For a list of possible reasons please contact: [email protected] |
Timestamp | String | Timestamp when number lookup result was received by the system. The format of the timestamp is YYYYMMDDHHMMSS. Example: 20120501083055 |
Imsi | String | The IMSI of the number. |
NetworkCode | String | The network code of the found operator. The network code is built up out of the MCC and the MNC. Example: 20404 |
Operator | String | The name of the found operator preceded by the country name. Example: (Netherlands)Vodafone |
CountryCode | String | The two-digit ISO country code of the country of the found operator. Example: nl |
Sc | String | The MSC the number is currently signed into. |
Note 1: An authorization header is added to give customers the option to authenticate the request before accepting it. The credential is a network credential made up from the following:
- Username: Name of company as it appears in Porta
- Password: Company API key
The resulting value is constructed as follows as described here :
- Username and password are combined into a string "username:password".
- The resulting string is then encoded using the RFC2045-MIME variant of Base64, except not limited to 76 char/line.
This will create something like:
Example Authorization Header |
---|
Basic VzI6cGl6emE= |
Allowing the endpoint server to deny the request based on this credential if that is preferred.