Using Nexus onEvents
Get visibility into a Consumer's journey through Nexus in real time.
Payitoff allows a Consumer
to unlock their debts (with just a phone number, zip code, and DOB), receive Guidance, and take steps to improve their situation using our Nexus
widget. To better understand a Consumer
’s journey through these pre-designed workflows, the below onEvent
callbacks are available for visibility into a Consumer
’s successes and failures.
onEvent
Callback
onEvent
CallbackWhen Nexus
transmits an event, your onEvent
callback will be called with one an argument, a JavaScript object with a top-level property nexusEvent
containing an object with the details of the event:
{
nexusEvent: {
name: "workflow_started",
workflow: "link_to_enroll"
happened_at: "2024-07-02T14:39:12.205906Z",
consumer: {
uuid: "ddfe568c-2245-41a8-a558-fef1643f99b2"
},
metadata: {varies per event, see table below}
}
}
The Events
nexusEvent.name | Description | nexusEvent.metadata | Workflows Supported |
---|---|---|---|
workflow_started | The Nexus workflow was launched without error. | none | Nexus.guidance , Nexus.link_debts Nexus.link_to_enroll , Nexus.student_loan_enroll Nexus.student_loan_link, Nexus.refi |
identity_verification_start | Your consumer has provided their phone, DOB, and zip code. | none | Nexus.guidance , Nexus.link_debts Nexus.link_to_enroll , Nexus.student_loan_link |
otp_send_attempt_via_sms | Consumer has requested an OTP and the request has been initiated. | none | Nexus.guidance , Nexus.link_debts Nexus.link_to_enroll , Nexus.student_loan_link |
otp_send_via_sms_malfunctioned | The OTP failed to send due to a failure on our end OR our vendor’s end. Please reach out to us for further assistance. | none | Nexus.guidance , Nexus.link_debts Nexus.link_to_enroll , Nexus.student_loan_link |
otp_send_via_sms_successful | The OTP code was successfully sent to the consumer. | none | Nexus.guidance , Nexus.link_debts Nexus.link_to_enroll , Nexus.student_loan_link |
otp_verified_via_sms | Consumer has successfully input the OTP code and verified their mobile number. | none | Nexus.guidance , Nexus.link_debts Nexus.link_to_enroll , Nexus.student_loan_link |
otp_invalid_code_entered | Consumer has input the incorrect OTP code that was sent to their mobile device. Please reach out to us for further assistance. | none | Nexus.guidance , Nexus.link_debts Nexus.link_to_enroll , Nexus.student_loan_link |
otp_verification_malfunctioned | The OTP code was not verified due to a failure on our end OR our vendor’s end. Please reach out to us for further assistance. | none | Nexus.guidance , Nexus.link_debts Nexus.link_to_enroll , Nexus.student_loan_link |
consumer_identity_retrieved_successfully | Consumer identity has been retrieved successfully. | none | Nexus.guidance , Nexus.link_debts Nexus.link_to_enroll , Nexus.student_loan_link |
consumer_identity_failed | Unable to find consumer identity (with the data provided). | none | Nexus.guidance , Nexus.link_debts Nexus.link_to_enroll , Nexus.student_loan_link |
consumer_identity_malfunctioned | Unable to find the consumer identity due to a failure on our end OR our vendor’s end. Please reach out to us for further assistance. | none | Nexus.guidance , Nexus.link_debts Nexus.link_to_enroll , Nexus.student_loan_link |
identity_verification_complete | Identity verification has ended in success or failure. Please see events above. | status: "success, failed" | Nexus.guidance , Nexus.link_debts Nexus.link_to_enroll , Nexus.student_loan_link |
debts_not_linked_due_to_freeze | Although the consumer’s identity was verified, we could not retrieve their debts due to a credit freeze. | none | Nexus.guidance , Nexus.link_debts Nexus.link_to_enroll , Nexus.student_loan_link |
debts_not_found | Although the consumer’s identity was verified no debts were found. | none | Nexus.guidance , Nexus.link_debts Nexus.link_to_enroll , Nexus.student_loan_link |
debts_linked | The consumer’s debts have been retrieved successfully. The metadata shows the consumer’s aggregated active debt counts, for more detail please see further documentation on how to list a consumers debts . | "debts_found": {"student_loan": 4, "mortgage": 1} | Nexus.guidance , Nexus.link_debts Nexus.link_to_enroll , Nexus.student_loan_link |
debts_link_malfunctioned | Although the consumer’s identity was verified, we could not retrieve their debts due to a failure on our end OR our vendor’s end. Please reach out to us for further assistance. | none | Nexus.guidance , Nexus.link_debts Nexus.link_to_enroll , Nexus.student_loan_link |
workflow_finished | The consumer finished the workflow. | The enrollment key has details about the enrollment request and its status (see below) | Nexus.link_to_enroll , Nexus.student_loan_enroll, Nexus.student_loan_link , Nexus.refi |
quit | The consumer closed Nexus before enrolling in a repayment plan. Note: unlike other workflows, Nexus.guidance has no "end", so the quit event does not necessarily mean exiting prematurely. Instead, consumers must quit to close Nexus even after successfully linking debts and applying for a consolidation loan. | none | all workflows |
init_failed | The Nexus workflow could not be launched due to an error, such as required data missing. | e.g. {reason: "fields_missing", fields: "family_size"} | Nexus.student_loan_enroll |
debt_account_linked | The consumer logged into a debt account to fetch additional details about debts with that lender. | none | Nexus.guidance |
consolidation_incomplete | The consumer began an application for a debt-consolidation loan but did not finish it. | none | Nexus.guidance |
consolidation_offers_unavailable | The consumer began an application for a debt-consolidation loan but did not receive offers from a lender. | none | Nexus.guidance |
consolidation_offer_selected | The consumer selected a consolidation loan offer and was directed to the lender's site to submit the pre-filled application. | none | Nexus.guidance |
Workflow finished events
Depending on the workflow, the metadata contained in the workflow_finished
event will differ. Here is an example for the link_to_enroll
workflow. See the table below for specific workflow metadata.
{
nexusEvent: {
name: "workflow_finished",
workflow: "link_to_enroll",
consumer: { uuid: "dceea28c-2245-41a8-a558-fef1643f99b2" },
happened_at: "2024-07-02T14:39:12.205906Z",
metadata: {
enrollment: {
created_at: "2021-05-07T16:36:12.051603Z",
estimated_approval_date: "2023-12-15",
id: 23,
repayment_plan: {
description: "Saving on a Valuable Education (SAVE)",
type: "save",
},
status: {
updated_at: "2021-05-07T16:36:12.055132Z",
description: "Submission in Progress",
type: "pending",
},
uuid: "c399298f-47ef-4fab-85b3-6244fca22448",
},
},
},
}
workflow | metadata |
---|---|
Nexus.link_to_enroll | See metadata in js example above. |
Nexus.refi | { offer: { id: "d1fb8aad-813e-4b8f-af36-49bcb4b509d3", lender: "Arkansas Student Loan Authority" }, submission: { id: "aff108cb-73d6-4273-a2e9-ddee97f033a8", loans: [ "966a98cd-821e-4064-8ae3-82185abc97c8", "cc2102b3-bd1d-4fba-8cbe-680b121b41ac", "6e6b4aa9-087f-473d-93dc-386722e9886a" ]} |
Nexus.student_loan_enroll | See metadata in js example above. |
Nexus.student_loan_link | none |
Updated 4 months ago