Skip to content

Reconciliation Models

This page documents the data models related to trustee reconciliation, tapes, loans, and discrepancy issues.


TrusteeTape

Represents an uploaded and parsed trustee tape.

Properties

Property Type Description
id string Tape identifier
trustee_name TrusteeName Trustee that issued the tape
statement_date string (date) Statement date
file_name string Original uploaded filename
loan_count integer Number of loans in tape
total_par number? Total par value of all loans
processing_status string Processing status
error_message string? Error details if processing failed
created_at string (ISO 8601) Upload timestamp

Example

{
  "id": "tape_abc123",
  "trustee_name": "us_bank",
  "statement_date": "2026-01-31",
  "file_name": "trustee_tape_jan2026.xlsx",
  "loan_count": 150,
  "total_par": 450000000.00,
  "processing_status": "completed",
  "error_message": null,
  "created_at": "2026-02-01T09:00:00Z"
}

TrusteeLoan

Represents a single loan record from a trustee tape.

Properties

Property Type Description
id string Loan record identifier
tape_id string Parent tape ID
cusip string CUSIP identifier
loanx_id string? LoanX identifier
primary_identifier string? Primary loan identifier
borrower_name string? Borrower name
par_value number? Par (face) value
price number? Current price
rating_moodys string? Moody's rating
rating_sp string? S&P rating
rating_fitch string? Fitch rating
spread number? Spread in basis points
base_rate string? Base rate (e.g., SOFR)
all_in_rate number? All-in interest rate
maturity_date string (date)? Maturity date
industry string? Industry classification
country string? Country of domicile
days_past_due integer Days past due (default: 0)

ReconciliationIssue

Represents a discrepancy found during reconciliation.

Properties

Property Type Description
id string Issue identifier
tape_id string Source tape ID
cusip string? Related CUSIP
identifier_type string? Identifier type used for matching
issue_type string Type of discrepancy
severity IssueSeverity Severity level
category string Rule category
field_name string? Field with discrepancy
trustee_value string? Value from trustee tape
internal_value string? Value from internal data
status IssueStatus Resolution status
resolution_notes string? Notes about resolution
created_at string (ISO 8601) Detection timestamp

Example

{
  "id": "issue_abc123",
  "tape_id": "tape_abc123",
  "cusip": "12345ABC",
  "identifier_type": "cusip",
  "issue_type": "value_mismatch",
  "severity": "error",
  "category": "calculation",
  "field_name": "par_value",
  "trustee_value": "5000000.00",
  "internal_value": "4950000.00",
  "status": "open",
  "resolution_notes": null,
  "created_at": "2026-02-01T09:05:00Z"
}

Enumerations

TrusteeName

Value Description
us_bank US Bank
deutsche Deutsche Bank
wilmington Wilmington Trust

IssueStatus

Value Description
open Newly detected, awaiting review
acknowledged Reviewed, investigation in progress
resolved Issue has been resolved
false_positive Determined to not be a real issue

IssueSeverity

Value Description Criteria
critical Immediate attention required Par value >5% difference, missing loan >$1M
error Significant discrepancy Par value 1-5% difference, missing loan \(100K-\)1M
warning Notable difference Rating mismatch, spread >10bps difference
info Minor difference Non-material field differences