> For the complete documentation index, see [llms.txt](https://docs.payscore.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.payscore.com/api-reference/models.md).

# Models

## The ApplicantGroup object

```json
{"openapi":"3.0.3","info":{"title":"PayScore API","version":"1.0.0"},"components":{"schemas":{"ApplicantGroup":{"type":"object","description":"An applicant group represents a verification request for multiple applicants","properties":{"id":{"type":"string","format":"uuid","description":"Unique identifier for the applicant group"},"decision_maker_display_name":{"type":"string","description":"Display name for the decision maker"},"property":{"type":"object","description":"Property information where applicants will be residing","properties":{"id":{"type":"string","format":"uuid","description":"Property unique identifier"},"name":{"type":"string","description":"Property name"},"street_address":{"type":"string","description":"Property street address"},"city":{"type":"string","description":"Property city"},"state":{"type":"string","description":"Property state"},"zip_code":{"type":"string","description":"Property ZIP code"}}},"status":{"type":"string","description":"Current status of the applicant group","enum":["not_started","in_progress","completed"]},"created_at_timestamp":{"type":"number","format":"float","description":"Unix timestamp when the applicant group was created"},"monthly_rent_cents":{"type":"integer","description":"Monthly rent amount in cents"},"unit_number":{"type":"string","description":"Unit number or identifier"},"unit_id":{"type":"string","format":"uuid","description":"Unique identifier for the unit","nullable":true},"is_free":{"type":"boolean","description":"Whether this is a free verification"},"is_decision_maker_paying":{"type":"boolean","description":"Whether the decision maker is paying for the verification"},"correlation_id":{"type":"string","description":"External system correlation identifier","nullable":true},"verification_types":{"type":"array","description":"List of unique verification types across all applicants in this group","items":{"type":"string","enum":["asset_verification","identity_verification","payroll_income_verification","bank_income_verification","flexible_income_verification","document_income_verification"]}},"is_expired":{"type":"boolean","description":"Whether the applicant group has expired"},"applicants":{"type":"array","description":"List of applicants in this group","items":{"$ref":"#/components/schemas/Applicant"}}}},"Applicant":{"type":"object","description":"An individual applicant within an applicant group","properties":{"id":{"type":"string","format":"uuid","description":"Unique identifier for the applicant"},"first_name":{"type":"string","description":"Applicant's first name"},"last_name":{"type":"string","description":"Applicant's last name"},"email":{"type":"string","format":"email","description":"Applicant's email address"},"phone_number":{"type":"string","description":"Applicant's phone number"},"created_at":{"type":"string","format":"date-time","description":"When the applicant was created"},"updated_at":{"type":"string","format":"date-time","description":"When the applicant was last updated"},"verifications":{"type":"array","description":"List of verifications assigned to this applicant. Note - This field is only included in detail view on create, not in list views (e.g., when fetching multiple applicant groups).","items":{"$ref":"#/components/schemas/Verification"}}}},"Verification":{"type":"object","description":"A verification assigned to an applicant","properties":{"id":{"type":"string","format":"uuid","description":"Unique identifier for the verification"},"type":{"type":"string","enum":["asset_verification","identity_verification","payroll_income_verification","bank_income_verification","flexible_income_verification","document_income_verification"],"description":"Type of verification"},"status":{"type":"string","description":"Current status of the verification","enum":["not_started","in_progress","completed"]}}}}}}
```

## The Applicant object

```json
{"openapi":"3.0.3","info":{"title":"PayScore API","version":"1.0.0"},"components":{"schemas":{"Applicant":{"type":"object","description":"An individual applicant within an applicant group","properties":{"id":{"type":"string","format":"uuid","description":"Unique identifier for the applicant"},"first_name":{"type":"string","description":"Applicant's first name"},"last_name":{"type":"string","description":"Applicant's last name"},"email":{"type":"string","format":"email","description":"Applicant's email address"},"phone_number":{"type":"string","description":"Applicant's phone number"},"created_at":{"type":"string","format":"date-time","description":"When the applicant was created"},"updated_at":{"type":"string","format":"date-time","description":"When the applicant was last updated"},"verifications":{"type":"array","description":"List of verifications assigned to this applicant. Note - This field is only included in detail view on create, not in list views (e.g., when fetching multiple applicant groups).","items":{"$ref":"#/components/schemas/Verification"}}}},"Verification":{"type":"object","description":"A verification assigned to an applicant","properties":{"id":{"type":"string","format":"uuid","description":"Unique identifier for the verification"},"type":{"type":"string","enum":["asset_verification","identity_verification","payroll_income_verification","bank_income_verification","flexible_income_verification","document_income_verification"],"description":"Type of verification"},"status":{"type":"string","description":"Current status of the verification","enum":["not_started","in_progress","completed"]}}}}}}
```

## The Verification object

```json
{"openapi":"3.0.3","info":{"title":"PayScore API","version":"1.0.0"},"components":{"schemas":{"Verification":{"type":"object","description":"A verification assigned to an applicant","properties":{"id":{"type":"string","format":"uuid","description":"Unique identifier for the verification"},"type":{"type":"string","enum":["asset_verification","identity_verification","payroll_income_verification","bank_income_verification","flexible_income_verification","document_income_verification"],"description":"Type of verification"},"status":{"type":"string","description":"Current status of the verification","enum":["not_started","in_progress","completed"]}}}}}}
```

## The Report object

```json
{"openapi":"3.0.3","info":{"title":"PayScore API","version":"1.0.0"},"components":{"schemas":{"Report":{"type":"object","description":"A report generated from a completed verification","properties":{"id":{"type":"string","format":"uuid","description":"Unique identifier for the report"},"report_name":{"type":"string","enum":["Income","Identity","Asset"],"description":"Name of the report"},"is_expired":{"type":"boolean","description":"Whether the report data has expired and is no longer available"},"created_at":{"type":"string","format":"date-time","description":"When the report was created"},"applicant_group_id":{"type":"string","format":"uuid","description":"Unique identifier for the applicant group this report belongs to (only present for household reports, not individual reports)"},"applicant_id":{"type":"string","format":"uuid","description":"Unique identifier for the individual applicant (only present for individual reports, not household reports)","nullable":true},"path":{"type":"string","description":"URL path to view the pdf"}}}}}}
```

## The ReportDataResponse object

```json
{"openapi":"3.0.3","info":{"title":"PayScore API","version":"1.0.0"},"components":{"schemas":{"ReportDataResponse":{"type":"object","description":"Wrapper response containing report data that varies by report type, including PDF download URL","required":["report_id","report_type","applicant_group_id","pdf_url","data"],"properties":{"report_id":{"type":"string","format":"uuid","description":"Unique identifier for the report"},"report_type":{"type":"string","enum":["income","identity"],"description":"Type of report data contained in this response"},"applicant_group_id":{"type":"string","format":"uuid","description":"Unique identifier for the applicant group this report belongs to"},"applicant_id":{"type":"string","format":"uuid","description":"Unique identifier for the individual applicant (only present for individual reports, not household reports)"},"pdf_url":{"type":"string","format":"uri","description":"Secure URL to download the PDF report (expires in 2 hours)"},"data":{"oneOf":[{"$ref":"#/components/schemas/IncomeReportData"},{"$ref":"#/components/schemas/IdentityReportData"}],"discriminator":{"propertyName":"report_type","mapping":{"income":"#/components/schemas/IncomeReportData","identity":"#/components/schemas/IdentityReportData"}}}}},"IncomeReportData":{"description":"Income report data — either a household (combined) report or an individual applicant report","oneOf":[{"$ref":"#/components/schemas/HouseholdIncomeReport"},{"$ref":"#/components/schemas/IndividualIncomeReport"}]},"HouseholdIncomeReport":{"type":"object","description":"Combined income report aggregating data across all applicants in the group. Contains a reports array with each applicant's individual sub-report.","properties":{"reports":{"type":"array","description":"Individual income sub-reports for each applicant in the group","items":{"$ref":"#/components/schemas/ApplicantIncomeSubReport"}},"recurring":{"$ref":"#/components/schemas/RecurringIncomeData"},"non_recurring":{"$ref":"#/components/schemas/NonRecurringIncomeData"},"summary_timespan_length":{"type":"integer","description":"Minimum data timespan across all applicants, in days"},"criteria_rule_results":{"type":"array","nullable":true,"description":"Results of income criteria rule evaluations","items":{"$ref":"#/components/schemas/IncomeCriteriaResult"}},"applicant_group_id":{"type":"string","format":"uuid","description":"Unique identifier for the applicant group"},"property_name":{"type":"string","nullable":true,"description":"Property name associated with the application"},"property_monthly_rent_cents":{"type":"integer","nullable":true,"description":"Property monthly rent in cents"},"created_at":{"type":"string","format":"date-time","description":"When the report was created"},"uploaded_documents":{"type":"array","nullable":true,"description":"Documents uploaded across all applicants for verification","items":{"$ref":"#/components/schemas/UploadedDocument"}}}},"ApplicantIncomeSubReport":{"type":"object","description":"An individual applicant's income data nested within a HouseholdIncomeReport. Contains richer per-applicant detail than the top-level individual report.","properties":{"verification_id":{"type":"string","format":"uuid","description":"Unique identifier for the applicant's income verification"},"identity":{"type":"object","description":"Identity information for this applicant","properties":{"full_name":{"type":"string"},"email":{"type":"string","format":"email"}}},"reason_completed":{"type":"string","nullable":true,"description":"Reason the verification was completed"},"income_sources":{"type":"array","description":"Income sources used for this applicant's verification","items":{"type":"object","properties":{"source":{"type":"string","enum":["bank","payroll","document"],"description":"Type of income source"}}}},"recurring":{"nullable":true,"allOf":[{"$ref":"#/components/schemas/RecurringIncomeData"}]},"non_recurring":{"nullable":true,"allOf":[{"$ref":"#/components/schemas/NonRecurringIncomeData"}]},"summary_timespan_length":{"type":"integer","nullable":true,"description":"Data timespan for this applicant, in days"},"bank_connections":{"type":"array","nullable":true,"description":"Income summaries for each linked bank connection (bank income source only)","items":{"$ref":"#/components/schemas/BankConnectionIncomeSummary"}},"payroll_connections":{"type":"array","nullable":true,"description":"Income summaries for each payroll connection (payroll income source only)","items":{"$ref":"#/components/schemas/PayrollConnectionIncomeSummary"}},"income_explanation":{"type":"string","nullable":true,"description":"Human-readable explanation of the income determination (bank income source only)"},"uploaded_documents":{"type":"array","nullable":true,"description":"Documents uploaded by this applicant for verification","items":{"$ref":"#/components/schemas/UploadedDocument"}}}},"RecurringIncomeData":{"type":"object","description":"Aggregated recurring income data","properties":{"total":{"type":"integer","description":"Total net recurring income in cents within the summary timespan"},"one_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net income over 1 month in cents"},"two_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net income over 2 months in cents (null if timespan < 50 days)"},"three_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net income over 3 months in cents (null if timespan < 80 days)"},"six_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net income over 6 months in cents (null if timespan < 170 days)"},"nine_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net income over 9 months in cents (null if timespan < 260 days)"},"twelve_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net income over 12 months in cents (null if timespan < 350 days)"},"income_streams":{"type":"array","description":"Individual recurring income streams contributing to this total","items":{"$ref":"#/components/schemas/IncomeStreamProperties"}}}},"IncomeStreamProperties":{"type":"object","description":"Properties of a single identified income stream","properties":{"name":{"type":"string","description":"Name of the income stream (typically the income source or employer)"},"total":{"type":"integer","description":"Total net amount for this income stream in cents"},"monthly_income":{"type":"integer","description":"Calculated monthly income for this stream in cents"},"start_date":{"type":"string","format":"date","description":"Start date of this income stream's period"},"end_date":{"type":"string","format":"date","description":"End date of this income stream's period"},"transactions":{"type":"array","description":"Individual transactions belonging to this income stream","items":{"$ref":"#/components/schemas/TransactionProperties"}},"paystubs":{"type":"array","description":"Paystub records for this income stream (populated for payroll sources)","items":{"$ref":"#/components/schemas/PaystubProperties"}},"pay_gap_after_transaction_indexes":{"type":"array","description":"Indexes of transactions after which an unusual pay gap was detected","items":{"type":"integer"}}}},"TransactionProperties":{"type":"object","description":"A single bank transaction within an income stream","properties":{"name":{"type":"string","description":"Transaction name or description"},"amount":{"type":"integer","description":"Transaction amount in cents"},"date":{"type":"string","description":"Transaction date formatted as MM/DD/YYYY"}}},"PaystubProperties":{"type":"object","description":"A single paystub within a payroll income stream","properties":{"gross_pay":{"type":"integer","nullable":true,"description":"Gross pay in cents"},"base_pay":{"type":"integer","nullable":true,"description":"Base pay in cents"},"bonus":{"type":"integer","nullable":true,"description":"Bonus amount in cents"},"commission":{"type":"integer","nullable":true,"description":"Commission amount in cents"},"tips":{"type":"integer","nullable":true,"description":"Tips amount in cents"},"overtime":{"type":"integer","nullable":true,"description":"Overtime pay in cents"},"other":{"type":"integer","nullable":true,"description":"Other pay in cents"},"net_pay":{"type":"integer","nullable":true,"description":"Net pay in cents"},"hours_worked":{"type":"number","nullable":true,"description":"Hours worked, rounded to 2 decimal places"},"pay_date":{"type":"string","description":"Pay date (pretty formatted)"},"start_date":{"type":"string","description":"Pay period start date (pretty formatted)"},"end_date":{"type":"string","description":"Pay period end date (pretty formatted)"}}},"NonRecurringIncomeData":{"type":"object","description":"Aggregated non-recurring income data (no gross estimates)","properties":{"total":{"type":"integer","description":"Total net non-recurring income in cents within the summary timespan"},"one_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net non-recurring income over 1 month in cents"},"two_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net non-recurring income over 2 months in cents"},"three_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net non-recurring income over 3 months in cents"},"six_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net non-recurring income over 6 months in cents"},"nine_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net non-recurring income over 9 months in cents"},"twelve_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net non-recurring income over 12 months in cents"},"income_streams":{"type":"array","description":"Individual non-recurring income streams","items":{"$ref":"#/components/schemas/IncomeStreamProperties"}}}},"BankConnectionIncomeSummary":{"type":"object","description":"Income summary for a single linked bank connection","properties":{"institution_name":{"type":"string","description":"Name of the financial institution"},"accounts":{"type":"array","description":"Bank accounts on this connection used for income analysis","items":{"type":"object","description":"Account properties including name, holder names, type, and balances"}},"income":{"type":"object","description":"Aggregated income analysis for this bank connection","properties":{"total":{"type":"integer","description":"Total net income in cents within the summary timespan"},"two_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net income over 2 months in cents"},"three_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net income over 3 months in cents"},"six_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net income over 6 months in cents"},"nine_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net income over 9 months in cents"},"twelve_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net income over 12 months in cents"},"income_streams":{"type":"array","description":"Recurring income streams identified for this bank connection","items":{"$ref":"#/components/schemas/IncomeStreamProperties"}},"non_recurring":{"type":"object","description":"Non-recurring income for this bank connection","properties":{"total":{"type":"integer","description":"Total non-recurring income in cents"},"income_streams":{"type":"array","items":{"$ref":"#/components/schemas/IncomeStreamProperties"}}}},"start_date":{"type":"string","format":"date","description":"Earliest transaction date across all income streams"},"end_date":{"type":"string","format":"date","description":"Latest transaction date across all income streams"},"transaction_timespan_length":{"type":"integer","description":"Number of days covered by income transactions"}}}}},"PayrollConnectionIncomeSummary":{"type":"object","description":"Income summary for a single payroll connection","properties":{"employee_name":{"type":"string","nullable":true,"description":"Employee name as reported by the payroll provider"},"company_name":{"type":"string","nullable":true,"description":"Employer company name"},"institution_name":{"type":"string","nullable":true,"description":"Name of the payroll provider"},"company_address":{"type":"string","nullable":true,"description":"Employer address"},"title":{"type":"string","nullable":true,"description":"Job title"},"start_date":{"type":"string","nullable":true,"description":"Employment start date"},"end_date":{"type":"string","nullable":true,"description":"Employment end date (null if currently employed)"},"pay_frequency":{"type":"string","nullable":true,"description":"Pay frequency"},"pay_rate":{"type":"string","nullable":true,"description":"Pay rate description"},"pay_amount":{"type":"integer","nullable":true,"description":"Pay amount in cents"},"income":{"type":"object","nullable":true,"description":"Aggregated income analysis for this payroll connection","properties":{"total":{"type":"integer","description":"Total net income in cents within the summary timespan"},"two_month_avg_monthly":{"type":"integer","nullable":true},"three_month_avg_monthly":{"type":"integer","nullable":true},"six_month_avg_monthly":{"type":"integer","nullable":true},"nine_month_avg_monthly":{"type":"integer","nullable":true},"twelve_month_avg_monthly":{"type":"integer","nullable":true},"income_streams":{"type":"array","items":{"$ref":"#/components/schemas/IncomeStreamProperties"}},"start_date":{"type":"string","format":"date","description":"Earliest paystub date"},"end_date":{"type":"string","format":"date","description":"Latest paystub date"},"transaction_timespan_length":{"type":"integer","description":"Number of days covered by paystubs"}}},"is_name_mismatched":{"type":"boolean","description":"Whether the employee name on paystubs does not match the applicant name"}}},"UploadedDocument":{"type":"object","description":"A document uploaded by the applicant (bank statement or pay stub)","properties":{"name":{"type":"string","description":"Filename of the uploaded document"},"type":{"type":"string","description":"Document type"},"fraud_risk":{"type":"string","enum":["low","needs_review","high"],"description":"Overall fraud risk assessment"},"fraud_risk_score":{"type":"integer","description":"Numerical fraud risk score (0-100, higher is riskier)"},"applicant_name":{"type":"string","nullable":true,"description":"Name of the applicant who uploaded the document"},"fraud_risk_signals":{"type":"array","description":"Fraud risk signals detected in the document","items":{"type":"object","properties":{"type":{"type":"string","description":"Type of fraud signal detected"},"description":{"type":"string","nullable":true,"description":"Additional details about the fraud signal"}}}}}},"IncomeCriteriaResult":{"type":"object","description":"Result of evaluating a single income criteria rule","properties":{"result":{"type":"string","description":"Whether the applicant passed or failed this criteria"},"multiplier_result":{"type":"string","nullable":true,"description":"Income-to-rent multiplier result for this criteria"},"multiplier_threshold":{"type":"number","nullable":true,"description":"The multiplier threshold used in this criteria evaluation"},"criteria_used":{"type":"string","nullable":true,"description":"The specific income figure used for evaluation (e.g., which monthly average)"},"criteria_from_rule":{"type":"string","nullable":true,"description":"The rule that determined which income criteria to use"}}},"IndividualIncomeReport":{"type":"object","description":"Income report for a single applicant fetched directly. Has the same exposed fields as HouseholdIncomeReport but includes income_sources and no reports array.","properties":{"recurring":{"$ref":"#/components/schemas/RecurringIncomeData"},"non_recurring":{"$ref":"#/components/schemas/NonRecurringIncomeData"},"summary_timespan_length":{"type":"integer","description":"Data timespan, in days"},"criteria_rule_results":{"type":"array","nullable":true,"description":"Results of income criteria rule evaluations","items":{"$ref":"#/components/schemas/IncomeCriteriaResult"}},"income_sources":{"type":"array","description":"Income sources used for this applicant's verification","items":{"type":"object","properties":{"source":{"type":"string","enum":["bank","payroll","document"],"description":"Type of income source"}}}},"applicant_group_id":{"type":"string","format":"uuid","description":"Unique identifier for the applicant group"},"property_name":{"type":"string","nullable":true,"description":"Property name associated with the application"},"property_monthly_rent_cents":{"type":"integer","nullable":true,"description":"Property monthly rent in cents"},"created_at":{"type":"string","format":"date-time","description":"When the report was created"},"uploaded_documents":{"type":"array","nullable":true,"description":"Documents uploaded by the applicant for verification","items":{"$ref":"#/components/schemas/UploadedDocument"}}}},"IdentityReportData":{"type":"object","description":"Identity verification report data from a completed identity verification","properties":{"outcome":{"type":"string","enum":["passed","failed"],"description":"Overall outcome of the identity verification"},"verification_types":{"type":"array","description":"Types of verification performed (e.g., government_id, selfie, tin, ecbsv)","items":{"type":"string","enum":["government_id","selfie","tin","ecbsv"]}},"checks":{"type":"array","description":"Individual verification checks performed during identity verification","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Unique identifier for the verification check"},"identity_verification_id":{"type":"string","format":"uuid","description":"ID of the parent identity verification"},"name":{"type":"string","description":"Specific check name (e.g., id_entity_detection, selfie_liveness_detection)"},"verification_type":{"type":"string","enum":["government_id","selfie","tin","ecbsv"],"description":"Type of verification performed"},"status":{"type":"string","enum":["passed","failed","not_applicable"],"description":"Status of the verification check"},"reasons":{"type":"array","description":"Array of reason codes for check failure","items":{"type":"string"}},"metadata":{"type":"object","description":"Additional metadata about the check","nullable":true}}}}}}}}}
```

## The IncomeReportData object

```json
{"openapi":"3.0.3","info":{"title":"PayScore API","version":"1.0.0"},"components":{"schemas":{"IncomeReportData":{"description":"Income report data — either a household (combined) report or an individual applicant report","oneOf":[{"$ref":"#/components/schemas/HouseholdIncomeReport"},{"$ref":"#/components/schemas/IndividualIncomeReport"}]},"HouseholdIncomeReport":{"type":"object","description":"Combined income report aggregating data across all applicants in the group. Contains a reports array with each applicant's individual sub-report.","properties":{"reports":{"type":"array","description":"Individual income sub-reports for each applicant in the group","items":{"$ref":"#/components/schemas/ApplicantIncomeSubReport"}},"recurring":{"$ref":"#/components/schemas/RecurringIncomeData"},"non_recurring":{"$ref":"#/components/schemas/NonRecurringIncomeData"},"summary_timespan_length":{"type":"integer","description":"Minimum data timespan across all applicants, in days"},"criteria_rule_results":{"type":"array","nullable":true,"description":"Results of income criteria rule evaluations","items":{"$ref":"#/components/schemas/IncomeCriteriaResult"}},"applicant_group_id":{"type":"string","format":"uuid","description":"Unique identifier for the applicant group"},"property_name":{"type":"string","nullable":true,"description":"Property name associated with the application"},"property_monthly_rent_cents":{"type":"integer","nullable":true,"description":"Property monthly rent in cents"},"created_at":{"type":"string","format":"date-time","description":"When the report was created"},"uploaded_documents":{"type":"array","nullable":true,"description":"Documents uploaded across all applicants for verification","items":{"$ref":"#/components/schemas/UploadedDocument"}}}},"ApplicantIncomeSubReport":{"type":"object","description":"An individual applicant's income data nested within a HouseholdIncomeReport. Contains richer per-applicant detail than the top-level individual report.","properties":{"verification_id":{"type":"string","format":"uuid","description":"Unique identifier for the applicant's income verification"},"identity":{"type":"object","description":"Identity information for this applicant","properties":{"full_name":{"type":"string"},"email":{"type":"string","format":"email"}}},"reason_completed":{"type":"string","nullable":true,"description":"Reason the verification was completed"},"income_sources":{"type":"array","description":"Income sources used for this applicant's verification","items":{"type":"object","properties":{"source":{"type":"string","enum":["bank","payroll","document"],"description":"Type of income source"}}}},"recurring":{"nullable":true,"allOf":[{"$ref":"#/components/schemas/RecurringIncomeData"}]},"non_recurring":{"nullable":true,"allOf":[{"$ref":"#/components/schemas/NonRecurringIncomeData"}]},"summary_timespan_length":{"type":"integer","nullable":true,"description":"Data timespan for this applicant, in days"},"bank_connections":{"type":"array","nullable":true,"description":"Income summaries for each linked bank connection (bank income source only)","items":{"$ref":"#/components/schemas/BankConnectionIncomeSummary"}},"payroll_connections":{"type":"array","nullable":true,"description":"Income summaries for each payroll connection (payroll income source only)","items":{"$ref":"#/components/schemas/PayrollConnectionIncomeSummary"}},"income_explanation":{"type":"string","nullable":true,"description":"Human-readable explanation of the income determination (bank income source only)"},"uploaded_documents":{"type":"array","nullable":true,"description":"Documents uploaded by this applicant for verification","items":{"$ref":"#/components/schemas/UploadedDocument"}}}},"RecurringIncomeData":{"type":"object","description":"Aggregated recurring income data","properties":{"total":{"type":"integer","description":"Total net recurring income in cents within the summary timespan"},"one_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net income over 1 month in cents"},"two_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net income over 2 months in cents (null if timespan < 50 days)"},"three_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net income over 3 months in cents (null if timespan < 80 days)"},"six_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net income over 6 months in cents (null if timespan < 170 days)"},"nine_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net income over 9 months in cents (null if timespan < 260 days)"},"twelve_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net income over 12 months in cents (null if timespan < 350 days)"},"income_streams":{"type":"array","description":"Individual recurring income streams contributing to this total","items":{"$ref":"#/components/schemas/IncomeStreamProperties"}}}},"IncomeStreamProperties":{"type":"object","description":"Properties of a single identified income stream","properties":{"name":{"type":"string","description":"Name of the income stream (typically the income source or employer)"},"total":{"type":"integer","description":"Total net amount for this income stream in cents"},"monthly_income":{"type":"integer","description":"Calculated monthly income for this stream in cents"},"start_date":{"type":"string","format":"date","description":"Start date of this income stream's period"},"end_date":{"type":"string","format":"date","description":"End date of this income stream's period"},"transactions":{"type":"array","description":"Individual transactions belonging to this income stream","items":{"$ref":"#/components/schemas/TransactionProperties"}},"paystubs":{"type":"array","description":"Paystub records for this income stream (populated for payroll sources)","items":{"$ref":"#/components/schemas/PaystubProperties"}},"pay_gap_after_transaction_indexes":{"type":"array","description":"Indexes of transactions after which an unusual pay gap was detected","items":{"type":"integer"}}}},"TransactionProperties":{"type":"object","description":"A single bank transaction within an income stream","properties":{"name":{"type":"string","description":"Transaction name or description"},"amount":{"type":"integer","description":"Transaction amount in cents"},"date":{"type":"string","description":"Transaction date formatted as MM/DD/YYYY"}}},"PaystubProperties":{"type":"object","description":"A single paystub within a payroll income stream","properties":{"gross_pay":{"type":"integer","nullable":true,"description":"Gross pay in cents"},"base_pay":{"type":"integer","nullable":true,"description":"Base pay in cents"},"bonus":{"type":"integer","nullable":true,"description":"Bonus amount in cents"},"commission":{"type":"integer","nullable":true,"description":"Commission amount in cents"},"tips":{"type":"integer","nullable":true,"description":"Tips amount in cents"},"overtime":{"type":"integer","nullable":true,"description":"Overtime pay in cents"},"other":{"type":"integer","nullable":true,"description":"Other pay in cents"},"net_pay":{"type":"integer","nullable":true,"description":"Net pay in cents"},"hours_worked":{"type":"number","nullable":true,"description":"Hours worked, rounded to 2 decimal places"},"pay_date":{"type":"string","description":"Pay date (pretty formatted)"},"start_date":{"type":"string","description":"Pay period start date (pretty formatted)"},"end_date":{"type":"string","description":"Pay period end date (pretty formatted)"}}},"NonRecurringIncomeData":{"type":"object","description":"Aggregated non-recurring income data (no gross estimates)","properties":{"total":{"type":"integer","description":"Total net non-recurring income in cents within the summary timespan"},"one_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net non-recurring income over 1 month in cents"},"two_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net non-recurring income over 2 months in cents"},"three_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net non-recurring income over 3 months in cents"},"six_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net non-recurring income over 6 months in cents"},"nine_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net non-recurring income over 9 months in cents"},"twelve_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net non-recurring income over 12 months in cents"},"income_streams":{"type":"array","description":"Individual non-recurring income streams","items":{"$ref":"#/components/schemas/IncomeStreamProperties"}}}},"BankConnectionIncomeSummary":{"type":"object","description":"Income summary for a single linked bank connection","properties":{"institution_name":{"type":"string","description":"Name of the financial institution"},"accounts":{"type":"array","description":"Bank accounts on this connection used for income analysis","items":{"type":"object","description":"Account properties including name, holder names, type, and balances"}},"income":{"type":"object","description":"Aggregated income analysis for this bank connection","properties":{"total":{"type":"integer","description":"Total net income in cents within the summary timespan"},"two_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net income over 2 months in cents"},"three_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net income over 3 months in cents"},"six_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net income over 6 months in cents"},"nine_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net income over 9 months in cents"},"twelve_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net income over 12 months in cents"},"income_streams":{"type":"array","description":"Recurring income streams identified for this bank connection","items":{"$ref":"#/components/schemas/IncomeStreamProperties"}},"non_recurring":{"type":"object","description":"Non-recurring income for this bank connection","properties":{"total":{"type":"integer","description":"Total non-recurring income in cents"},"income_streams":{"type":"array","items":{"$ref":"#/components/schemas/IncomeStreamProperties"}}}},"start_date":{"type":"string","format":"date","description":"Earliest transaction date across all income streams"},"end_date":{"type":"string","format":"date","description":"Latest transaction date across all income streams"},"transaction_timespan_length":{"type":"integer","description":"Number of days covered by income transactions"}}}}},"PayrollConnectionIncomeSummary":{"type":"object","description":"Income summary for a single payroll connection","properties":{"employee_name":{"type":"string","nullable":true,"description":"Employee name as reported by the payroll provider"},"company_name":{"type":"string","nullable":true,"description":"Employer company name"},"institution_name":{"type":"string","nullable":true,"description":"Name of the payroll provider"},"company_address":{"type":"string","nullable":true,"description":"Employer address"},"title":{"type":"string","nullable":true,"description":"Job title"},"start_date":{"type":"string","nullable":true,"description":"Employment start date"},"end_date":{"type":"string","nullable":true,"description":"Employment end date (null if currently employed)"},"pay_frequency":{"type":"string","nullable":true,"description":"Pay frequency"},"pay_rate":{"type":"string","nullable":true,"description":"Pay rate description"},"pay_amount":{"type":"integer","nullable":true,"description":"Pay amount in cents"},"income":{"type":"object","nullable":true,"description":"Aggregated income analysis for this payroll connection","properties":{"total":{"type":"integer","description":"Total net income in cents within the summary timespan"},"two_month_avg_monthly":{"type":"integer","nullable":true},"three_month_avg_monthly":{"type":"integer","nullable":true},"six_month_avg_monthly":{"type":"integer","nullable":true},"nine_month_avg_monthly":{"type":"integer","nullable":true},"twelve_month_avg_monthly":{"type":"integer","nullable":true},"income_streams":{"type":"array","items":{"$ref":"#/components/schemas/IncomeStreamProperties"}},"start_date":{"type":"string","format":"date","description":"Earliest paystub date"},"end_date":{"type":"string","format":"date","description":"Latest paystub date"},"transaction_timespan_length":{"type":"integer","description":"Number of days covered by paystubs"}}},"is_name_mismatched":{"type":"boolean","description":"Whether the employee name on paystubs does not match the applicant name"}}},"UploadedDocument":{"type":"object","description":"A document uploaded by the applicant (bank statement or pay stub)","properties":{"name":{"type":"string","description":"Filename of the uploaded document"},"type":{"type":"string","description":"Document type"},"fraud_risk":{"type":"string","enum":["low","needs_review","high"],"description":"Overall fraud risk assessment"},"fraud_risk_score":{"type":"integer","description":"Numerical fraud risk score (0-100, higher is riskier)"},"applicant_name":{"type":"string","nullable":true,"description":"Name of the applicant who uploaded the document"},"fraud_risk_signals":{"type":"array","description":"Fraud risk signals detected in the document","items":{"type":"object","properties":{"type":{"type":"string","description":"Type of fraud signal detected"},"description":{"type":"string","nullable":true,"description":"Additional details about the fraud signal"}}}}}},"IncomeCriteriaResult":{"type":"object","description":"Result of evaluating a single income criteria rule","properties":{"result":{"type":"string","description":"Whether the applicant passed or failed this criteria"},"multiplier_result":{"type":"string","nullable":true,"description":"Income-to-rent multiplier result for this criteria"},"multiplier_threshold":{"type":"number","nullable":true,"description":"The multiplier threshold used in this criteria evaluation"},"criteria_used":{"type":"string","nullable":true,"description":"The specific income figure used for evaluation (e.g., which monthly average)"},"criteria_from_rule":{"type":"string","nullable":true,"description":"The rule that determined which income criteria to use"}}},"IndividualIncomeReport":{"type":"object","description":"Income report for a single applicant fetched directly. Has the same exposed fields as HouseholdIncomeReport but includes income_sources and no reports array.","properties":{"recurring":{"$ref":"#/components/schemas/RecurringIncomeData"},"non_recurring":{"$ref":"#/components/schemas/NonRecurringIncomeData"},"summary_timespan_length":{"type":"integer","description":"Data timespan, in days"},"criteria_rule_results":{"type":"array","nullable":true,"description":"Results of income criteria rule evaluations","items":{"$ref":"#/components/schemas/IncomeCriteriaResult"}},"income_sources":{"type":"array","description":"Income sources used for this applicant's verification","items":{"type":"object","properties":{"source":{"type":"string","enum":["bank","payroll","document"],"description":"Type of income source"}}}},"applicant_group_id":{"type":"string","format":"uuid","description":"Unique identifier for the applicant group"},"property_name":{"type":"string","nullable":true,"description":"Property name associated with the application"},"property_monthly_rent_cents":{"type":"integer","nullable":true,"description":"Property monthly rent in cents"},"created_at":{"type":"string","format":"date-time","description":"When the report was created"},"uploaded_documents":{"type":"array","nullable":true,"description":"Documents uploaded by the applicant for verification","items":{"$ref":"#/components/schemas/UploadedDocument"}}}}}}}
```

## The HouseholdIncomeReport object

```json
{"openapi":"3.0.3","info":{"title":"PayScore API","version":"1.0.0"},"components":{"schemas":{"HouseholdIncomeReport":{"type":"object","description":"Combined income report aggregating data across all applicants in the group. Contains a reports array with each applicant's individual sub-report.","properties":{"reports":{"type":"array","description":"Individual income sub-reports for each applicant in the group","items":{"$ref":"#/components/schemas/ApplicantIncomeSubReport"}},"recurring":{"$ref":"#/components/schemas/RecurringIncomeData"},"non_recurring":{"$ref":"#/components/schemas/NonRecurringIncomeData"},"summary_timespan_length":{"type":"integer","description":"Minimum data timespan across all applicants, in days"},"criteria_rule_results":{"type":"array","nullable":true,"description":"Results of income criteria rule evaluations","items":{"$ref":"#/components/schemas/IncomeCriteriaResult"}},"applicant_group_id":{"type":"string","format":"uuid","description":"Unique identifier for the applicant group"},"property_name":{"type":"string","nullable":true,"description":"Property name associated with the application"},"property_monthly_rent_cents":{"type":"integer","nullable":true,"description":"Property monthly rent in cents"},"created_at":{"type":"string","format":"date-time","description":"When the report was created"},"uploaded_documents":{"type":"array","nullable":true,"description":"Documents uploaded across all applicants for verification","items":{"$ref":"#/components/schemas/UploadedDocument"}}}},"ApplicantIncomeSubReport":{"type":"object","description":"An individual applicant's income data nested within a HouseholdIncomeReport. Contains richer per-applicant detail than the top-level individual report.","properties":{"verification_id":{"type":"string","format":"uuid","description":"Unique identifier for the applicant's income verification"},"identity":{"type":"object","description":"Identity information for this applicant","properties":{"full_name":{"type":"string"},"email":{"type":"string","format":"email"}}},"reason_completed":{"type":"string","nullable":true,"description":"Reason the verification was completed"},"income_sources":{"type":"array","description":"Income sources used for this applicant's verification","items":{"type":"object","properties":{"source":{"type":"string","enum":["bank","payroll","document"],"description":"Type of income source"}}}},"recurring":{"nullable":true,"allOf":[{"$ref":"#/components/schemas/RecurringIncomeData"}]},"non_recurring":{"nullable":true,"allOf":[{"$ref":"#/components/schemas/NonRecurringIncomeData"}]},"summary_timespan_length":{"type":"integer","nullable":true,"description":"Data timespan for this applicant, in days"},"bank_connections":{"type":"array","nullable":true,"description":"Income summaries for each linked bank connection (bank income source only)","items":{"$ref":"#/components/schemas/BankConnectionIncomeSummary"}},"payroll_connections":{"type":"array","nullable":true,"description":"Income summaries for each payroll connection (payroll income source only)","items":{"$ref":"#/components/schemas/PayrollConnectionIncomeSummary"}},"income_explanation":{"type":"string","nullable":true,"description":"Human-readable explanation of the income determination (bank income source only)"},"uploaded_documents":{"type":"array","nullable":true,"description":"Documents uploaded by this applicant for verification","items":{"$ref":"#/components/schemas/UploadedDocument"}}}},"RecurringIncomeData":{"type":"object","description":"Aggregated recurring income data","properties":{"total":{"type":"integer","description":"Total net recurring income in cents within the summary timespan"},"one_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net income over 1 month in cents"},"two_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net income over 2 months in cents (null if timespan < 50 days)"},"three_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net income over 3 months in cents (null if timespan < 80 days)"},"six_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net income over 6 months in cents (null if timespan < 170 days)"},"nine_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net income over 9 months in cents (null if timespan < 260 days)"},"twelve_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net income over 12 months in cents (null if timespan < 350 days)"},"income_streams":{"type":"array","description":"Individual recurring income streams contributing to this total","items":{"$ref":"#/components/schemas/IncomeStreamProperties"}}}},"IncomeStreamProperties":{"type":"object","description":"Properties of a single identified income stream","properties":{"name":{"type":"string","description":"Name of the income stream (typically the income source or employer)"},"total":{"type":"integer","description":"Total net amount for this income stream in cents"},"monthly_income":{"type":"integer","description":"Calculated monthly income for this stream in cents"},"start_date":{"type":"string","format":"date","description":"Start date of this income stream's period"},"end_date":{"type":"string","format":"date","description":"End date of this income stream's period"},"transactions":{"type":"array","description":"Individual transactions belonging to this income stream","items":{"$ref":"#/components/schemas/TransactionProperties"}},"paystubs":{"type":"array","description":"Paystub records for this income stream (populated for payroll sources)","items":{"$ref":"#/components/schemas/PaystubProperties"}},"pay_gap_after_transaction_indexes":{"type":"array","description":"Indexes of transactions after which an unusual pay gap was detected","items":{"type":"integer"}}}},"TransactionProperties":{"type":"object","description":"A single bank transaction within an income stream","properties":{"name":{"type":"string","description":"Transaction name or description"},"amount":{"type":"integer","description":"Transaction amount in cents"},"date":{"type":"string","description":"Transaction date formatted as MM/DD/YYYY"}}},"PaystubProperties":{"type":"object","description":"A single paystub within a payroll income stream","properties":{"gross_pay":{"type":"integer","nullable":true,"description":"Gross pay in cents"},"base_pay":{"type":"integer","nullable":true,"description":"Base pay in cents"},"bonus":{"type":"integer","nullable":true,"description":"Bonus amount in cents"},"commission":{"type":"integer","nullable":true,"description":"Commission amount in cents"},"tips":{"type":"integer","nullable":true,"description":"Tips amount in cents"},"overtime":{"type":"integer","nullable":true,"description":"Overtime pay in cents"},"other":{"type":"integer","nullable":true,"description":"Other pay in cents"},"net_pay":{"type":"integer","nullable":true,"description":"Net pay in cents"},"hours_worked":{"type":"number","nullable":true,"description":"Hours worked, rounded to 2 decimal places"},"pay_date":{"type":"string","description":"Pay date (pretty formatted)"},"start_date":{"type":"string","description":"Pay period start date (pretty formatted)"},"end_date":{"type":"string","description":"Pay period end date (pretty formatted)"}}},"NonRecurringIncomeData":{"type":"object","description":"Aggregated non-recurring income data (no gross estimates)","properties":{"total":{"type":"integer","description":"Total net non-recurring income in cents within the summary timespan"},"one_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net non-recurring income over 1 month in cents"},"two_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net non-recurring income over 2 months in cents"},"three_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net non-recurring income over 3 months in cents"},"six_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net non-recurring income over 6 months in cents"},"nine_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net non-recurring income over 9 months in cents"},"twelve_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net non-recurring income over 12 months in cents"},"income_streams":{"type":"array","description":"Individual non-recurring income streams","items":{"$ref":"#/components/schemas/IncomeStreamProperties"}}}},"BankConnectionIncomeSummary":{"type":"object","description":"Income summary for a single linked bank connection","properties":{"institution_name":{"type":"string","description":"Name of the financial institution"},"accounts":{"type":"array","description":"Bank accounts on this connection used for income analysis","items":{"type":"object","description":"Account properties including name, holder names, type, and balances"}},"income":{"type":"object","description":"Aggregated income analysis for this bank connection","properties":{"total":{"type":"integer","description":"Total net income in cents within the summary timespan"},"two_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net income over 2 months in cents"},"three_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net income over 3 months in cents"},"six_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net income over 6 months in cents"},"nine_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net income over 9 months in cents"},"twelve_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net income over 12 months in cents"},"income_streams":{"type":"array","description":"Recurring income streams identified for this bank connection","items":{"$ref":"#/components/schemas/IncomeStreamProperties"}},"non_recurring":{"type":"object","description":"Non-recurring income for this bank connection","properties":{"total":{"type":"integer","description":"Total non-recurring income in cents"},"income_streams":{"type":"array","items":{"$ref":"#/components/schemas/IncomeStreamProperties"}}}},"start_date":{"type":"string","format":"date","description":"Earliest transaction date across all income streams"},"end_date":{"type":"string","format":"date","description":"Latest transaction date across all income streams"},"transaction_timespan_length":{"type":"integer","description":"Number of days covered by income transactions"}}}}},"PayrollConnectionIncomeSummary":{"type":"object","description":"Income summary for a single payroll connection","properties":{"employee_name":{"type":"string","nullable":true,"description":"Employee name as reported by the payroll provider"},"company_name":{"type":"string","nullable":true,"description":"Employer company name"},"institution_name":{"type":"string","nullable":true,"description":"Name of the payroll provider"},"company_address":{"type":"string","nullable":true,"description":"Employer address"},"title":{"type":"string","nullable":true,"description":"Job title"},"start_date":{"type":"string","nullable":true,"description":"Employment start date"},"end_date":{"type":"string","nullable":true,"description":"Employment end date (null if currently employed)"},"pay_frequency":{"type":"string","nullable":true,"description":"Pay frequency"},"pay_rate":{"type":"string","nullable":true,"description":"Pay rate description"},"pay_amount":{"type":"integer","nullable":true,"description":"Pay amount in cents"},"income":{"type":"object","nullable":true,"description":"Aggregated income analysis for this payroll connection","properties":{"total":{"type":"integer","description":"Total net income in cents within the summary timespan"},"two_month_avg_monthly":{"type":"integer","nullable":true},"three_month_avg_monthly":{"type":"integer","nullable":true},"six_month_avg_monthly":{"type":"integer","nullable":true},"nine_month_avg_monthly":{"type":"integer","nullable":true},"twelve_month_avg_monthly":{"type":"integer","nullable":true},"income_streams":{"type":"array","items":{"$ref":"#/components/schemas/IncomeStreamProperties"}},"start_date":{"type":"string","format":"date","description":"Earliest paystub date"},"end_date":{"type":"string","format":"date","description":"Latest paystub date"},"transaction_timespan_length":{"type":"integer","description":"Number of days covered by paystubs"}}},"is_name_mismatched":{"type":"boolean","description":"Whether the employee name on paystubs does not match the applicant name"}}},"UploadedDocument":{"type":"object","description":"A document uploaded by the applicant (bank statement or pay stub)","properties":{"name":{"type":"string","description":"Filename of the uploaded document"},"type":{"type":"string","description":"Document type"},"fraud_risk":{"type":"string","enum":["low","needs_review","high"],"description":"Overall fraud risk assessment"},"fraud_risk_score":{"type":"integer","description":"Numerical fraud risk score (0-100, higher is riskier)"},"applicant_name":{"type":"string","nullable":true,"description":"Name of the applicant who uploaded the document"},"fraud_risk_signals":{"type":"array","description":"Fraud risk signals detected in the document","items":{"type":"object","properties":{"type":{"type":"string","description":"Type of fraud signal detected"},"description":{"type":"string","nullable":true,"description":"Additional details about the fraud signal"}}}}}},"IncomeCriteriaResult":{"type":"object","description":"Result of evaluating a single income criteria rule","properties":{"result":{"type":"string","description":"Whether the applicant passed or failed this criteria"},"multiplier_result":{"type":"string","nullable":true,"description":"Income-to-rent multiplier result for this criteria"},"multiplier_threshold":{"type":"number","nullable":true,"description":"The multiplier threshold used in this criteria evaluation"},"criteria_used":{"type":"string","nullable":true,"description":"The specific income figure used for evaluation (e.g., which monthly average)"},"criteria_from_rule":{"type":"string","nullable":true,"description":"The rule that determined which income criteria to use"}}}}}}
```

## The IdentityReportData object

```json
{"openapi":"3.0.3","info":{"title":"PayScore API","version":"1.0.0"},"components":{"schemas":{"IdentityReportData":{"type":"object","description":"Identity verification report data from a completed identity verification","properties":{"outcome":{"type":"string","enum":["passed","failed"],"description":"Overall outcome of the identity verification"},"verification_types":{"type":"array","description":"Types of verification performed (e.g., government_id, selfie, tin, ecbsv)","items":{"type":"string","enum":["government_id","selfie","tin","ecbsv"]}},"checks":{"type":"array","description":"Individual verification checks performed during identity verification","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Unique identifier for the verification check"},"identity_verification_id":{"type":"string","format":"uuid","description":"ID of the parent identity verification"},"name":{"type":"string","description":"Specific check name (e.g., id_entity_detection, selfie_liveness_detection)"},"verification_type":{"type":"string","enum":["government_id","selfie","tin","ecbsv"],"description":"Type of verification performed"},"status":{"type":"string","enum":["passed","failed","not_applicable"],"description":"Status of the verification check"},"reasons":{"type":"array","description":"Array of reason codes for check failure","items":{"type":"string"}},"metadata":{"type":"object","description":"Additional metadata about the check","nullable":true}}}}}}}}}
```

## The RecurringIncomeData object

```json
{"openapi":"3.0.3","info":{"title":"PayScore API","version":"1.0.0"},"components":{"schemas":{"RecurringIncomeData":{"type":"object","description":"Aggregated recurring income data","properties":{"total":{"type":"integer","description":"Total net recurring income in cents within the summary timespan"},"one_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net income over 1 month in cents"},"two_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net income over 2 months in cents (null if timespan < 50 days)"},"three_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net income over 3 months in cents (null if timespan < 80 days)"},"six_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net income over 6 months in cents (null if timespan < 170 days)"},"nine_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net income over 9 months in cents (null if timespan < 260 days)"},"twelve_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net income over 12 months in cents (null if timespan < 350 days)"},"income_streams":{"type":"array","description":"Individual recurring income streams contributing to this total","items":{"$ref":"#/components/schemas/IncomeStreamProperties"}}}},"IncomeStreamProperties":{"type":"object","description":"Properties of a single identified income stream","properties":{"name":{"type":"string","description":"Name of the income stream (typically the income source or employer)"},"total":{"type":"integer","description":"Total net amount for this income stream in cents"},"monthly_income":{"type":"integer","description":"Calculated monthly income for this stream in cents"},"start_date":{"type":"string","format":"date","description":"Start date of this income stream's period"},"end_date":{"type":"string","format":"date","description":"End date of this income stream's period"},"transactions":{"type":"array","description":"Individual transactions belonging to this income stream","items":{"$ref":"#/components/schemas/TransactionProperties"}},"paystubs":{"type":"array","description":"Paystub records for this income stream (populated for payroll sources)","items":{"$ref":"#/components/schemas/PaystubProperties"}},"pay_gap_after_transaction_indexes":{"type":"array","description":"Indexes of transactions after which an unusual pay gap was detected","items":{"type":"integer"}}}},"TransactionProperties":{"type":"object","description":"A single bank transaction within an income stream","properties":{"name":{"type":"string","description":"Transaction name or description"},"amount":{"type":"integer","description":"Transaction amount in cents"},"date":{"type":"string","description":"Transaction date formatted as MM/DD/YYYY"}}},"PaystubProperties":{"type":"object","description":"A single paystub within a payroll income stream","properties":{"gross_pay":{"type":"integer","nullable":true,"description":"Gross pay in cents"},"base_pay":{"type":"integer","nullable":true,"description":"Base pay in cents"},"bonus":{"type":"integer","nullable":true,"description":"Bonus amount in cents"},"commission":{"type":"integer","nullable":true,"description":"Commission amount in cents"},"tips":{"type":"integer","nullable":true,"description":"Tips amount in cents"},"overtime":{"type":"integer","nullable":true,"description":"Overtime pay in cents"},"other":{"type":"integer","nullable":true,"description":"Other pay in cents"},"net_pay":{"type":"integer","nullable":true,"description":"Net pay in cents"},"hours_worked":{"type":"number","nullable":true,"description":"Hours worked, rounded to 2 decimal places"},"pay_date":{"type":"string","description":"Pay date (pretty formatted)"},"start_date":{"type":"string","description":"Pay period start date (pretty formatted)"},"end_date":{"type":"string","description":"Pay period end date (pretty formatted)"}}}}}}
```

## The NonRecurringIncomeData object

```json
{"openapi":"3.0.3","info":{"title":"PayScore API","version":"1.0.0"},"components":{"schemas":{"NonRecurringIncomeData":{"type":"object","description":"Aggregated non-recurring income data (no gross estimates)","properties":{"total":{"type":"integer","description":"Total net non-recurring income in cents within the summary timespan"},"one_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net non-recurring income over 1 month in cents"},"two_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net non-recurring income over 2 months in cents"},"three_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net non-recurring income over 3 months in cents"},"six_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net non-recurring income over 6 months in cents"},"nine_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net non-recurring income over 9 months in cents"},"twelve_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net non-recurring income over 12 months in cents"},"income_streams":{"type":"array","description":"Individual non-recurring income streams","items":{"$ref":"#/components/schemas/IncomeStreamProperties"}}}},"IncomeStreamProperties":{"type":"object","description":"Properties of a single identified income stream","properties":{"name":{"type":"string","description":"Name of the income stream (typically the income source or employer)"},"total":{"type":"integer","description":"Total net amount for this income stream in cents"},"monthly_income":{"type":"integer","description":"Calculated monthly income for this stream in cents"},"start_date":{"type":"string","format":"date","description":"Start date of this income stream's period"},"end_date":{"type":"string","format":"date","description":"End date of this income stream's period"},"transactions":{"type":"array","description":"Individual transactions belonging to this income stream","items":{"$ref":"#/components/schemas/TransactionProperties"}},"paystubs":{"type":"array","description":"Paystub records for this income stream (populated for payroll sources)","items":{"$ref":"#/components/schemas/PaystubProperties"}},"pay_gap_after_transaction_indexes":{"type":"array","description":"Indexes of transactions after which an unusual pay gap was detected","items":{"type":"integer"}}}},"TransactionProperties":{"type":"object","description":"A single bank transaction within an income stream","properties":{"name":{"type":"string","description":"Transaction name or description"},"amount":{"type":"integer","description":"Transaction amount in cents"},"date":{"type":"string","description":"Transaction date formatted as MM/DD/YYYY"}}},"PaystubProperties":{"type":"object","description":"A single paystub within a payroll income stream","properties":{"gross_pay":{"type":"integer","nullable":true,"description":"Gross pay in cents"},"base_pay":{"type":"integer","nullable":true,"description":"Base pay in cents"},"bonus":{"type":"integer","nullable":true,"description":"Bonus amount in cents"},"commission":{"type":"integer","nullable":true,"description":"Commission amount in cents"},"tips":{"type":"integer","nullable":true,"description":"Tips amount in cents"},"overtime":{"type":"integer","nullable":true,"description":"Overtime pay in cents"},"other":{"type":"integer","nullable":true,"description":"Other pay in cents"},"net_pay":{"type":"integer","nullable":true,"description":"Net pay in cents"},"hours_worked":{"type":"number","nullable":true,"description":"Hours worked, rounded to 2 decimal places"},"pay_date":{"type":"string","description":"Pay date (pretty formatted)"},"start_date":{"type":"string","description":"Pay period start date (pretty formatted)"},"end_date":{"type":"string","description":"Pay period end date (pretty formatted)"}}}}}}
```

## The BankConnectionIncomeSummary object

```json
{"openapi":"3.0.3","info":{"title":"PayScore API","version":"1.0.0"},"components":{"schemas":{"BankConnectionIncomeSummary":{"type":"object","description":"Income summary for a single linked bank connection","properties":{"institution_name":{"type":"string","description":"Name of the financial institution"},"accounts":{"type":"array","description":"Bank accounts on this connection used for income analysis","items":{"type":"object","description":"Account properties including name, holder names, type, and balances"}},"income":{"type":"object","description":"Aggregated income analysis for this bank connection","properties":{"total":{"type":"integer","description":"Total net income in cents within the summary timespan"},"two_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net income over 2 months in cents"},"three_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net income over 3 months in cents"},"six_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net income over 6 months in cents"},"nine_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net income over 9 months in cents"},"twelve_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net income over 12 months in cents"},"income_streams":{"type":"array","description":"Recurring income streams identified for this bank connection","items":{"$ref":"#/components/schemas/IncomeStreamProperties"}},"non_recurring":{"type":"object","description":"Non-recurring income for this bank connection","properties":{"total":{"type":"integer","description":"Total non-recurring income in cents"},"income_streams":{"type":"array","items":{"$ref":"#/components/schemas/IncomeStreamProperties"}}}},"start_date":{"type":"string","format":"date","description":"Earliest transaction date across all income streams"},"end_date":{"type":"string","format":"date","description":"Latest transaction date across all income streams"},"transaction_timespan_length":{"type":"integer","description":"Number of days covered by income transactions"}}}}},"IncomeStreamProperties":{"type":"object","description":"Properties of a single identified income stream","properties":{"name":{"type":"string","description":"Name of the income stream (typically the income source or employer)"},"total":{"type":"integer","description":"Total net amount for this income stream in cents"},"monthly_income":{"type":"integer","description":"Calculated monthly income for this stream in cents"},"start_date":{"type":"string","format":"date","description":"Start date of this income stream's period"},"end_date":{"type":"string","format":"date","description":"End date of this income stream's period"},"transactions":{"type":"array","description":"Individual transactions belonging to this income stream","items":{"$ref":"#/components/schemas/TransactionProperties"}},"paystubs":{"type":"array","description":"Paystub records for this income stream (populated for payroll sources)","items":{"$ref":"#/components/schemas/PaystubProperties"}},"pay_gap_after_transaction_indexes":{"type":"array","description":"Indexes of transactions after which an unusual pay gap was detected","items":{"type":"integer"}}}},"TransactionProperties":{"type":"object","description":"A single bank transaction within an income stream","properties":{"name":{"type":"string","description":"Transaction name or description"},"amount":{"type":"integer","description":"Transaction amount in cents"},"date":{"type":"string","description":"Transaction date formatted as MM/DD/YYYY"}}},"PaystubProperties":{"type":"object","description":"A single paystub within a payroll income stream","properties":{"gross_pay":{"type":"integer","nullable":true,"description":"Gross pay in cents"},"base_pay":{"type":"integer","nullable":true,"description":"Base pay in cents"},"bonus":{"type":"integer","nullable":true,"description":"Bonus amount in cents"},"commission":{"type":"integer","nullable":true,"description":"Commission amount in cents"},"tips":{"type":"integer","nullable":true,"description":"Tips amount in cents"},"overtime":{"type":"integer","nullable":true,"description":"Overtime pay in cents"},"other":{"type":"integer","nullable":true,"description":"Other pay in cents"},"net_pay":{"type":"integer","nullable":true,"description":"Net pay in cents"},"hours_worked":{"type":"number","nullable":true,"description":"Hours worked, rounded to 2 decimal places"},"pay_date":{"type":"string","description":"Pay date (pretty formatted)"},"start_date":{"type":"string","description":"Pay period start date (pretty formatted)"},"end_date":{"type":"string","description":"Pay period end date (pretty formatted)"}}}}}}
```

## The IncomeStreamProperties object

```json
{"openapi":"3.0.3","info":{"title":"PayScore API","version":"1.0.0"},"components":{"schemas":{"IncomeStreamProperties":{"type":"object","description":"Properties of a single identified income stream","properties":{"name":{"type":"string","description":"Name of the income stream (typically the income source or employer)"},"total":{"type":"integer","description":"Total net amount for this income stream in cents"},"monthly_income":{"type":"integer","description":"Calculated monthly income for this stream in cents"},"start_date":{"type":"string","format":"date","description":"Start date of this income stream's period"},"end_date":{"type":"string","format":"date","description":"End date of this income stream's period"},"transactions":{"type":"array","description":"Individual transactions belonging to this income stream","items":{"$ref":"#/components/schemas/TransactionProperties"}},"paystubs":{"type":"array","description":"Paystub records for this income stream (populated for payroll sources)","items":{"$ref":"#/components/schemas/PaystubProperties"}},"pay_gap_after_transaction_indexes":{"type":"array","description":"Indexes of transactions after which an unusual pay gap was detected","items":{"type":"integer"}}}},"TransactionProperties":{"type":"object","description":"A single bank transaction within an income stream","properties":{"name":{"type":"string","description":"Transaction name or description"},"amount":{"type":"integer","description":"Transaction amount in cents"},"date":{"type":"string","description":"Transaction date formatted as MM/DD/YYYY"}}},"PaystubProperties":{"type":"object","description":"A single paystub within a payroll income stream","properties":{"gross_pay":{"type":"integer","nullable":true,"description":"Gross pay in cents"},"base_pay":{"type":"integer","nullable":true,"description":"Base pay in cents"},"bonus":{"type":"integer","nullable":true,"description":"Bonus amount in cents"},"commission":{"type":"integer","nullable":true,"description":"Commission amount in cents"},"tips":{"type":"integer","nullable":true,"description":"Tips amount in cents"},"overtime":{"type":"integer","nullable":true,"description":"Overtime pay in cents"},"other":{"type":"integer","nullable":true,"description":"Other pay in cents"},"net_pay":{"type":"integer","nullable":true,"description":"Net pay in cents"},"hours_worked":{"type":"number","nullable":true,"description":"Hours worked, rounded to 2 decimal places"},"pay_date":{"type":"string","description":"Pay date (pretty formatted)"},"start_date":{"type":"string","description":"Pay period start date (pretty formatted)"},"end_date":{"type":"string","description":"Pay period end date (pretty formatted)"}}}}}}
```

## The IncomeCriteriaResult object

```json
{"openapi":"3.0.3","info":{"title":"PayScore API","version":"1.0.0"},"components":{"schemas":{"IncomeCriteriaResult":{"type":"object","description":"Result of evaluating a single income criteria rule","properties":{"result":{"type":"string","description":"Whether the applicant passed or failed this criteria"},"multiplier_result":{"type":"string","nullable":true,"description":"Income-to-rent multiplier result for this criteria"},"multiplier_threshold":{"type":"number","nullable":true,"description":"The multiplier threshold used in this criteria evaluation"},"criteria_used":{"type":"string","nullable":true,"description":"The specific income figure used for evaluation (e.g., which monthly average)"},"criteria_from_rule":{"type":"string","nullable":true,"description":"The rule that determined which income criteria to use"}}}}}}
```

## The IndividualIncomeReport object

```json
{"openapi":"3.0.3","info":{"title":"PayScore API","version":"1.0.0"},"components":{"schemas":{"IndividualIncomeReport":{"type":"object","description":"Income report for a single applicant fetched directly. Has the same exposed fields as HouseholdIncomeReport but includes income_sources and no reports array.","properties":{"recurring":{"$ref":"#/components/schemas/RecurringIncomeData"},"non_recurring":{"$ref":"#/components/schemas/NonRecurringIncomeData"},"summary_timespan_length":{"type":"integer","description":"Data timespan, in days"},"criteria_rule_results":{"type":"array","nullable":true,"description":"Results of income criteria rule evaluations","items":{"$ref":"#/components/schemas/IncomeCriteriaResult"}},"income_sources":{"type":"array","description":"Income sources used for this applicant's verification","items":{"type":"object","properties":{"source":{"type":"string","enum":["bank","payroll","document"],"description":"Type of income source"}}}},"applicant_group_id":{"type":"string","format":"uuid","description":"Unique identifier for the applicant group"},"property_name":{"type":"string","nullable":true,"description":"Property name associated with the application"},"property_monthly_rent_cents":{"type":"integer","nullable":true,"description":"Property monthly rent in cents"},"created_at":{"type":"string","format":"date-time","description":"When the report was created"},"uploaded_documents":{"type":"array","nullable":true,"description":"Documents uploaded by the applicant for verification","items":{"$ref":"#/components/schemas/UploadedDocument"}}}},"RecurringIncomeData":{"type":"object","description":"Aggregated recurring income data","properties":{"total":{"type":"integer","description":"Total net recurring income in cents within the summary timespan"},"one_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net income over 1 month in cents"},"two_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net income over 2 months in cents (null if timespan < 50 days)"},"three_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net income over 3 months in cents (null if timespan < 80 days)"},"six_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net income over 6 months in cents (null if timespan < 170 days)"},"nine_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net income over 9 months in cents (null if timespan < 260 days)"},"twelve_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net income over 12 months in cents (null if timespan < 350 days)"},"income_streams":{"type":"array","description":"Individual recurring income streams contributing to this total","items":{"$ref":"#/components/schemas/IncomeStreamProperties"}}}},"IncomeStreamProperties":{"type":"object","description":"Properties of a single identified income stream","properties":{"name":{"type":"string","description":"Name of the income stream (typically the income source or employer)"},"total":{"type":"integer","description":"Total net amount for this income stream in cents"},"monthly_income":{"type":"integer","description":"Calculated monthly income for this stream in cents"},"start_date":{"type":"string","format":"date","description":"Start date of this income stream's period"},"end_date":{"type":"string","format":"date","description":"End date of this income stream's period"},"transactions":{"type":"array","description":"Individual transactions belonging to this income stream","items":{"$ref":"#/components/schemas/TransactionProperties"}},"paystubs":{"type":"array","description":"Paystub records for this income stream (populated for payroll sources)","items":{"$ref":"#/components/schemas/PaystubProperties"}},"pay_gap_after_transaction_indexes":{"type":"array","description":"Indexes of transactions after which an unusual pay gap was detected","items":{"type":"integer"}}}},"TransactionProperties":{"type":"object","description":"A single bank transaction within an income stream","properties":{"name":{"type":"string","description":"Transaction name or description"},"amount":{"type":"integer","description":"Transaction amount in cents"},"date":{"type":"string","description":"Transaction date formatted as MM/DD/YYYY"}}},"PaystubProperties":{"type":"object","description":"A single paystub within a payroll income stream","properties":{"gross_pay":{"type":"integer","nullable":true,"description":"Gross pay in cents"},"base_pay":{"type":"integer","nullable":true,"description":"Base pay in cents"},"bonus":{"type":"integer","nullable":true,"description":"Bonus amount in cents"},"commission":{"type":"integer","nullable":true,"description":"Commission amount in cents"},"tips":{"type":"integer","nullable":true,"description":"Tips amount in cents"},"overtime":{"type":"integer","nullable":true,"description":"Overtime pay in cents"},"other":{"type":"integer","nullable":true,"description":"Other pay in cents"},"net_pay":{"type":"integer","nullable":true,"description":"Net pay in cents"},"hours_worked":{"type":"number","nullable":true,"description":"Hours worked, rounded to 2 decimal places"},"pay_date":{"type":"string","description":"Pay date (pretty formatted)"},"start_date":{"type":"string","description":"Pay period start date (pretty formatted)"},"end_date":{"type":"string","description":"Pay period end date (pretty formatted)"}}},"NonRecurringIncomeData":{"type":"object","description":"Aggregated non-recurring income data (no gross estimates)","properties":{"total":{"type":"integer","description":"Total net non-recurring income in cents within the summary timespan"},"one_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net non-recurring income over 1 month in cents"},"two_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net non-recurring income over 2 months in cents"},"three_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net non-recurring income over 3 months in cents"},"six_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net non-recurring income over 6 months in cents"},"nine_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net non-recurring income over 9 months in cents"},"twelve_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net non-recurring income over 12 months in cents"},"income_streams":{"type":"array","description":"Individual non-recurring income streams","items":{"$ref":"#/components/schemas/IncomeStreamProperties"}}}},"IncomeCriteriaResult":{"type":"object","description":"Result of evaluating a single income criteria rule","properties":{"result":{"type":"string","description":"Whether the applicant passed or failed this criteria"},"multiplier_result":{"type":"string","nullable":true,"description":"Income-to-rent multiplier result for this criteria"},"multiplier_threshold":{"type":"number","nullable":true,"description":"The multiplier threshold used in this criteria evaluation"},"criteria_used":{"type":"string","nullable":true,"description":"The specific income figure used for evaluation (e.g., which monthly average)"},"criteria_from_rule":{"type":"string","nullable":true,"description":"The rule that determined which income criteria to use"}}},"UploadedDocument":{"type":"object","description":"A document uploaded by the applicant (bank statement or pay stub)","properties":{"name":{"type":"string","description":"Filename of the uploaded document"},"type":{"type":"string","description":"Document type"},"fraud_risk":{"type":"string","enum":["low","needs_review","high"],"description":"Overall fraud risk assessment"},"fraud_risk_score":{"type":"integer","description":"Numerical fraud risk score (0-100, higher is riskier)"},"applicant_name":{"type":"string","nullable":true,"description":"Name of the applicant who uploaded the document"},"fraud_risk_signals":{"type":"array","description":"Fraud risk signals detected in the document","items":{"type":"object","properties":{"type":{"type":"string","description":"Type of fraud signal detected"},"description":{"type":"string","nullable":true,"description":"Additional details about the fraud signal"}}}}}}}}}
```

## The ApplicantIncomeSubReport object

```json
{"openapi":"3.0.3","info":{"title":"PayScore API","version":"1.0.0"},"components":{"schemas":{"ApplicantIncomeSubReport":{"type":"object","description":"An individual applicant's income data nested within a HouseholdIncomeReport. Contains richer per-applicant detail than the top-level individual report.","properties":{"verification_id":{"type":"string","format":"uuid","description":"Unique identifier for the applicant's income verification"},"identity":{"type":"object","description":"Identity information for this applicant","properties":{"full_name":{"type":"string"},"email":{"type":"string","format":"email"}}},"reason_completed":{"type":"string","nullable":true,"description":"Reason the verification was completed"},"income_sources":{"type":"array","description":"Income sources used for this applicant's verification","items":{"type":"object","properties":{"source":{"type":"string","enum":["bank","payroll","document"],"description":"Type of income source"}}}},"recurring":{"nullable":true,"allOf":[{"$ref":"#/components/schemas/RecurringIncomeData"}]},"non_recurring":{"nullable":true,"allOf":[{"$ref":"#/components/schemas/NonRecurringIncomeData"}]},"summary_timespan_length":{"type":"integer","nullable":true,"description":"Data timespan for this applicant, in days"},"bank_connections":{"type":"array","nullable":true,"description":"Income summaries for each linked bank connection (bank income source only)","items":{"$ref":"#/components/schemas/BankConnectionIncomeSummary"}},"payroll_connections":{"type":"array","nullable":true,"description":"Income summaries for each payroll connection (payroll income source only)","items":{"$ref":"#/components/schemas/PayrollConnectionIncomeSummary"}},"income_explanation":{"type":"string","nullable":true,"description":"Human-readable explanation of the income determination (bank income source only)"},"uploaded_documents":{"type":"array","nullable":true,"description":"Documents uploaded by this applicant for verification","items":{"$ref":"#/components/schemas/UploadedDocument"}}}},"RecurringIncomeData":{"type":"object","description":"Aggregated recurring income data","properties":{"total":{"type":"integer","description":"Total net recurring income in cents within the summary timespan"},"one_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net income over 1 month in cents"},"two_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net income over 2 months in cents (null if timespan < 50 days)"},"three_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net income over 3 months in cents (null if timespan < 80 days)"},"six_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net income over 6 months in cents (null if timespan < 170 days)"},"nine_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net income over 9 months in cents (null if timespan < 260 days)"},"twelve_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net income over 12 months in cents (null if timespan < 350 days)"},"income_streams":{"type":"array","description":"Individual recurring income streams contributing to this total","items":{"$ref":"#/components/schemas/IncomeStreamProperties"}}}},"IncomeStreamProperties":{"type":"object","description":"Properties of a single identified income stream","properties":{"name":{"type":"string","description":"Name of the income stream (typically the income source or employer)"},"total":{"type":"integer","description":"Total net amount for this income stream in cents"},"monthly_income":{"type":"integer","description":"Calculated monthly income for this stream in cents"},"start_date":{"type":"string","format":"date","description":"Start date of this income stream's period"},"end_date":{"type":"string","format":"date","description":"End date of this income stream's period"},"transactions":{"type":"array","description":"Individual transactions belonging to this income stream","items":{"$ref":"#/components/schemas/TransactionProperties"}},"paystubs":{"type":"array","description":"Paystub records for this income stream (populated for payroll sources)","items":{"$ref":"#/components/schemas/PaystubProperties"}},"pay_gap_after_transaction_indexes":{"type":"array","description":"Indexes of transactions after which an unusual pay gap was detected","items":{"type":"integer"}}}},"TransactionProperties":{"type":"object","description":"A single bank transaction within an income stream","properties":{"name":{"type":"string","description":"Transaction name or description"},"amount":{"type":"integer","description":"Transaction amount in cents"},"date":{"type":"string","description":"Transaction date formatted as MM/DD/YYYY"}}},"PaystubProperties":{"type":"object","description":"A single paystub within a payroll income stream","properties":{"gross_pay":{"type":"integer","nullable":true,"description":"Gross pay in cents"},"base_pay":{"type":"integer","nullable":true,"description":"Base pay in cents"},"bonus":{"type":"integer","nullable":true,"description":"Bonus amount in cents"},"commission":{"type":"integer","nullable":true,"description":"Commission amount in cents"},"tips":{"type":"integer","nullable":true,"description":"Tips amount in cents"},"overtime":{"type":"integer","nullable":true,"description":"Overtime pay in cents"},"other":{"type":"integer","nullable":true,"description":"Other pay in cents"},"net_pay":{"type":"integer","nullable":true,"description":"Net pay in cents"},"hours_worked":{"type":"number","nullable":true,"description":"Hours worked, rounded to 2 decimal places"},"pay_date":{"type":"string","description":"Pay date (pretty formatted)"},"start_date":{"type":"string","description":"Pay period start date (pretty formatted)"},"end_date":{"type":"string","description":"Pay period end date (pretty formatted)"}}},"NonRecurringIncomeData":{"type":"object","description":"Aggregated non-recurring income data (no gross estimates)","properties":{"total":{"type":"integer","description":"Total net non-recurring income in cents within the summary timespan"},"one_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net non-recurring income over 1 month in cents"},"two_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net non-recurring income over 2 months in cents"},"three_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net non-recurring income over 3 months in cents"},"six_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net non-recurring income over 6 months in cents"},"nine_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net non-recurring income over 9 months in cents"},"twelve_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net non-recurring income over 12 months in cents"},"income_streams":{"type":"array","description":"Individual non-recurring income streams","items":{"$ref":"#/components/schemas/IncomeStreamProperties"}}}},"BankConnectionIncomeSummary":{"type":"object","description":"Income summary for a single linked bank connection","properties":{"institution_name":{"type":"string","description":"Name of the financial institution"},"accounts":{"type":"array","description":"Bank accounts on this connection used for income analysis","items":{"type":"object","description":"Account properties including name, holder names, type, and balances"}},"income":{"type":"object","description":"Aggregated income analysis for this bank connection","properties":{"total":{"type":"integer","description":"Total net income in cents within the summary timespan"},"two_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net income over 2 months in cents"},"three_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net income over 3 months in cents"},"six_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net income over 6 months in cents"},"nine_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net income over 9 months in cents"},"twelve_month_avg_monthly":{"type":"integer","nullable":true,"description":"Average monthly net income over 12 months in cents"},"income_streams":{"type":"array","description":"Recurring income streams identified for this bank connection","items":{"$ref":"#/components/schemas/IncomeStreamProperties"}},"non_recurring":{"type":"object","description":"Non-recurring income for this bank connection","properties":{"total":{"type":"integer","description":"Total non-recurring income in cents"},"income_streams":{"type":"array","items":{"$ref":"#/components/schemas/IncomeStreamProperties"}}}},"start_date":{"type":"string","format":"date","description":"Earliest transaction date across all income streams"},"end_date":{"type":"string","format":"date","description":"Latest transaction date across all income streams"},"transaction_timespan_length":{"type":"integer","description":"Number of days covered by income transactions"}}}}},"PayrollConnectionIncomeSummary":{"type":"object","description":"Income summary for a single payroll connection","properties":{"employee_name":{"type":"string","nullable":true,"description":"Employee name as reported by the payroll provider"},"company_name":{"type":"string","nullable":true,"description":"Employer company name"},"institution_name":{"type":"string","nullable":true,"description":"Name of the payroll provider"},"company_address":{"type":"string","nullable":true,"description":"Employer address"},"title":{"type":"string","nullable":true,"description":"Job title"},"start_date":{"type":"string","nullable":true,"description":"Employment start date"},"end_date":{"type":"string","nullable":true,"description":"Employment end date (null if currently employed)"},"pay_frequency":{"type":"string","nullable":true,"description":"Pay frequency"},"pay_rate":{"type":"string","nullable":true,"description":"Pay rate description"},"pay_amount":{"type":"integer","nullable":true,"description":"Pay amount in cents"},"income":{"type":"object","nullable":true,"description":"Aggregated income analysis for this payroll connection","properties":{"total":{"type":"integer","description":"Total net income in cents within the summary timespan"},"two_month_avg_monthly":{"type":"integer","nullable":true},"three_month_avg_monthly":{"type":"integer","nullable":true},"six_month_avg_monthly":{"type":"integer","nullable":true},"nine_month_avg_monthly":{"type":"integer","nullable":true},"twelve_month_avg_monthly":{"type":"integer","nullable":true},"income_streams":{"type":"array","items":{"$ref":"#/components/schemas/IncomeStreamProperties"}},"start_date":{"type":"string","format":"date","description":"Earliest paystub date"},"end_date":{"type":"string","format":"date","description":"Latest paystub date"},"transaction_timespan_length":{"type":"integer","description":"Number of days covered by paystubs"}}},"is_name_mismatched":{"type":"boolean","description":"Whether the employee name on paystubs does not match the applicant name"}}},"UploadedDocument":{"type":"object","description":"A document uploaded by the applicant (bank statement or pay stub)","properties":{"name":{"type":"string","description":"Filename of the uploaded document"},"type":{"type":"string","description":"Document type"},"fraud_risk":{"type":"string","enum":["low","needs_review","high"],"description":"Overall fraud risk assessment"},"fraud_risk_score":{"type":"integer","description":"Numerical fraud risk score (0-100, higher is riskier)"},"applicant_name":{"type":"string","nullable":true,"description":"Name of the applicant who uploaded the document"},"fraud_risk_signals":{"type":"array","description":"Fraud risk signals detected in the document","items":{"type":"object","properties":{"type":{"type":"string","description":"Type of fraud signal detected"},"description":{"type":"string","nullable":true,"description":"Additional details about the fraud signal"}}}}}}}}}
```

## The UploadedDocument object

```json
{"openapi":"3.0.3","info":{"title":"PayScore API","version":"1.0.0"},"components":{"schemas":{"UploadedDocument":{"type":"object","description":"A document uploaded by the applicant (bank statement or pay stub)","properties":{"name":{"type":"string","description":"Filename of the uploaded document"},"type":{"type":"string","description":"Document type"},"fraud_risk":{"type":"string","enum":["low","needs_review","high"],"description":"Overall fraud risk assessment"},"fraud_risk_score":{"type":"integer","description":"Numerical fraud risk score (0-100, higher is riskier)"},"applicant_name":{"type":"string","nullable":true,"description":"Name of the applicant who uploaded the document"},"fraud_risk_signals":{"type":"array","description":"Fraud risk signals detected in the document","items":{"type":"object","properties":{"type":{"type":"string","description":"Type of fraud signal detected"},"description":{"type":"string","nullable":true,"description":"Additional details about the fraud signal"}}}}}}}}}
```

## The TransactionProperties object

```json
{"openapi":"3.0.3","info":{"title":"PayScore API","version":"1.0.0"},"components":{"schemas":{"TransactionProperties":{"type":"object","description":"A single bank transaction within an income stream","properties":{"name":{"type":"string","description":"Transaction name or description"},"amount":{"type":"integer","description":"Transaction amount in cents"},"date":{"type":"string","description":"Transaction date formatted as MM/DD/YYYY"}}}}}}
```

## The PaystubProperties object

```json
{"openapi":"3.0.3","info":{"title":"PayScore API","version":"1.0.0"},"components":{"schemas":{"PaystubProperties":{"type":"object","description":"A single paystub within a payroll income stream","properties":{"gross_pay":{"type":"integer","nullable":true,"description":"Gross pay in cents"},"base_pay":{"type":"integer","nullable":true,"description":"Base pay in cents"},"bonus":{"type":"integer","nullable":true,"description":"Bonus amount in cents"},"commission":{"type":"integer","nullable":true,"description":"Commission amount in cents"},"tips":{"type":"integer","nullable":true,"description":"Tips amount in cents"},"overtime":{"type":"integer","nullable":true,"description":"Overtime pay in cents"},"other":{"type":"integer","nullable":true,"description":"Other pay in cents"},"net_pay":{"type":"integer","nullable":true,"description":"Net pay in cents"},"hours_worked":{"type":"number","nullable":true,"description":"Hours worked, rounded to 2 decimal places"},"pay_date":{"type":"string","description":"Pay date (pretty formatted)"},"start_date":{"type":"string","description":"Pay period start date (pretty formatted)"},"end_date":{"type":"string","description":"Pay period end date (pretty formatted)"}}}}}}
```

## The PayrollConnectionIncomeSummary object

```json
{"openapi":"3.0.3","info":{"title":"PayScore API","version":"1.0.0"},"components":{"schemas":{"PayrollConnectionIncomeSummary":{"type":"object","description":"Income summary for a single payroll connection","properties":{"employee_name":{"type":"string","nullable":true,"description":"Employee name as reported by the payroll provider"},"company_name":{"type":"string","nullable":true,"description":"Employer company name"},"institution_name":{"type":"string","nullable":true,"description":"Name of the payroll provider"},"company_address":{"type":"string","nullable":true,"description":"Employer address"},"title":{"type":"string","nullable":true,"description":"Job title"},"start_date":{"type":"string","nullable":true,"description":"Employment start date"},"end_date":{"type":"string","nullable":true,"description":"Employment end date (null if currently employed)"},"pay_frequency":{"type":"string","nullable":true,"description":"Pay frequency"},"pay_rate":{"type":"string","nullable":true,"description":"Pay rate description"},"pay_amount":{"type":"integer","nullable":true,"description":"Pay amount in cents"},"income":{"type":"object","nullable":true,"description":"Aggregated income analysis for this payroll connection","properties":{"total":{"type":"integer","description":"Total net income in cents within the summary timespan"},"two_month_avg_monthly":{"type":"integer","nullable":true},"three_month_avg_monthly":{"type":"integer","nullable":true},"six_month_avg_monthly":{"type":"integer","nullable":true},"nine_month_avg_monthly":{"type":"integer","nullable":true},"twelve_month_avg_monthly":{"type":"integer","nullable":true},"income_streams":{"type":"array","items":{"$ref":"#/components/schemas/IncomeStreamProperties"}},"start_date":{"type":"string","format":"date","description":"Earliest paystub date"},"end_date":{"type":"string","format":"date","description":"Latest paystub date"},"transaction_timespan_length":{"type":"integer","description":"Number of days covered by paystubs"}}},"is_name_mismatched":{"type":"boolean","description":"Whether the employee name on paystubs does not match the applicant name"}}},"IncomeStreamProperties":{"type":"object","description":"Properties of a single identified income stream","properties":{"name":{"type":"string","description":"Name of the income stream (typically the income source or employer)"},"total":{"type":"integer","description":"Total net amount for this income stream in cents"},"monthly_income":{"type":"integer","description":"Calculated monthly income for this stream in cents"},"start_date":{"type":"string","format":"date","description":"Start date of this income stream's period"},"end_date":{"type":"string","format":"date","description":"End date of this income stream's period"},"transactions":{"type":"array","description":"Individual transactions belonging to this income stream","items":{"$ref":"#/components/schemas/TransactionProperties"}},"paystubs":{"type":"array","description":"Paystub records for this income stream (populated for payroll sources)","items":{"$ref":"#/components/schemas/PaystubProperties"}},"pay_gap_after_transaction_indexes":{"type":"array","description":"Indexes of transactions after which an unusual pay gap was detected","items":{"type":"integer"}}}},"TransactionProperties":{"type":"object","description":"A single bank transaction within an income stream","properties":{"name":{"type":"string","description":"Transaction name or description"},"amount":{"type":"integer","description":"Transaction amount in cents"},"date":{"type":"string","description":"Transaction date formatted as MM/DD/YYYY"}}},"PaystubProperties":{"type":"object","description":"A single paystub within a payroll income stream","properties":{"gross_pay":{"type":"integer","nullable":true,"description":"Gross pay in cents"},"base_pay":{"type":"integer","nullable":true,"description":"Base pay in cents"},"bonus":{"type":"integer","nullable":true,"description":"Bonus amount in cents"},"commission":{"type":"integer","nullable":true,"description":"Commission amount in cents"},"tips":{"type":"integer","nullable":true,"description":"Tips amount in cents"},"overtime":{"type":"integer","nullable":true,"description":"Overtime pay in cents"},"other":{"type":"integer","nullable":true,"description":"Other pay in cents"},"net_pay":{"type":"integer","nullable":true,"description":"Net pay in cents"},"hours_worked":{"type":"number","nullable":true,"description":"Hours worked, rounded to 2 decimal places"},"pay_date":{"type":"string","description":"Pay date (pretty formatted)"},"start_date":{"type":"string","description":"Pay period start date (pretty formatted)"},"end_date":{"type":"string","description":"Pay period end date (pretty formatted)"}}}}}}
```
