Adding Widget to Application

Steps to Add the EDGE Connect V2 Widget to your application

1. Create Product Request

Clients may create a new Consumer Connection with a POST request to:
https://api.edgescore.com/api/v2/ibv/requests

Header

NameDescriptionExampleRequired
x-api-keyA unique API Key for the environment19YYgyZecTaSs2N0gjlq32Vh6DYes
Content-TypeThe format the data should be displayed inapplication/jsonYes

Body

NameDescriptionExampleTypeExpected FormatRequired
consumer_idA unique identifier provided by the client for each consumer. The same ID that was used to generate the access token123456StringYes
context_idUnique identifier provided by the client for the consumer’s application. Sometimes referred to as Loan ID or Application ID.loan12345StringYes
context_dataOptional text that further describes the context_idapplication12345StringNo
first_nameFirst name of the consumerJohnStringYes
last_nameLast name of the consumerSmithStringYes
ssnSocial security number322-32-5345StringDDD-DD-DDDDNo
routing_numberRouting number of the account the consumer wants to use for IBV. Used to pre-select bank for verificationNo routing number or 000111449 or 074000101.String/^\d9$/No
account_numberAccount number of the account specified by the consumer to use for IBV analysis523423512String/^[0-9]*$/No
birth_dateDate of birth1776-07-04String (Date)YYYY-MM-DDNo
full_addressFull consumer address. Use when the address is not split into multiple fields222 South Riverside Plaza Suite 2200, Chicago, IL 60010StringNo
street_addressStreet number and name222 South Riverside PlazaStringNo
street_address2Address unit designator and numberSuite 2200StringNo
cityCityChicagoStringNo
state_codeU.S. State CodeILStringNo
zip_codeU.S. Postal Code (5-digit OR 9-digit)60606String/^[0-9]5(?:-[0-9]4)?$/No
home_phoneLandline number855-646-5201StringDDD-DDD-DDDDNo
emailEmail address of the consumer[email protected]String/\A[^@\s]+@[^@\s]+\z/No
secondary_emailSecondary email address of the consumer[email protected]String/\A[^@\s]+@[^@\s]+\z/No
employer_nameName of consumer's employerEDGE LLCStringNo
secondary_employer_nameName of consumer's secondary employerEDGE LLCStringNo
partner_nameName of the partnerEDGEStringYes for partners only
debit_card_numberNumber of the debit card5555 5555 5555 4444StringNo
additional_dataAdditional data for data analytics based on agreements with clients{“vantage_score”:500, “housing”:”rent”, “existing_customer”:true …Json ObjectNo
reference_dateAs of date for attribute and score calculation, used to evaluate recent account activities. Default is the current date.2022-04-14StringYYYY-MM-DDYes

Example

{
  "consumer_id": "CN32892349",
  "context_id": 'abc12345',
  "context_data": '123',
  "ssn": "322-32-5345",
  "first_name": "John",
  "middle_name": "Edge",
  "last_name": "Smith",
  "birth_date": "1776-07-04",
  "full_address": "full address",
  "street_address": "222 South Riverside Plaza",
  "street_address2": "Suite 200",
  "city": "Chicago",
  "state_code": "IL",
  "zip_code": "60606",
  "home_phone": "855-646-5201",
  "mobile_phone": "855-646-5201",
  "email": "[email protected]",
  "secondary_email": "[email protected]",
  "employer_name": "EDGE",
  "secondary_employer_name": "EDGE2",
  "bank_name": "Bank of America",
  "routing_number": "0740000101",
  "account_number": "2302389238923",
  "debit_card_number": "1234567890123456",
  "additional_data": {
    "vantage_score": 500,
    "housing": "rent",
    "existing_customer": true
  },
  "reference_date": "2023-08-01",
  "partner_name": "<only applies to partners>"
}

Response

{
    "ibv_report": "https://api.edgescore.com/api/v2/ibv/requests/IBV7952B6CE58AA7C698588",
    "product_request_id": "IBV7952B6CE58AA7C698588",
    "ibv_report_status": "initiated",
    "ibv_connection_link": "https://c2.edgescore.com/9a3db0b97e",
    "connection_request_id": "dd94c6f7-1f67-4833-839a-c8b985f0f0ae"
}

2. Embed IBV Connection link into iframe

Embed the ibv_connection_link received in the response of the previous step in the webpage where the consumer connects their bank accounts in an iframe.

Example

  <iframe 
      src="https://c2.edgescore.com/9a3db0b97e" 
      width="100%" 
      height="600" 
      frameborder="0" 
      style="border: 1px solid #ccc;">
  </iframe>

You can adjust the styling of the iframe to match your application’s design system. Clients have full control to apply inline styles or use CSS classes for positioning, borders, sizing, and more to ensure a seamless visual fit within their user experience.


3. Handle iframe events to monitor request progress

Once the iframe is embedded, your application can listen for messages sent from the iframe to respond dynamically as the user progresses through the IBV connection flow. These messages are sent as window events and include an event field that indicates the current status.

Here are the event types currently supported:

  • login_success
  • ibv_data_acquire_success
  • report_generation_success
  • login_failed_incorrect_credentials
  • login_failed_incorrect_additional_info
  • vendor_connection_error
  • ibv_data_acquire_failed
  • failure_final
  • report_generation_failed