Sightline Direct User Enrollment with KBA
The payment Method Sightline Deposit and Withdrawal is used in the US.
This page describes the Sightline enrollment with KBA (Knowledge Based Authentication).
This flow requires the KBA flow to be activated by Sightline.
In this enrollment flow, users will be presented questions such as these:
<VerificationQuestionArray0>
<Answers>
<KeysAndValues attr0="KeyValuePairArray" isNull="false">
<KeyValuePairArray0>
<Key>CHRIS THOMAS</Key>
<Value>CHRIS THOMAS</Value>
</KeyValuePairArray0>
<KeyValuePairArray1>
<Key>STEVE. REIFEL</Key>
<Value>STEVE. REIFEL</Value>
</KeyValuePairArray1>
<KeyValuePairArray2>
<Key>JOE ANDERSON</Key>
<Value>JOE ANDERSON</Value>
</KeyValuePairArray2>
<KeyValuePairArray3>
<Key>None of the above</Key>
<Value>None of the above</Value>
</KeyValuePairArray3>
</KeysAndValues>
</Answers>
<Prompt>From whom did you purchase the property at 222333 PEACHTREE PLACE?</Prompt>
<a:QuestionId> purchased.property.from </a:QuestionId>
<QuestionType>purchased.property.from</QuestionType>
</VerificationQuestionArray>
Please also refer to the page on Sightline Direct User Enrollment (without KBA) for information regarding the account funding.
Flow
Action | State |
---|---|
1. The merchant calls PXP Financial for Enrolment with the MemberNumber and PaymentAccountID of a previously registered credit card. | Created |
2. PXP Financial calls Sightline with the provided MemberNumber to enroll the user. | EnrolmentRequestSent |
3. Sightline response with a list of questions. | EnrolmentResponseReceived |
4. PXP returns the list of questions to the merchant. | UserVerificationRequested |
5. The merchant presents the questions to the customer. | PendingOnUserAction. |
6. The merchant sends a list of answers to PXP. | UserVerificationInformationReceived. |
7. PXP sends the answers to Sightline. | UserEnrollmentVerificationRequestSent |
8. Sightlne responds | *UserEnrollmentVerificationResponseReceived |
9. The user is returned as enrolled. | Enrolled. |
9. Other possible results: failed enrollment or question flow repeated. | EnrollmentFailed or UserVerificationRequested |
10. PXP triggers payment initiation, and payment is successful. | InitiatingPayment > PaymentInitiated > Processed |
10. Alternatively: PXP trigger payment initiation, and funding fails. | InitiatingPayment > PaymentInitiationFailed |
Payment Account registration
For payment account registration, check the V4 description here.
Enrollment - Payment Service V5 API
The following HTTP headers are required for all requests:
Querystring Parameter Name | Description |
---|---|
Authorization | Basic HTTP authorization |
Content Type | Application/JSON |
Sightline Enrollment
For enrollment of user to Sightline the following request has to be sent:
Sightline Enrollment
- URL for the first call: https://payments.test.kalixa.com/api/v5/userEnrollments
- Description: Enrollment of sightline user
- HttpMethod: POST
This URL must be used ONLY for the first enrollment request, not for the follow-up request with user responses.
... with the following JSON request data parameters:
Name | Description |
---|---|
MerchantID (Mandatory) | The ID of the Merchant |
ClientSystemUserEnrollmentId (Mandatory) | The ID of the SystemUserEnrollmentID. It should be an unique ID. |
Type (Mandatory) | Type of account. i.e account.sightline.direct |
UserID (Mandatory) | The ID of the user |
MemberNumber (Mandatory) | MemberNumber ID of the user |
PaymentAccountID (Mandatory) | The payment account ID of the credit card to be used for funding. |
Amount (Mandatory) | The amount that the user intends to fund his Sightline account with. |
Currency (Mandatory) | The currrency of the amount that the user intends to fund his Sightline account with. Defaults to USD. |
User enrollment will require that the user fields listed below are considered mandatory:
Name | Required |
---|---|
FirstName (Mandatory) | User´s first name. |
LastName (Mandatory) | User´s last name. |
Email (Mandatory) | User´s email address. |
TelephoneNumber (Mandatory) | User´s phone number. |
Street (Mandatory) | User´s address (street). |
City (Mandatory) | User´s address (city). |
State (Mandatory) | User´s address (state). |
Country (Mandatory) | User´s address (country). |
PostalCode (Mandatory) | User´s address (zip code). |
IdentificationNumber (Mandatory) | User´s SSN. |
DateOfBirth (Mandatory) | User´s date of birth. |
User registration
For user registration, check the V4 user registration description. Alternatively users can be registered or updated along with any regular payment.
Enrollment request sample:
{
"merchantId": "Renegades_Test",
"clientSystemUserEnrollmentId": "asdasda2",
"type": "account.sightline.direct",
"userId":"f892jfr28f-ka21-415d-2sad-f8481zzc3826",
"details":
{
"memberNumber": "KSDAJD551",
"paymentAccountID": "lksuq931-12ss-4934-8234-26184j1zz37c",
"amount": 20.45,
"currency": "USD"
}
}
JSON Response Data Parameters:
Name | Description |
---|---|
ID (Mandatory) | The ID of the user enrollment |
State (Mandatory) | The status of the user enrollment. |
Details (Optional) | Additional information |
Example EnrollmentResponse (with questions):
{
"ID":"7fbb6d0d-2c37-4183-a19b-d6db7690ac1e",
"StateName":"PendingOnUserAction",
"Details":{
"IdentityVerificationRequestId":12436,
"IdentityVerifierRequestId":"2472833287",
"VerificationInformation": [
{
"prompt": "When did you purchase the property at PEACHTREE PLACE?",
"type": "property.purchase.date",
"possibleAnswers": [
{
"key":"August 1999",
"value":"August 1999"
},
{
"key":"April 1999",
"value":"April 1999"
},
{
"key":"April 2000",
"value":"April 2000"
},
{
"key":"None of the above",
"value":"None of the above"
}
],
"userAnswer": null
},
{
"prompt": "In which county have you lived?",
"type": "current.county.b",
"possibleAnswers": [
{
"key":"FULTON",
"value":"FULTON"
},
{
"key":"MURRAY",
"value":"MURRAY"
},
{
"key":"LORAIN",
"value":"LORAIN"
},
{
"key":"None of the above",
"value":"None of the above"
}
],
"userAnswer": null
},
{
"prompt": "From whom did you purchase the property at 222333 PEACHTREE PLACE?",
"type": "purchased.property.from",
"possibleAnswers": [
{
"key":"JOE ANDERSON",
"value":"JOE ANDERSON"
},
{
"key":"CHRIS THOMAS",
"value":"CHRIS THOMAS"
},
{
"key":"ELAINE RYAN",
"value":"ELAINE RYAN"
},
{
"key":"None of the above",
"value":"None of the above"
}
],
"userAnswer": null
},
{
"prompt1": "Which of the following people do you know?",
"type2": "person.known.fic",
"possibleAnswers2": [
{
"key":"STEVE WASHINGTON",
"value":"STEVE WASHINGTON"
},
{
"key":"REGINA ROTHENBERG",
"value":"REGINA ROTHENBERG"
},
{
"key":"LISA MCKITRICK",
"value":"LISA MCKITRICK"
},
{
"key":"None of the above",
"value":"None of the above"
}
],
"userAnswer": null
}
]
},
"StateDescription":null
}
Example EnrollmentRequest (with user responses):
URL for returning the user responses
https://payments.test.kalixa.com/api/v5/userEnrollments/{{id}}/operations
The {{id}} part comes from the EnrollmentResponse (with questions), see section Example EnrollmentResponse (with questions) above.
{
"merchantId": "B2BTestMerchant",
"clientSystemUserEnrollmentId": "asdasda2",
"userId":"f892jfr28f-ka21-415d-2sad-f8481zzc3826",
"type": "HandleUserVerification",
"details": {
"memberNumber": "KSDAJD551",
"paymentAccountID": "lksuq931-12ss-4934-8234-26184j1zz37c",
"verificationInformation": [
{
"prompt": "When did you purchase the property at PEACHTREE PLACE?",
"type": "property.purchase.date",
"userAnswer": "April 1999"
},
{
"prompt": "In which county have you lived?",
"type": "current.county.b",
"userAnswer": "MURRAY"
},
{
"prompt": "From whom did you purchase the property at 222333 PEACHTREE PLACE?",
"type": "purchased.property.from",
"userAnswer": "ELAINE RYAN"
},
{
"prompt1": "Which of the following people do you know?",
"type2": "person.known.fic",
"userAnswer": "JOHN SMITH"
}
]
}
}
Example EnrollmentResponse (successful / processed):
{
"id": "0d652af0-c838-48e1-aa0d-9ab3cb9b03f5",
"statename": "Processed",
"details":
{
"verificationInformation": [
{
"prompt": "When did you purchase the property at PEACHTREE PLACE?",
"type": "property.purchase.date",
"userAnswer": "April 1999"
},
{
"prompt": "In which county have you lived?",
"type": "current.county.b",
"userAnswer": "MURRAY"
},
{
"prompt": "From whom did you purchase the property at 222333 PEACHTREE PLACE?",
"type": "purchased.property.from",
"userAnswer": "ELAINE RYAN"
},
{
"prompt1": "Which of the following people do you know?",
"type2": "person.known.fic",
"userAnswer": "JOHN SMITH"
}
]
}
}
Updated almost 5 years ago