Skip to content

normalizeRawReport

Mutation

Input: Intake a raw credit report data from supported vendors (CRS, Spinwheel) Output: Normalized credit report and creditReportId required for underwriting.

Mutation Signature

mutation {
normalizeRawReport(input: NormalizeRawReportInput!): NormalizeRawReportResponse!
}

Example Request

mutation NormalizeRawReport($input: NormalizeRawReportInput!) {
normalizeRawReport(input: $input) {
# Add fields you want to retrieve
}
}

Example Variables:

{
"input": {
"reqOrgContactId": "contact-12345",
"reportType": "CRS_EQUIFAX",
"reportJson": {
"note": "This would be the raw vendor JSON response"
},
"reportRequestedAt": "2025-01-15",
"pdfBase64": "<base64-encoded-pdf-string>",
"leadId": "lead-67890"
}
}

Example Response

{
"data": {
"normalizeRawReport": {
"data": {
"creditReportId": "cr-normalized-789",
"reqOrgContactId": "contact-12345",
"applicantResidenceState": "TX",
"debts": [
{
"id": "debt-001",
"creditorName": "Discover",
"accountNumber": "****9012",
"currentBalance": 8750,
"originalBalance": 10000,
"accountType": "CREDIT_CARD",
"portfolioType": "REVOLVING",
"ecoaCode": "I",
"isCollection": false
}
]
},
"errors": null
}
}
}

Arguments

ArgumentTypeDescription
inputNormalizeRawReportInput!Input containing the raw credit report data and metadata for normalization

Input Types

NormalizeRawReportInput

Required Fields:

FieldTypeDescription
reqOrgContactIdString!Requesting organization contact ID
reportTypeSUPPORTED_REPORT_PRODUCTS!Supported credit report products. ** Note when using SPINWHEEL ** - We normalize credit reports from the user object in spinwheel - reportJson must be a response from https://docs.spinwheel.io/refe
reportJsonJSON!Direct JSON object containing the raw credit report response from the vendor.

Optional Fields:

FieldTypeDescription
reqOrgSecondaryContactIdStringRequesting organization co-contact ID
reportRequestedAtStringOptional override for the report requested date. Format: YYYY-MM-DD Only required for CRS reports (CRS_TRANSUNION, CRS_EQUIFAX) where the raw data does not include this field. Used to support downs…
pdfBase64StringOptional base64 encoded PDF string of the credit report.
leadIdStringOptional lead ID to associate with the credit report.

Response Type

Returns: NormalizeRawReportResponse!

NormalizeRawReportResponse

FieldTypeDescription
dataNormalizeRawReportResponseResultNormalized Credit Report
errors[NormalizeRawReportResponseError]List of error messages

NormalizeRawReportResponseResult

normalizeRawReport Success Response

FieldTypeDescription
creditReportIdStringCredit report ID
secondaryCreditReportIdStringSecondary Credit report ID
reqOrgContactIdString!Requesting organization contact ID
applicantResidenceStateStringState where customer resides
debts[CreditReportDebt]List of debts
CreditReportDebt

Credit Report Debt

FieldTypeDescription
idID!Debt ID
creditorIdStringcreditor ID
externalDebtIdStringThis is replaced by accountNumber @deprecated Use accountNumber instead
accountNumberStringOriginal credit report account number
applicantStateStringApplicants state of residence.
ecoaCodeStringECOA code
creditorNameStringCreditor name from credit report
parentCreditorNameStringParent creditor name
parentCreditorIdStringParent creditor ID
originalCreditorNameStringOriginal creditor name from credit report
creditorTypeStringCreditor type
accountTypeStringAccount type
portfolioTypeStringPortfolio type
debtTypeStringDebt type
currentBalanceFloatCurrent debt balance
openDateStringDate the debt was opened
lastPaymentDateStringDate of last payment
hasLastPaymentBooleanTrue if the most recent payment has been made as of the date this credit report was pulled
narrativeCodes[String]Narrative codes that might include bankruptcy codes
bankruptcyDateFiledStringBankruptcy date filed
applicantIdStringApplicant Id
coApplicantIdStringCoApplicant Id
originalBalanceFloatOriginal debt balance
isCollectionBooleanFlag to show if the debt is in collection
delinquencyStringaccount rating /delinquency value
monthlyPaymentFloatMonthly payment
forthDebtTypeIdStringForth Debt Type ID
remarks[String]Remarks

NormalizeRawReportResponseError

normalizeRawReport Error Response

FieldTypeDescription
messageStringError message

Additional Enums

SUPPORTED_REPORT_PRODUCTS

Supported report types for normalizing raw credit report data

ValueDescription
CRS_TRANSUNIONProduct: basic/tu-prequal-vantage4 | Data Provider: CRS
CRS_EQUIFAXProduct: efx-prequal-vantage4 | Data Provider: CRS
SPINWHEELProduct: EquifaxVantageScore3.0 | Data Provider: Spinwheel
ARRAY_EQUIFAXProduct: efx1bReportScore | Data Provider: Array
CRS_STANDARD_PREQUAL_VANTAGE4Product: standard/prequal-vantage4 | Data Provider: CRS
FORTH_API_MISMO_2_3_1Product: MISMO 2.3.1 | Data Provider: Forth API

Error Types

The response may include the following error types:

NormalizeRawReportResponseError

normalizeRawReport Error Response

FieldTypeDescription
messageStringError message

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