Skip to content

checkApplicantEligibility

Mutation

Run underwriting on a credit report and generate an underwriting document listing eligible and ineligible debts.

Mutation Signature

mutation {
checkApplicantEligibility(applicationType: ApplicationTypeInput!, input: UwResultCheckInput!): EligibilityResponse!
}

Example Request

mutation CheckApplicantEligibility($applicationType: ApplicationTypeInput!, $input: UwResultCheckInput!) {
checkApplicantEligibility(applicationType: $applicationType, input: $input) {
# Add fields you want to retrieve
}
}

Example Variables:

{
"applicationType": "SINGLE",
"input": {
"primaryReportId": "cr-abc123def456",
"leadId": "lead-67890",
"applicantContactInfo": {
"firstName": "John",
"lastName": "Doe",
"email": "john.doe@example.com",
"phone": "+12135551234",
"applicantState": "CA",
"ssn": "123456789",
"dob": "1985-03-15",
"homeAddress": "123 Main Street, Los Angeles, CA 90001",
"hardship": "Significant decrease in income",
"eligibilityReqMilitary": "NO",
"eligibilityReqCreditCounselling": "NO",
"eligibilityReqBankruptcy": "NO",
"eligibilityReqFederalGovDebt": "NO",
"eligibilityReqSecuredDebt": "NO"
},
"agentAssigned": "agent-12345",
"budget": {
"totalMonthlyIncome": 5000,
"totalMonthlyExpense": 3500
}
}
}

Example Response

{
"data": {
"checkApplicantEligibility": {
"data": {
"id": "uw-xyz789",
"revision": 1,
"applicationUwResult": {
"applicantPrequalified": true,
"applicationType": "SINGLE",
"totalDebt": 25000,
"totalEligibleDebt": 22500,
"rootFilters": {
"totalDebtValueCheck": true,
"tenPercentRuleCheck": true,
"agentAssignedCheck": true,
"creditReport30DaysCheck": true,
"psStateServiceCheck": true,
"programTermCheck": true,
"budgetHardshipCheck": true
}
},
"applicantUwResult": {
"id": "uw-xyz789",
"creditReportId": "cr-abc123def456",
"leadId": "lead-67890",
"applicationType": "SINGLE",
"creditReportSource": "CRS_EQUIFAX",
"rootFilters": {
"stateServiceCheck": true,
"bankruptcyCheck": true,
"ssnCheck": true,
"dobCheck": true,
"phoneCheck": true,
"firstNameCheck": true,
"lastNameCheck": true,
"hardshipCheck": true
},
"debts": [
{
"id": "debt-001",
"creditorName": "Capital One",
"accountNumber": "****1234",
"currentBalance": 5432.1,
"isSelected": true,
"eligibilityStatus": "ELIGIBLE",
"approvedAccountTypeCheck": true,
"unacceptableCreditorCheck": true,
"minimumDebtValueCheck": true
},
{
"id": "debt-002",
"creditorName": "Chase Bank",
"accountNumber": "****5678",
"currentBalance": 12500,
"isSelected": true,
"eligibilityStatus": "ELIGIBLE",
"approvedAccountTypeCheck": true,
"unacceptableCreditorCheck": true,
"minimumDebtValueCheck": true
}
]
},
"maxTerm": 48,
"createdAt": "2025-01-15T10:30:00.000Z"
},
"errors": null
}
}
}

Arguments

ArgumentTypeDescription
applicationTypeApplicationTypeInput!Application type for underwriting
inputUwResultCheckInput!Input for checking applicant eligibility. Contains credit report IDs, contact information, and enrollment details.

Input Types

ApplicationTypeInput

Application type for underwriting

ValueDescription
JOINTJoint application with primary applicant and co-applicant
SINGLESingle applicant application

UwResultCheckInput

Input for checking applicant eligibility. Contains credit report IDs, contact information, and enrollment details.

Required Fields:

FieldTypeDescription
primaryReportIdString!Applicant normalized credit report ID from the credit report service
applicantContactInfoApplicantContactInfoInput!Applicant contact information

Optional Fields:

FieldTypeDescription
secondaryReportIdStringCo-Applicant normalized credit report ID from the credit report service
leadIdStringApplicant leadId set by the integrating CRM to identify the lead in its system.
coApplicantContactInfoApplicantContactInfoInputCo-applicant contact information. Required for JOINT application.
agentAssignedStringAgent userId set by the integrating CRM to identify the agent in its system.
planPlanInputEnrollment payment plan
budgetBudgetInputBudget
additionalInfoAdditionalInfoInputAdditional underwriting configuration options

ApplicantContactInfoInput

Applicant contact and personal information for eligibility check

Required Fields:

FieldTypeDescription
applicantStateString!Applicant state. Must be a valid U.S. state. Sample Values: - AL - AK - AZ - AR - CA - CO

Optional Fields:

FieldTypeDescription
employerNameStringEmployer name
isMarriedToCoApplicantBooleanIdentify if the applicant is married to the co-applicant. Values: - true - false
homeAddressStringApplicant home address
ssnStringApplicant SSN must be 9 digits long. Ex:000000000.
dobStringApplicant date of birth must be in the format YYYY-MM-DD.
phoneStringApplicant phone number must be U.S. phone number in E.164 format.
cellPhoneStringApplicant cell phone number must be U.S. phone number in E.164 format.
firstNameStringApplicant first name must be 2-20 characters long.
lastNameStringApplicant last name must be 2-20 characters long.
jobTitleStringApplicant job title must be 2-20 characters long.
emailStringApplicant email must be a valid email address.
hardshipStringApplicant hardship reason. Sample Values: - Significant decrease in income. - Loss of employment. - Significant medical expenses.
filedBankruptcyStringHas the applicant filed bankruptcy. Values: - YES - NO
routingNumberStringApplicant routing number.
bankNameStringApplicant bank name.
bankAccountNumberStringApplicant bank account number.
bankAccountHolderNameStringApplicant bank account holder name
bankAccountTypeStringApplicant bank account type
eligibilityReqMilitaryStringAn answer must be provided for Question: Are you in the military, work in law enforcement, work for a Financial institution or have security clearance? Values: - YES - NO
eligibilityReqCreditCounsellingStringAn answer must be provided for Question: Are you currently enrolled in a credit counseling program? Values: - YES - NO
eligibilityReqBankruptcyStringAn answer must be provided for Question: Are you currently involved in a Bankruptcy proceeding? Values: - YES - NO
eligibilityReqFederalGovDebtStringAn answer must be provided for Question: Are any of the accounts being submitted for enrollment backed by the U.S. Federal government? Values: - YES - NO
eligibilityReqSecuredDebtStringAn answer must be provided for Question: Are any of the accounts being submitted for enrollment secured by any type of collateral? Values: - YES - NO
belongsToCompanyIdStringThe Forth Pay company ID that the applicant belongs to.

ApplicantContactInfoInput

Applicant contact and personal information for eligibility check

Required Fields:

FieldTypeDescription
applicantStateString!Applicant state. Must be a valid U.S. state. Sample Values: - AL - AK - AZ - AR - CA - CO

Optional Fields:

FieldTypeDescription
employerNameStringEmployer name
isMarriedToCoApplicantBooleanIdentify if the applicant is married to the co-applicant. Values: - true - false
homeAddressStringApplicant home address
ssnStringApplicant SSN must be 9 digits long. Ex:000000000.
dobStringApplicant date of birth must be in the format YYYY-MM-DD.
phoneStringApplicant phone number must be U.S. phone number in E.164 format.
cellPhoneStringApplicant cell phone number must be U.S. phone number in E.164 format.
firstNameStringApplicant first name must be 2-20 characters long.
lastNameStringApplicant last name must be 2-20 characters long.
jobTitleStringApplicant job title must be 2-20 characters long.
emailStringApplicant email must be a valid email address.
hardshipStringApplicant hardship reason. Sample Values: - Significant decrease in income. - Loss of employment. - Significant medical expenses.
filedBankruptcyStringHas the applicant filed bankruptcy. Values: - YES - NO
routingNumberStringApplicant routing number.
bankNameStringApplicant bank name.
bankAccountNumberStringApplicant bank account number.
bankAccountHolderNameStringApplicant bank account holder name
bankAccountTypeStringApplicant bank account type
eligibilityReqMilitaryStringAn answer must be provided for Question: Are you in the military, work in law enforcement, work for a Financial institution or have security clearance? Values: - YES - NO
eligibilityReqCreditCounsellingStringAn answer must be provided for Question: Are you currently enrolled in a credit counseling program? Values: - YES - NO
eligibilityReqBankruptcyStringAn answer must be provided for Question: Are you currently involved in a Bankruptcy proceeding? Values: - YES - NO
eligibilityReqFederalGovDebtStringAn answer must be provided for Question: Are any of the accounts being submitted for enrollment backed by the U.S. Federal government? Values: - YES - NO
eligibilityReqSecuredDebtStringAn answer must be provided for Question: Are any of the accounts being submitted for enrollment secured by any type of collateral? Values: - YES - NO
belongsToCompanyIdStringThe Forth Pay company ID that the applicant belongs to.

PlanInput

Enrollment payment plan configuration

Optional Fields:

FieldTypeDescription
frequencyStringPayment frequency. Ex: Monthly, Bi-Weekly
firstPaymentAmountFloatFirst payment amount. Ex: 100, 123.45,
secondPaymentAmountFloatSecond payment amount. Ex: 100, 123.45,
firstPaymentDateStringFirst payment date.
firstDraftExceptionStringFirst draft exception.
programTermIntProgram term.
feePercentageFloatFee percentage. Ex: 27
epfReductionStringEPF reduction. Ex: YES, NO
secondPaymentDateStringSecond payment date.
planIdStringEnrollment plan ID.

BudgetInput

Applicant budget information for affordability calculations

Optional Fields:

FieldTypeDescription
totalMonthlyIncomeFloatTotal monthly income.
totalMonthlyExpenseFloatTotal monthly expenses.

AdditionalInfoInput

Additional underwriting configuration options and exceptions

Optional Fields:

FieldTypeDescription
debtAmountExceptionStringDebt amount exception
includeUnacceptableCreditorBooleanInclude unacceptable creditor
termExtensionExceptionFloatTerm extension exception value
standaloneDebtsExceptionBooleanStandalone debts exception
eomFirstDraftDateExceptionBooleanEOM first draft date exception

Response Type

Returns: EligibilityResponse!

EligibilityResponse

Response from eligibility check or update operations

FieldTypeDescription
dataUwEligibilityResultThe underwriting eligibility result data
errors[EligibilityResponseError]List of errors or warnings from underwriting checks

UwEligibilityResult

FieldTypeDescription
idID!Underwriting document ID
revisionInt!Revision number of this underwriting document. Each time the document is edited the revision number is incremented
applicationUwResultApplicationUwResultUnderwriting result for the application as a whole.
applicantUwResultUwResultApplicant’s debts (tradeline) specific underwriting results
coApplicantUwResultUwResultCo-applicant’s debts (tradeline) specific underwriting results. Only applicable to JOINT application.
jointUwResultJointUwResultJoint debts (tradeline) specific underwriting results. Only applicable to JOINT application.
tradelineMetadataTradelineMetadataAdditional metadata about UW application
maxTermIntMaximum term (in months) calculated for this underwriting application
createdAtDateDate and time this underwriting document revision was created
ApplicationUwResult
FieldTypeDescription
applicantPrequalifiedBoolean!True/False flag to identify if this application passed all underwriting criteria
applicationTypeStringType of application can be SINGLE or JOINT
rootFiltersApplicationRootFilters!Application level filters
totalDebtFloatTotal selected debts balance
totalEligibleDebtFloatTotal eligible and selected debts balance
tradelineMetadataTradelineMetadataAdditional metadata about UW application
ApplicationRootFilters
FieldTypeDescription
totalDebtValueCheckBooleanTrue/False flag to identify if this underwriting check passed
tenPercentRuleCheckBooleanTrue/False flag to identify if this underwriting check passed
agentAssignedCheckBooleanTrue/False flag to identify if this underwriting check passed
creditReport30DaysCheckBooleanTrue/False flag to identify if this underwriting check passed
psStateServiceCheckBooleanTrue/False flag to identify if this underwriting check passed
uniqueEmailPhoneCheckBooleanTrue/False flag to identify if this underwriting check passed
programTermCheckBooleanTrue/False flag to identify if this underwriting check passed
budgetHardshipCheckBooleanTrue/False flag to identify if this underwriting check passed
TradelineMetadata
FieldTypeDescription
enrolledUpstartDebtAccountNumbers[String]List of externalDebtsId’s that belong to selected Upstart debts, if empty then none
enrolledCapitalOneDebtAccountNumbers[String]List of externalDebtsId’s that belong to selected Catipal One debts, if empty then none
enrolledDiscoverDebtAccountNumbers[String]List of externalDebtsId’s that belong to selected Discover debts, if empty then none
UwResult
FieldTypeDescription
idID!Underwriting document ID
uwOrgIdStringThe organization underwriting rules used for this application. Values: - ALV - GLG
reqOrgIdStringRequesting organization ID. Based on the credentials of the system making the request.
revisionInt!Document revision number. Each time the document is edited the revision number is incremented
reqOrgContactIdStringRequesting organization contact ID
creditReportIdStringApplicant normalized credit report ID from the credit report service
coCreditReportIdStringCo-Applicant normalized credit report ID from the credit report service
leadIdStringApplicant leadId set by the integrating CRM to identify the lead in its system.
applicationTypeStringType of application can be SINGLE or JOINT
applicantInfoApplicantInfo!Applicant information.
rootFiltersApplicantRootFilters!Root level filters (All underwriting filters that are not specific to a debt)
debts[UwResultDebt]!List of debts. Each debt will have additional underwriting pass/fail information
creditReportSourceString!Credit report source Values: - SPINWHEEL - CRS_TRANSUNION - CRS_EQUIFAX
rootHistory[UwResultHistory]Audit history of edits applied to the top level fields of this application
createdAtDateDate and time this underwriting document revision was created
ApplicantInfo
FieldTypeDescription
publicRecords[PublicRecord]Public records from the credit report.
applicantContactInfoApplicantContactInfoApplicant’s contact information
coApplicantContactInfoApplicantContactInfoCo-applicant’s contact information
agentAssignedStringAgent userId set by the integrating CRM to identify the agent in its system.
planPlanEnrollment plan.
budgetBudgetBudget.
additionalInfoAdditionalInfoAdditional info
PublicRecord

Public Record

FieldTypeDescription
bankruptcyCodeString!Bankcrupty code
bankruptcyDateFiledStringBankcrupty date filed
bankruptcyDispositionTypeStringBankcrupty disposition type
ApplicantContactInfo
FieldTypeDescription
employerNameStringApplicant employer name
isMarriedToCoApplicantBooleanTrue/False flag to identify if the applicant is married to the co-applicant
homeAddressStringApplicant home address.
applicantStateString!Applicant state.
ssnStringApplicant SSN.
dobStringApplicant date of birth.
phoneStringApplicant phone number.
cellPhoneStringApplicant cell phone number.
firstNameStringApplicant first name.
lastNameStringApplicant last name.
jobTitleStringApplicant job title.
emailStringApplicant email.
hardshipStringApplicant hardship reason.
filedBankruptcyStringHas the applicant filed bankruptcy.
routingNumberStringApplicant routing number.
bankNameStringApplicant bank name.
bankAccountNumberStringApplicant bank account number.
bankAccountHolderNameStringApplicant bank account holder name.
bankAccountTypeStringApplicant bank account type.
eligibilityReqMilitaryStringApplicant eligibility requirement for military.
eligibilityReqCreditCounsellingStringApplicant eligibility requirement for credit counselling.
eligibilityReqBankruptcyStringApplicant eligibility requirement for bankruptcy.
eligibilityReqFederalGovDebtStringApplicant eligibility requirement for federal government debt.
eligibilityReqSecuredDebtStringApplicant eligibility requirement for secured debt.
belongsToCompanyIdStringThe Forth Pay company ID that the applicant belongs to.
ApplicantContactInfo
FieldTypeDescription
employerNameStringApplicant employer name
isMarriedToCoApplicantBooleanTrue/False flag to identify if the applicant is married to the co-applicant
homeAddressStringApplicant home address.
applicantStateString!Applicant state.
ssnStringApplicant SSN.
dobStringApplicant date of birth.
phoneStringApplicant phone number.
cellPhoneStringApplicant cell phone number.
firstNameStringApplicant first name.
lastNameStringApplicant last name.
jobTitleStringApplicant job title.
emailStringApplicant email.
hardshipStringApplicant hardship reason.
filedBankruptcyStringHas the applicant filed bankruptcy.
routingNumberStringApplicant routing number.
bankNameStringApplicant bank name.
bankAccountNumberStringApplicant bank account number.
bankAccountHolderNameStringApplicant bank account holder name.
bankAccountTypeStringApplicant bank account type.
eligibilityReqMilitaryStringApplicant eligibility requirement for military.
eligibilityReqCreditCounsellingStringApplicant eligibility requirement for credit counselling.
eligibilityReqBankruptcyStringApplicant eligibility requirement for bankruptcy.
eligibilityReqFederalGovDebtStringApplicant eligibility requirement for federal government debt.
eligibilityReqSecuredDebtStringApplicant eligibility requirement for secured debt.
belongsToCompanyIdStringThe Forth Pay company ID that the applicant belongs to.
Plan
FieldTypeDescription
frequencyStringFrequency of the enrollment plan. Ex: Monthly, Bi-Weekly
firstPaymentAmountFloatFirst payment amount. Ex: 100, 123.45,
secondPaymentAmountFloatSecond payment amount. Ex: 100, 123.45,
firstPaymentDateStringFirst payment date.
secondPaymentDateStringSecond payment date.
firstDraftExceptionStringFirst draft exception.
programTermIntProgram term.
feePercentageFloatFee percentage.
epfReductionStringEPF reduction. Ex: YES, NO
planIdStringEnrollment plan ID.
Budget
FieldTypeDescription
totalMonthlyIncomeFloatTotal monthly income.
totalMonthlyExpenseFloatTotal monthly expenses.
AdditionalInfo
FieldTypeDescription
debtAmountExceptionStringDebt amount exception
includeUnacceptableCreditorBooleanInclude unacceptable creditor
termExtensionExceptionFloatTerm extension exception value
standaloneDebtsExceptionBooleanStandalone debts exception
eomFirstDraftDateExceptionBooleanEOM first draft date exception
ApplicantRootFilters
FieldTypeDescription
stateServiceCheckBooleanTrue/False flag to identify if this underwriting check passed
bankruptcyCheckBooleanTrue/False flag to identify if this underwriting check passed
ssnCheckBooleanTrue/False flag to identify if this underwriting check passed
dobCheckBooleanTrue/False flag to identify if this underwriting check passed
phoneCheckBooleanTrue/False flag to identify if this underwriting check passed
firstNameCheckBooleanTrue/False flag to identify if this underwriting check passed
lastNameCheckBooleanTrue/False flag to identify if this underwriting check passed
applicantEmployerCheckBooleanTrue/False flag to identify if this underwriting check passed
jobTitleCheckBooleanTrue/False flag to identify if this underwriting check passed
addressCheckBooleanTrue/False flag to identify if this underwriting check passed
emailCheckBooleanTrue/False flag to identify if this underwriting check passed
coApplicantFirstNameCheckBooleanTrue/False flag to identify if this underwriting check passed
coApplicantLastNameCheckBooleanTrue/False flag to identify if this underwriting check passed
coApplicantEmployerCheckBooleanTrue/False flag to identify if this underwriting check passed
coApplicantJobTitleCheckBooleanTrue/False flag to identify if this underwriting check passed
coApplicantSsnCheckBooleanTrue/False flag to identify if this underwriting check passed
coApplicantDobCheckBooleanTrue/False flag to identify if this underwriting check passed
coApplicantPhoneCheckBooleanTrue/False flag to identify if this underwriting check passed
coApplicantCellPhoneCheckBooleanTrue/False flag to identify if this underwriting check passed
hardshipCheckBooleanTrue/False flag to identify if this underwriting check passed
duplicateSsnCheckBooleanTrue/False flag to identify if this underwriting check passed
duplicateCoApplicantSsnCheckBooleanTrue/False flag to identify if this underwriting check passed
routingNumberCheckBooleanTrue/False flag to identify if this underwriting check passed
bankNameCheckBooleanTrue/False flag to identify if this underwriting check passed
bankAccountNumberCheckBooleanTrue/False flag to identify if this underwriting check passed
bankAccountHolderNameCheckBooleanTrue/False flag to identify if this underwriting check passed
bankAccountTypeCheckBooleanTrue/False flag to identify if this underwriting check passed
debtsBackedByUsFedGovCheckBooleanTrue/False flag to identify if this underwriting check passed
eligibilityReqMilitaryCheckBooleanTrue/False flag to identify if this underwriting check passed
eligibilityReqCreditCounsellingCheckBooleanTrue/False flag to identify if this underwriting check passed
eligibilityReqBankruptcyCheckBooleanTrue/False flag to identify if this underwriting check passed
eligibilityReqFederalGovDebtCheckBooleanTrue/False flag to identify if this underwriting check passed
eligibilityReqSecuredDebtCheckBooleanTrue/False flag to identify if this underwriting check passed
frequencyMinimumPaymentCheckBooleanTrue/False flag to identify if this underwriting check passed
budgetAffordabilityCheckBooleanTrue/False flag to identify if this underwriting check passed
firstDraftDateCheckBooleanTrue/False flag to identify if this underwriting check passed
feeValidationCheckBooleanTrue/False flag to identify if this underwriting check passed
secondDraftDateCheckBooleanTrue/False flag to identify if this underwriting check passed
companyIsAuthorizedCheckBooleanTrue/False flag to identify if this underwriting check passed
enrollmentPlanCheckBooleanTrue/False flag to identify if this underwriting check passed
termExtensionExceptionCheckBooleanTrue/False flag to identify if this underwriting check passed
caStateFileCheckBooleanTrue/False flag to identify if the co-applicant has ssn when state is CA and application type is JOINT
UwResultDebt

Debt information with underwriting check results

FieldTypeDescription
idID!Unique identifier for the debt
applicantIdStringPrimary applicant ID
coApplicantIdStringSecondary applicant ID, if applicable (For JOINT application only)
externalDebtIdIDThis is replaced by accountNumber @deprecated Use accountNumber instead
accountNumberStringDebt account number
externalCrmIdStringOptional field to identify the debt in the requesting CRM
isSelectedBoolean!True/False flag to identify if this debt is selected for program enrollment
coApplicantIsSelectedBooleanOnly applicable to JOINT debt. True/False flag to identify if this debt is selected by the co-applicant
eligibilityStatusEligibilityStatus!Identify the eligibility status
isOverriddenBooleanTrue/False flag to identify if the eligiblity status is being overriden
exceptions[String]List of reasons the eligibility status is being overridden
history[UwResultDebtHistory]History of all the updates made to this debt
sourceString!Source of the debt entry can be MANUAL or CREDIT_REPORT
creditorNameStringcreditor name
parentCreditorNameStringParent creditor name
parentCreditorIdStringParent creditor ID
originalCreditorNameStringOriginal creditor name
creditorIdIDCreditor ID from Forth
creditorTypeStringcreditor type
ecoaCodeStringECOA Code
accountTypeStringAccount type
portfolioTypeStringPortfolio type
debtTypeStringDebt type
openDateStringDate debt was opened
lastPaymentDateStringDate of the last payment
hasLastPaymentBooleanTrue/False flag to identify if last payment was amde
narrativeCodes[String]Narrative codes that might include bankcruptcy codes
bankruptcyDateFiledStringBankruptcy Record Date. This come from the credit report and does not need to be updated.
currentBalanceFloatCurrent debt balance
originalBalanceFloatOriginal debt balance
nawSignedDateDateOnly applicable to JOINT debt. The date when the non-applicant waiver has been signed.
nawUrlStringOnly applicable to JOINT debt. The url to the non-applicant waiver document’s file
hasProofOfLiabilityBooleanHas provided proof of liability
forthDebtTypeIdStringForth Debt Type ID
remarks[String]Remarks
isCollectionBooleanFlag to show if the debt is in collection
approvedAccountTypeCheckBooleanTrue/False flag to identify if this underwriting check passed
unacceptableCreditorCheckBooleanTrue/False flag to identify if this underwriting check passed
creditUnionAndStateCheckBooleanTrue/False flag to identify if this underwriting check passed
debtOwnershipCheckBooleanTrue/False flag to identify if this underwriting check passed
minimumDebtValueCheckBooleanTrue/False flag to identify if this underwriting check passed
duplicateDebtsCheckBooleanTrue/False flag to identify if this debt is selected and a duplicate debt
multipleCreditUnionCheckBooleanTrue/False flag to identify if this underwriting check passed
paymentHistoryCheckBooleanTrue/False flag to identify if this underwriting check passed
unsecuredDebtCheckBooleanTrue/False flag to identify if this underwriting check passed
bankruptcyCheckBooleanTrue/False flag to identify if this underwriting check passed
employerIsCreditorCheckBooleanTrue/False flag to identify if the creditor is the same as employer
standaloneDebtsCheckBooleanTrue/False flag to identify if the creditor is a standalone debt
coApplicantCheckBooleanOnly applicable to JOINT debt. True/False flag to identify if this underwriting check passed
currAndOgBalanceCheckBooleanCurrent and original balance check
proofOfLiabilityCheckBooleanProof of liability
delinquencyStringaccount rating /delinquency value
monthlyPaymentFloatMonthly payment
notes[String]Debt Notes
UwResultDebtHistory

Historical record of changes made to a debt

FieldTypeDescription
isSelectedBooleanWhether the debt was selected for enrollment at this revision
coApplicantIsSelectedBooleanWhether the co-applicant had selected this debt at this revision
exceptions[String]Exceptions applied to the debt at this revision
sourceStringSource of the debt (MANUAL or CREDIT_REPORT)
creditorNameStringCreditor name at this revision
originalCreditorNameStringOriginal creditor name at this revision
creditorTypeStringCreditor type at this revision
ecoaCodeStringECOA code at this revision
accountTypeStringAccount type at this revision
portfolioTypeStringPortfolio type at this revision
debtTypeStringDebt type at this revision
openDateStringOpen date at this revision
lastPaymentDateStringLast payment date at this revision
hasLastPaymentBooleanWhether last payment was made at this revision
currentBalanceFloatCurrent balance at this revision
originalBalanceFloatOriginal balance at this revision
narrativeCodes[String]Narrative codes at this revision
bankruptcyDateFiledStringBankruptcy date filed at this revision
nawSignedDateDateNon-applicant waiver signed date at this revision
nawUrlStringNon-applicant waiver URL at this revision
hasProofOfLiabilityBooleanWhether proof of liability was provided at this revision
isCollectionBooleanWhether the debt was in collection at this revision
remarks[String]Remarks at this revision
monthlyPaymentFloatMonthly payment at this revision
updatedByIDUser ID who made this update
fromRevisionIntThe revision number this history entry was created from
UwResultHistory

Historical record of changes made to the underwriting result

FieldTypeDescription
applicantInfoApplicantInfoApplicant information at this revision
leadIdStringLead ID at this revision
updatedByIDUser ID who made this update
fromRevisionIntThe revision number this history entry was created from
ApplicantInfo
FieldTypeDescription
publicRecords[PublicRecord]Public records from the credit report.
applicantContactInfoApplicantContactInfoApplicant’s contact information
coApplicantContactInfoApplicantContactInfoCo-applicant’s contact information
agentAssignedStringAgent userId set by the integrating CRM to identify the agent in its system.
planPlanEnrollment plan.
budgetBudgetBudget.
additionalInfoAdditionalInfoAdditional info
PublicRecord

Public Record

FieldTypeDescription
bankruptcyCodeString!Bankcrupty code
bankruptcyDateFiledStringBankcrupty date filed
bankruptcyDispositionTypeStringBankcrupty disposition type
ApplicantContactInfo
FieldTypeDescription
employerNameStringApplicant employer name
isMarriedToCoApplicantBooleanTrue/False flag to identify if the applicant is married to the co-applicant
homeAddressStringApplicant home address.
applicantStateString!Applicant state.
ssnStringApplicant SSN.
dobStringApplicant date of birth.
phoneStringApplicant phone number.
cellPhoneStringApplicant cell phone number.
firstNameStringApplicant first name.
lastNameStringApplicant last name.
jobTitleStringApplicant job title.
emailStringApplicant email.
hardshipStringApplicant hardship reason.
filedBankruptcyStringHas the applicant filed bankruptcy.
routingNumberStringApplicant routing number.
bankNameStringApplicant bank name.
bankAccountNumberStringApplicant bank account number.
bankAccountHolderNameStringApplicant bank account holder name.
bankAccountTypeStringApplicant bank account type.
eligibilityReqMilitaryStringApplicant eligibility requirement for military.
eligibilityReqCreditCounsellingStringApplicant eligibility requirement for credit counselling.
eligibilityReqBankruptcyStringApplicant eligibility requirement for bankruptcy.
eligibilityReqFederalGovDebtStringApplicant eligibility requirement for federal government debt.
eligibilityReqSecuredDebtStringApplicant eligibility requirement for secured debt.
belongsToCompanyIdStringThe Forth Pay company ID that the applicant belongs to.
ApplicantContactInfo
FieldTypeDescription
employerNameStringApplicant employer name
isMarriedToCoApplicantBooleanTrue/False flag to identify if the applicant is married to the co-applicant
homeAddressStringApplicant home address.
applicantStateString!Applicant state.
ssnStringApplicant SSN.
dobStringApplicant date of birth.
phoneStringApplicant phone number.
cellPhoneStringApplicant cell phone number.
firstNameStringApplicant first name.
lastNameStringApplicant last name.
jobTitleStringApplicant job title.
emailStringApplicant email.
hardshipStringApplicant hardship reason.
filedBankruptcyStringHas the applicant filed bankruptcy.
routingNumberStringApplicant routing number.
bankNameStringApplicant bank name.
bankAccountNumberStringApplicant bank account number.
bankAccountHolderNameStringApplicant bank account holder name.
bankAccountTypeStringApplicant bank account type.
eligibilityReqMilitaryStringApplicant eligibility requirement for military.
eligibilityReqCreditCounsellingStringApplicant eligibility requirement for credit counselling.
eligibilityReqBankruptcyStringApplicant eligibility requirement for bankruptcy.
eligibilityReqFederalGovDebtStringApplicant eligibility requirement for federal government debt.
eligibilityReqSecuredDebtStringApplicant eligibility requirement for secured debt.
belongsToCompanyIdStringThe Forth Pay company ID that the applicant belongs to.
Plan
FieldTypeDescription
frequencyStringFrequency of the enrollment plan. Ex: Monthly, Bi-Weekly
firstPaymentAmountFloatFirst payment amount. Ex: 100, 123.45,
secondPaymentAmountFloatSecond payment amount. Ex: 100, 123.45,
firstPaymentDateStringFirst payment date.
secondPaymentDateStringSecond payment date.
firstDraftExceptionStringFirst draft exception.
programTermIntProgram term.
feePercentageFloatFee percentage.
epfReductionStringEPF reduction. Ex: YES, NO
planIdStringEnrollment plan ID.
Budget
FieldTypeDescription
totalMonthlyIncomeFloatTotal monthly income.
totalMonthlyExpenseFloatTotal monthly expenses.
AdditionalInfo
FieldTypeDescription
debtAmountExceptionStringDebt amount exception
includeUnacceptableCreditorBooleanInclude unacceptable creditor
termExtensionExceptionFloatTerm extension exception value
standaloneDebtsExceptionBooleanStandalone debts exception
eomFirstDraftDateExceptionBooleanEOM first draft date exception
UwResult
FieldTypeDescription
idID!Underwriting document ID
uwOrgIdStringThe organization underwriting rules used for this application. Values: - ALV - GLG
reqOrgIdStringRequesting organization ID. Based on the credentials of the system making the request.
revisionInt!Document revision number. Each time the document is edited the revision number is incremented
reqOrgContactIdStringRequesting organization contact ID
creditReportIdStringApplicant normalized credit report ID from the credit report service
coCreditReportIdStringCo-Applicant normalized credit report ID from the credit report service
leadIdStringApplicant leadId set by the integrating CRM to identify the lead in its system.
applicationTypeStringType of application can be SINGLE or JOINT
applicantInfoApplicantInfo!Applicant information.
rootFiltersApplicantRootFilters!Root level filters (All underwriting filters that are not specific to a debt)
debts[UwResultDebt]!List of debts. Each debt will have additional underwriting pass/fail information
creditReportSourceString!Credit report source Values: - SPINWHEEL - CRS_TRANSUNION - CRS_EQUIFAX
rootHistory[UwResultHistory]Audit history of edits applied to the top level fields of this application
createdAtDateDate and time this underwriting document revision was created
ApplicantInfo
FieldTypeDescription
publicRecords[PublicRecord]Public records from the credit report.
applicantContactInfoApplicantContactInfoApplicant’s contact information
coApplicantContactInfoApplicantContactInfoCo-applicant’s contact information
agentAssignedStringAgent userId set by the integrating CRM to identify the agent in its system.
planPlanEnrollment plan.
budgetBudgetBudget.
additionalInfoAdditionalInfoAdditional info
PublicRecord

Public Record

FieldTypeDescription
bankruptcyCodeString!Bankcrupty code
bankruptcyDateFiledStringBankcrupty date filed
bankruptcyDispositionTypeStringBankcrupty disposition type
ApplicantContactInfo
FieldTypeDescription
employerNameStringApplicant employer name
isMarriedToCoApplicantBooleanTrue/False flag to identify if the applicant is married to the co-applicant
homeAddressStringApplicant home address.
applicantStateString!Applicant state.
ssnStringApplicant SSN.
dobStringApplicant date of birth.
phoneStringApplicant phone number.
cellPhoneStringApplicant cell phone number.
firstNameStringApplicant first name.
lastNameStringApplicant last name.
jobTitleStringApplicant job title.
emailStringApplicant email.
hardshipStringApplicant hardship reason.
filedBankruptcyStringHas the applicant filed bankruptcy.
routingNumberStringApplicant routing number.
bankNameStringApplicant bank name.
bankAccountNumberStringApplicant bank account number.
bankAccountHolderNameStringApplicant bank account holder name.
bankAccountTypeStringApplicant bank account type.
eligibilityReqMilitaryStringApplicant eligibility requirement for military.
eligibilityReqCreditCounsellingStringApplicant eligibility requirement for credit counselling.
eligibilityReqBankruptcyStringApplicant eligibility requirement for bankruptcy.
eligibilityReqFederalGovDebtStringApplicant eligibility requirement for federal government debt.
eligibilityReqSecuredDebtStringApplicant eligibility requirement for secured debt.
belongsToCompanyIdStringThe Forth Pay company ID that the applicant belongs to.
ApplicantContactInfo
FieldTypeDescription
employerNameStringApplicant employer name
isMarriedToCoApplicantBooleanTrue/False flag to identify if the applicant is married to the co-applicant
homeAddressStringApplicant home address.
applicantStateString!Applicant state.
ssnStringApplicant SSN.
dobStringApplicant date of birth.
phoneStringApplicant phone number.
cellPhoneStringApplicant cell phone number.
firstNameStringApplicant first name.
lastNameStringApplicant last name.
jobTitleStringApplicant job title.
emailStringApplicant email.
hardshipStringApplicant hardship reason.
filedBankruptcyStringHas the applicant filed bankruptcy.
routingNumberStringApplicant routing number.
bankNameStringApplicant bank name.
bankAccountNumberStringApplicant bank account number.
bankAccountHolderNameStringApplicant bank account holder name.
bankAccountTypeStringApplicant bank account type.
eligibilityReqMilitaryStringApplicant eligibility requirement for military.
eligibilityReqCreditCounsellingStringApplicant eligibility requirement for credit counselling.
eligibilityReqBankruptcyStringApplicant eligibility requirement for bankruptcy.
eligibilityReqFederalGovDebtStringApplicant eligibility requirement for federal government debt.
eligibilityReqSecuredDebtStringApplicant eligibility requirement for secured debt.
belongsToCompanyIdStringThe Forth Pay company ID that the applicant belongs to.
Plan
FieldTypeDescription
frequencyStringFrequency of the enrollment plan. Ex: Monthly, Bi-Weekly
firstPaymentAmountFloatFirst payment amount. Ex: 100, 123.45,
secondPaymentAmountFloatSecond payment amount. Ex: 100, 123.45,
firstPaymentDateStringFirst payment date.
secondPaymentDateStringSecond payment date.
firstDraftExceptionStringFirst draft exception.
programTermIntProgram term.
feePercentageFloatFee percentage.
epfReductionStringEPF reduction. Ex: YES, NO
planIdStringEnrollment plan ID.
Budget
FieldTypeDescription
totalMonthlyIncomeFloatTotal monthly income.
totalMonthlyExpenseFloatTotal monthly expenses.
AdditionalInfo
FieldTypeDescription
debtAmountExceptionStringDebt amount exception
includeUnacceptableCreditorBooleanInclude unacceptable creditor
termExtensionExceptionFloatTerm extension exception value
standaloneDebtsExceptionBooleanStandalone debts exception
eomFirstDraftDateExceptionBooleanEOM first draft date exception
ApplicantRootFilters
FieldTypeDescription
stateServiceCheckBooleanTrue/False flag to identify if this underwriting check passed
bankruptcyCheckBooleanTrue/False flag to identify if this underwriting check passed
ssnCheckBooleanTrue/False flag to identify if this underwriting check passed
dobCheckBooleanTrue/False flag to identify if this underwriting check passed
phoneCheckBooleanTrue/False flag to identify if this underwriting check passed
firstNameCheckBooleanTrue/False flag to identify if this underwriting check passed
lastNameCheckBooleanTrue/False flag to identify if this underwriting check passed
applicantEmployerCheckBooleanTrue/False flag to identify if this underwriting check passed
jobTitleCheckBooleanTrue/False flag to identify if this underwriting check passed
addressCheckBooleanTrue/False flag to identify if this underwriting check passed
emailCheckBooleanTrue/False flag to identify if this underwriting check passed
coApplicantFirstNameCheckBooleanTrue/False flag to identify if this underwriting check passed
coApplicantLastNameCheckBooleanTrue/False flag to identify if this underwriting check passed
coApplicantEmployerCheckBooleanTrue/False flag to identify if this underwriting check passed
coApplicantJobTitleCheckBooleanTrue/False flag to identify if this underwriting check passed
coApplicantSsnCheckBooleanTrue/False flag to identify if this underwriting check passed
coApplicantDobCheckBooleanTrue/False flag to identify if this underwriting check passed
coApplicantPhoneCheckBooleanTrue/False flag to identify if this underwriting check passed
coApplicantCellPhoneCheckBooleanTrue/False flag to identify if this underwriting check passed
hardshipCheckBooleanTrue/False flag to identify if this underwriting check passed
duplicateSsnCheckBooleanTrue/False flag to identify if this underwriting check passed
duplicateCoApplicantSsnCheckBooleanTrue/False flag to identify if this underwriting check passed
routingNumberCheckBooleanTrue/False flag to identify if this underwriting check passed
bankNameCheckBooleanTrue/False flag to identify if this underwriting check passed
bankAccountNumberCheckBooleanTrue/False flag to identify if this underwriting check passed
bankAccountHolderNameCheckBooleanTrue/False flag to identify if this underwriting check passed
bankAccountTypeCheckBooleanTrue/False flag to identify if this underwriting check passed
debtsBackedByUsFedGovCheckBooleanTrue/False flag to identify if this underwriting check passed
eligibilityReqMilitaryCheckBooleanTrue/False flag to identify if this underwriting check passed
eligibilityReqCreditCounsellingCheckBooleanTrue/False flag to identify if this underwriting check passed
eligibilityReqBankruptcyCheckBooleanTrue/False flag to identify if this underwriting check passed
eligibilityReqFederalGovDebtCheckBooleanTrue/False flag to identify if this underwriting check passed
eligibilityReqSecuredDebtCheckBooleanTrue/False flag to identify if this underwriting check passed
frequencyMinimumPaymentCheckBooleanTrue/False flag to identify if this underwriting check passed
budgetAffordabilityCheckBooleanTrue/False flag to identify if this underwriting check passed
firstDraftDateCheckBooleanTrue/False flag to identify if this underwriting check passed
feeValidationCheckBooleanTrue/False flag to identify if this underwriting check passed
secondDraftDateCheckBooleanTrue/False flag to identify if this underwriting check passed
companyIsAuthorizedCheckBooleanTrue/False flag to identify if this underwriting check passed
enrollmentPlanCheckBooleanTrue/False flag to identify if this underwriting check passed
termExtensionExceptionCheckBooleanTrue/False flag to identify if this underwriting check passed
caStateFileCheckBooleanTrue/False flag to identify if the co-applicant has ssn when state is CA and application type is JOINT
UwResultDebt

Debt information with underwriting check results

FieldTypeDescription
idID!Unique identifier for the debt
applicantIdStringPrimary applicant ID
coApplicantIdStringSecondary applicant ID, if applicable (For JOINT application only)
externalDebtIdIDThis is replaced by accountNumber @deprecated Use accountNumber instead
accountNumberStringDebt account number
externalCrmIdStringOptional field to identify the debt in the requesting CRM
isSelectedBoolean!True/False flag to identify if this debt is selected for program enrollment
coApplicantIsSelectedBooleanOnly applicable to JOINT debt. True/False flag to identify if this debt is selected by the co-applicant
eligibilityStatusEligibilityStatus!Identify the eligibility status
isOverriddenBooleanTrue/False flag to identify if the eligiblity status is being overriden
exceptions[String]List of reasons the eligibility status is being overridden
history[UwResultDebtHistory]History of all the updates made to this debt
sourceString!Source of the debt entry can be MANUAL or CREDIT_REPORT
creditorNameStringcreditor name
parentCreditorNameStringParent creditor name
parentCreditorIdStringParent creditor ID
originalCreditorNameStringOriginal creditor name
creditorIdIDCreditor ID from Forth
creditorTypeStringcreditor type
ecoaCodeStringECOA Code
accountTypeStringAccount type
portfolioTypeStringPortfolio type
debtTypeStringDebt type
openDateStringDate debt was opened
lastPaymentDateStringDate of the last payment
hasLastPaymentBooleanTrue/False flag to identify if last payment was amde
narrativeCodes[String]Narrative codes that might include bankcruptcy codes
bankruptcyDateFiledStringBankruptcy Record Date. This come from the credit report and does not need to be updated.
currentBalanceFloatCurrent debt balance
originalBalanceFloatOriginal debt balance
nawSignedDateDateOnly applicable to JOINT debt. The date when the non-applicant waiver has been signed.
nawUrlStringOnly applicable to JOINT debt. The url to the non-applicant waiver document’s file
hasProofOfLiabilityBooleanHas provided proof of liability
forthDebtTypeIdStringForth Debt Type ID
remarks[String]Remarks
isCollectionBooleanFlag to show if the debt is in collection
approvedAccountTypeCheckBooleanTrue/False flag to identify if this underwriting check passed
unacceptableCreditorCheckBooleanTrue/False flag to identify if this underwriting check passed
creditUnionAndStateCheckBooleanTrue/False flag to identify if this underwriting check passed
debtOwnershipCheckBooleanTrue/False flag to identify if this underwriting check passed
minimumDebtValueCheckBooleanTrue/False flag to identify if this underwriting check passed
duplicateDebtsCheckBooleanTrue/False flag to identify if this debt is selected and a duplicate debt
multipleCreditUnionCheckBooleanTrue/False flag to identify if this underwriting check passed
paymentHistoryCheckBooleanTrue/False flag to identify if this underwriting check passed
unsecuredDebtCheckBooleanTrue/False flag to identify if this underwriting check passed
bankruptcyCheckBooleanTrue/False flag to identify if this underwriting check passed
employerIsCreditorCheckBooleanTrue/False flag to identify if the creditor is the same as employer
standaloneDebtsCheckBooleanTrue/False flag to identify if the creditor is a standalone debt
coApplicantCheckBooleanOnly applicable to JOINT debt. True/False flag to identify if this underwriting check passed
currAndOgBalanceCheckBooleanCurrent and original balance check
proofOfLiabilityCheckBooleanProof of liability
delinquencyStringaccount rating /delinquency value
monthlyPaymentFloatMonthly payment
notes[String]Debt Notes
UwResultDebtHistory

Historical record of changes made to a debt

FieldTypeDescription
isSelectedBooleanWhether the debt was selected for enrollment at this revision
coApplicantIsSelectedBooleanWhether the co-applicant had selected this debt at this revision
exceptions[String]Exceptions applied to the debt at this revision
sourceStringSource of the debt (MANUAL or CREDIT_REPORT)
creditorNameStringCreditor name at this revision
originalCreditorNameStringOriginal creditor name at this revision
creditorTypeStringCreditor type at this revision
ecoaCodeStringECOA code at this revision
accountTypeStringAccount type at this revision
portfolioTypeStringPortfolio type at this revision
debtTypeStringDebt type at this revision
openDateStringOpen date at this revision
lastPaymentDateStringLast payment date at this revision
hasLastPaymentBooleanWhether last payment was made at this revision
currentBalanceFloatCurrent balance at this revision
originalBalanceFloatOriginal balance at this revision
narrativeCodes[String]Narrative codes at this revision
bankruptcyDateFiledStringBankruptcy date filed at this revision
nawSignedDateDateNon-applicant waiver signed date at this revision
nawUrlStringNon-applicant waiver URL at this revision
hasProofOfLiabilityBooleanWhether proof of liability was provided at this revision
isCollectionBooleanWhether the debt was in collection at this revision
remarks[String]Remarks at this revision
monthlyPaymentFloatMonthly payment at this revision
updatedByIDUser ID who made this update
fromRevisionIntThe revision number this history entry was created from
UwResultHistory

Historical record of changes made to the underwriting result

FieldTypeDescription
applicantInfoApplicantInfoApplicant information at this revision
leadIdStringLead ID at this revision
updatedByIDUser ID who made this update
fromRevisionIntThe revision number this history entry was created from
ApplicantInfo
FieldTypeDescription
publicRecords[PublicRecord]Public records from the credit report.
applicantContactInfoApplicantContactInfoApplicant’s contact information
coApplicantContactInfoApplicantContactInfoCo-applicant’s contact information
agentAssignedStringAgent userId set by the integrating CRM to identify the agent in its system.
planPlanEnrollment plan.
budgetBudgetBudget.
additionalInfoAdditionalInfoAdditional info
PublicRecord

Public Record

FieldTypeDescription
bankruptcyCodeString!Bankcrupty code
bankruptcyDateFiledStringBankcrupty date filed
bankruptcyDispositionTypeStringBankcrupty disposition type
ApplicantContactInfo
FieldTypeDescription
employerNameStringApplicant employer name
isMarriedToCoApplicantBooleanTrue/False flag to identify if the applicant is married to the co-applicant
homeAddressStringApplicant home address.
applicantStateString!Applicant state.
ssnStringApplicant SSN.
dobStringApplicant date of birth.
phoneStringApplicant phone number.
cellPhoneStringApplicant cell phone number.
firstNameStringApplicant first name.
lastNameStringApplicant last name.
jobTitleStringApplicant job title.
emailStringApplicant email.
hardshipStringApplicant hardship reason.
filedBankruptcyStringHas the applicant filed bankruptcy.
routingNumberStringApplicant routing number.
bankNameStringApplicant bank name.
bankAccountNumberStringApplicant bank account number.
bankAccountHolderNameStringApplicant bank account holder name.
bankAccountTypeStringApplicant bank account type.
eligibilityReqMilitaryStringApplicant eligibility requirement for military.
eligibilityReqCreditCounsellingStringApplicant eligibility requirement for credit counselling.
eligibilityReqBankruptcyStringApplicant eligibility requirement for bankruptcy.
eligibilityReqFederalGovDebtStringApplicant eligibility requirement for federal government debt.
eligibilityReqSecuredDebtStringApplicant eligibility requirement for secured debt.
belongsToCompanyIdStringThe Forth Pay company ID that the applicant belongs to.
ApplicantContactInfo
FieldTypeDescription
employerNameStringApplicant employer name
isMarriedToCoApplicantBooleanTrue/False flag to identify if the applicant is married to the co-applicant
homeAddressStringApplicant home address.
applicantStateString!Applicant state.
ssnStringApplicant SSN.
dobStringApplicant date of birth.
phoneStringApplicant phone number.
cellPhoneStringApplicant cell phone number.
firstNameStringApplicant first name.
lastNameStringApplicant last name.
jobTitleStringApplicant job title.
emailStringApplicant email.
hardshipStringApplicant hardship reason.
filedBankruptcyStringHas the applicant filed bankruptcy.
routingNumberStringApplicant routing number.
bankNameStringApplicant bank name.
bankAccountNumberStringApplicant bank account number.
bankAccountHolderNameStringApplicant bank account holder name.
bankAccountTypeStringApplicant bank account type.
eligibilityReqMilitaryStringApplicant eligibility requirement for military.
eligibilityReqCreditCounsellingStringApplicant eligibility requirement for credit counselling.
eligibilityReqBankruptcyStringApplicant eligibility requirement for bankruptcy.
eligibilityReqFederalGovDebtStringApplicant eligibility requirement for federal government debt.
eligibilityReqSecuredDebtStringApplicant eligibility requirement for secured debt.
belongsToCompanyIdStringThe Forth Pay company ID that the applicant belongs to.
Plan
FieldTypeDescription
frequencyStringFrequency of the enrollment plan. Ex: Monthly, Bi-Weekly
firstPaymentAmountFloatFirst payment amount. Ex: 100, 123.45,
secondPaymentAmountFloatSecond payment amount. Ex: 100, 123.45,
firstPaymentDateStringFirst payment date.
secondPaymentDateStringSecond payment date.
firstDraftExceptionStringFirst draft exception.
programTermIntProgram term.
feePercentageFloatFee percentage.
epfReductionStringEPF reduction. Ex: YES, NO
planIdStringEnrollment plan ID.
Budget
FieldTypeDescription
totalMonthlyIncomeFloatTotal monthly income.
totalMonthlyExpenseFloatTotal monthly expenses.
AdditionalInfo
FieldTypeDescription
debtAmountExceptionStringDebt amount exception
includeUnacceptableCreditorBooleanInclude unacceptable creditor
termExtensionExceptionFloatTerm extension exception value
standaloneDebtsExceptionBooleanStandalone debts exception
eomFirstDraftDateExceptionBooleanEOM first draft date exception
JointUwResult

Joint underwriting result containing shared debts between applicants

FieldTypeDescription
idID!Unique identifier for the joint underwriting result
primaryApplicantUwResultApplicantUwResultInfoPrimary applicant uw result id
coApplicantUwResultApplicantUwResultInfoCo-applicant uw result id
uwOrgIdStringThe organization underwriting rules used for this application. For example alv or glg
reqOrgIdStringRequesting organization ID
revisionInt!Document revision number. Each time the document is edited the revision number is incremented
leadIdStringSigma lead ID
creditReportIdStringPrimary applicant credit report ID
coCreditReportIdStringSecondary applicant credit report ID, if applicable (For JOINT application only)
applicantInfoJointUwApplicantInfo!Applicant information needed for the root filters
debts[UwResultDebt]!List of debts. Each debt will have additional underwriting pass/fail information
creditReportSourceString!Source can be SPINWHEEL, CRS_TRANSUNION, or CRS_EQUIFAX
rootHistory[JointUwResultHistory]History of edits applied to the top level fields of this application
createdAtDateDate and time this joint underwriting result was created
ApplicantUwResultInfo

Reference information for an applicant’s underwriting result

FieldTypeDescription
idIDUnderwriting result ID
revisionIntCurrent revision number of the underwriting result
ApplicantUwResultInfo

Reference information for an applicant’s underwriting result

FieldTypeDescription
idIDUnderwriting result ID
revisionIntCurrent revision number of the underwriting result
JointUwApplicantInfo
FieldTypeDescription
applicantContactInfoApplicantContactInfoApplicant’s contact information
coApplicantContactInfoApplicantContactInfoCo-applicant’s contact information
ApplicantContactInfo
FieldTypeDescription
employerNameStringApplicant employer name
isMarriedToCoApplicantBooleanTrue/False flag to identify if the applicant is married to the co-applicant
homeAddressStringApplicant home address.
applicantStateString!Applicant state.
ssnStringApplicant SSN.
dobStringApplicant date of birth.
phoneStringApplicant phone number.
cellPhoneStringApplicant cell phone number.
firstNameStringApplicant first name.
lastNameStringApplicant last name.
jobTitleStringApplicant job title.
emailStringApplicant email.
hardshipStringApplicant hardship reason.
filedBankruptcyStringHas the applicant filed bankruptcy.
routingNumberStringApplicant routing number.
bankNameStringApplicant bank name.
bankAccountNumberStringApplicant bank account number.
bankAccountHolderNameStringApplicant bank account holder name.
bankAccountTypeStringApplicant bank account type.
eligibilityReqMilitaryStringApplicant eligibility requirement for military.
eligibilityReqCreditCounsellingStringApplicant eligibility requirement for credit counselling.
eligibilityReqBankruptcyStringApplicant eligibility requirement for bankruptcy.
eligibilityReqFederalGovDebtStringApplicant eligibility requirement for federal government debt.
eligibilityReqSecuredDebtStringApplicant eligibility requirement for secured debt.
belongsToCompanyIdStringThe Forth Pay company ID that the applicant belongs to.
ApplicantContactInfo
FieldTypeDescription
employerNameStringApplicant employer name
isMarriedToCoApplicantBooleanTrue/False flag to identify if the applicant is married to the co-applicant
homeAddressStringApplicant home address.
applicantStateString!Applicant state.
ssnStringApplicant SSN.
dobStringApplicant date of birth.
phoneStringApplicant phone number.
cellPhoneStringApplicant cell phone number.
firstNameStringApplicant first name.
lastNameStringApplicant last name.
jobTitleStringApplicant job title.
emailStringApplicant email.
hardshipStringApplicant hardship reason.
filedBankruptcyStringHas the applicant filed bankruptcy.
routingNumberStringApplicant routing number.
bankNameStringApplicant bank name.
bankAccountNumberStringApplicant bank account number.
bankAccountHolderNameStringApplicant bank account holder name.
bankAccountTypeStringApplicant bank account type.
eligibilityReqMilitaryStringApplicant eligibility requirement for military.
eligibilityReqCreditCounsellingStringApplicant eligibility requirement for credit counselling.
eligibilityReqBankruptcyStringApplicant eligibility requirement for bankruptcy.
eligibilityReqFederalGovDebtStringApplicant eligibility requirement for federal government debt.
eligibilityReqSecuredDebtStringApplicant eligibility requirement for secured debt.
belongsToCompanyIdStringThe Forth Pay company ID that the applicant belongs to.
UwResultDebt

Debt information with underwriting check results

FieldTypeDescription
idID!Unique identifier for the debt
applicantIdStringPrimary applicant ID
coApplicantIdStringSecondary applicant ID, if applicable (For JOINT application only)
externalDebtIdIDThis is replaced by accountNumber @deprecated Use accountNumber instead
accountNumberStringDebt account number
externalCrmIdStringOptional field to identify the debt in the requesting CRM
isSelectedBoolean!True/False flag to identify if this debt is selected for program enrollment
coApplicantIsSelectedBooleanOnly applicable to JOINT debt. True/False flag to identify if this debt is selected by the co-applicant
eligibilityStatusEligibilityStatus!Identify the eligibility status
isOverriddenBooleanTrue/False flag to identify if the eligiblity status is being overriden
exceptions[String]List of reasons the eligibility status is being overridden
history[UwResultDebtHistory]History of all the updates made to this debt
sourceString!Source of the debt entry can be MANUAL or CREDIT_REPORT
creditorNameStringcreditor name
parentCreditorNameStringParent creditor name
parentCreditorIdStringParent creditor ID
originalCreditorNameStringOriginal creditor name
creditorIdIDCreditor ID from Forth
creditorTypeStringcreditor type
ecoaCodeStringECOA Code
accountTypeStringAccount type
portfolioTypeStringPortfolio type
debtTypeStringDebt type
openDateStringDate debt was opened
lastPaymentDateStringDate of the last payment
hasLastPaymentBooleanTrue/False flag to identify if last payment was amde
narrativeCodes[String]Narrative codes that might include bankcruptcy codes
bankruptcyDateFiledStringBankruptcy Record Date. This come from the credit report and does not need to be updated.
currentBalanceFloatCurrent debt balance
originalBalanceFloatOriginal debt balance
nawSignedDateDateOnly applicable to JOINT debt. The date when the non-applicant waiver has been signed.
nawUrlStringOnly applicable to JOINT debt. The url to the non-applicant waiver document’s file
hasProofOfLiabilityBooleanHas provided proof of liability
forthDebtTypeIdStringForth Debt Type ID
remarks[String]Remarks
isCollectionBooleanFlag to show if the debt is in collection
approvedAccountTypeCheckBooleanTrue/False flag to identify if this underwriting check passed
unacceptableCreditorCheckBooleanTrue/False flag to identify if this underwriting check passed
creditUnionAndStateCheckBooleanTrue/False flag to identify if this underwriting check passed
debtOwnershipCheckBooleanTrue/False flag to identify if this underwriting check passed
minimumDebtValueCheckBooleanTrue/False flag to identify if this underwriting check passed
duplicateDebtsCheckBooleanTrue/False flag to identify if this debt is selected and a duplicate debt
multipleCreditUnionCheckBooleanTrue/False flag to identify if this underwriting check passed
paymentHistoryCheckBooleanTrue/False flag to identify if this underwriting check passed
unsecuredDebtCheckBooleanTrue/False flag to identify if this underwriting check passed
bankruptcyCheckBooleanTrue/False flag to identify if this underwriting check passed
employerIsCreditorCheckBooleanTrue/False flag to identify if the creditor is the same as employer
standaloneDebtsCheckBooleanTrue/False flag to identify if the creditor is a standalone debt
coApplicantCheckBooleanOnly applicable to JOINT debt. True/False flag to identify if this underwriting check passed
currAndOgBalanceCheckBooleanCurrent and original balance check
proofOfLiabilityCheckBooleanProof of liability
delinquencyStringaccount rating /delinquency value
monthlyPaymentFloatMonthly payment
notes[String]Debt Notes
UwResultDebtHistory

Historical record of changes made to a debt

FieldTypeDescription
isSelectedBooleanWhether the debt was selected for enrollment at this revision
coApplicantIsSelectedBooleanWhether the co-applicant had selected this debt at this revision
exceptions[String]Exceptions applied to the debt at this revision
sourceStringSource of the debt (MANUAL or CREDIT_REPORT)
creditorNameStringCreditor name at this revision
originalCreditorNameStringOriginal creditor name at this revision
creditorTypeStringCreditor type at this revision
ecoaCodeStringECOA code at this revision
accountTypeStringAccount type at this revision
portfolioTypeStringPortfolio type at this revision
debtTypeStringDebt type at this revision
openDateStringOpen date at this revision
lastPaymentDateStringLast payment date at this revision
hasLastPaymentBooleanWhether last payment was made at this revision
currentBalanceFloatCurrent balance at this revision
originalBalanceFloatOriginal balance at this revision
narrativeCodes[String]Narrative codes at this revision
bankruptcyDateFiledStringBankruptcy date filed at this revision
nawSignedDateDateNon-applicant waiver signed date at this revision
nawUrlStringNon-applicant waiver URL at this revision
hasProofOfLiabilityBooleanWhether proof of liability was provided at this revision
isCollectionBooleanWhether the debt was in collection at this revision
remarks[String]Remarks at this revision
monthlyPaymentFloatMonthly payment at this revision
updatedByIDUser ID who made this update
fromRevisionIntThe revision number this history entry was created from
JointUwResultHistory

Historical record of changes made to a joint underwriting result

FieldTypeDescription
applicantInfoJointUwApplicantInfoApplicant information at this revision
leadIdStringLead ID at this revision
updatedByIDUser ID who made this update
fromRevisionIntThe revision number this history entry was created from
JointUwApplicantInfo
FieldTypeDescription
applicantContactInfoApplicantContactInfoApplicant’s contact information
coApplicantContactInfoApplicantContactInfoCo-applicant’s contact information
ApplicantContactInfo
FieldTypeDescription
employerNameStringApplicant employer name
isMarriedToCoApplicantBooleanTrue/False flag to identify if the applicant is married to the co-applicant
homeAddressStringApplicant home address.
applicantStateString!Applicant state.
ssnStringApplicant SSN.
dobStringApplicant date of birth.
phoneStringApplicant phone number.
cellPhoneStringApplicant cell phone number.
firstNameStringApplicant first name.
lastNameStringApplicant last name.
jobTitleStringApplicant job title.
emailStringApplicant email.
hardshipStringApplicant hardship reason.
filedBankruptcyStringHas the applicant filed bankruptcy.
routingNumberStringApplicant routing number.
bankNameStringApplicant bank name.
bankAccountNumberStringApplicant bank account number.
bankAccountHolderNameStringApplicant bank account holder name.
bankAccountTypeStringApplicant bank account type.
eligibilityReqMilitaryStringApplicant eligibility requirement for military.
eligibilityReqCreditCounsellingStringApplicant eligibility requirement for credit counselling.
eligibilityReqBankruptcyStringApplicant eligibility requirement for bankruptcy.
eligibilityReqFederalGovDebtStringApplicant eligibility requirement for federal government debt.
eligibilityReqSecuredDebtStringApplicant eligibility requirement for secured debt.
belongsToCompanyIdStringThe Forth Pay company ID that the applicant belongs to.
ApplicantContactInfo
FieldTypeDescription
employerNameStringApplicant employer name
isMarriedToCoApplicantBooleanTrue/False flag to identify if the applicant is married to the co-applicant
homeAddressStringApplicant home address.
applicantStateString!Applicant state.
ssnStringApplicant SSN.
dobStringApplicant date of birth.
phoneStringApplicant phone number.
cellPhoneStringApplicant cell phone number.
firstNameStringApplicant first name.
lastNameStringApplicant last name.
jobTitleStringApplicant job title.
emailStringApplicant email.
hardshipStringApplicant hardship reason.
filedBankruptcyStringHas the applicant filed bankruptcy.
routingNumberStringApplicant routing number.
bankNameStringApplicant bank name.
bankAccountNumberStringApplicant bank account number.
bankAccountHolderNameStringApplicant bank account holder name.
bankAccountTypeStringApplicant bank account type.
eligibilityReqMilitaryStringApplicant eligibility requirement for military.
eligibilityReqCreditCounsellingStringApplicant eligibility requirement for credit counselling.
eligibilityReqBankruptcyStringApplicant eligibility requirement for bankruptcy.
eligibilityReqFederalGovDebtStringApplicant eligibility requirement for federal government debt.
eligibilityReqSecuredDebtStringApplicant eligibility requirement for secured debt.
belongsToCompanyIdStringThe Forth Pay company ID that the applicant belongs to.
TradelineMetadata
FieldTypeDescription
enrolledUpstartDebtAccountNumbers[String]List of externalDebtsId’s that belong to selected Upstart debts, if empty then none
enrolledCapitalOneDebtAccountNumbers[String]List of externalDebtsId’s that belong to selected Catipal One debts, if empty then none
enrolledDiscoverDebtAccountNumbers[String]List of externalDebtsId’s that belong to selected Discover debts, if empty then none

EligibilityResponseError

Includes a list of reasons why the underwriting did not pass

Possible reason are Ineligible, Condition, and Update Needed.

If an error does not include a debtId then it is an application level error.

FieldTypeDescription
debtIdStringThe debtId of the debt that caused the error.
filterNameStringThe name of the underwriting check that caused the error.
message[String]The list of reasons why the underwriting check did not pass.

Additional Enums

EligibilityStatus

Eligibility status for a debt

ValueDescription
ELIGIBLEDebt meets all underwriting criteria and can be enrolled
INELIGIBLEDebt does not meet underwriting criteria and cannot be enrolled
CONDITIONALDebt requires additional conditions to be met before enrollment
UPDATE_NEEDEDDebt requires additional information to determine eligibility
UNABLE_TO_PROCESSUnable to process the debt eligibility check

Error Types

The response may include the following error types:

EligibilityResponseError

Includes a list of reasons why the underwriting did not pass

Possible reason are Ineligible, Condition, and Update Needed.

If an error does not include a debtId then it is an application level error.

FieldTypeDescription
debtIdStringThe debtId of the debt that caused the error.
filterNameStringThe name of the underwriting check that caused the error.
message[String]The list of reasons why the underwriting check did not pass.

Common Errors

Error CodeDescriptionResolution
VALIDATION_ERRORInput validation failedCheck required fields and formats
UNAUTHORIZEDInvalid or expired tokenRe-authenticate and retry
NOT_FOUNDResource not foundVerify the ID or reference