Consumer lending and loan servicing database schema

How a consumer lender models its data in Oracle: applications and verified income, credit decisions with ranked adverse-action reasons, loans, the amortisation schedule as rows, repayments allocated across fees, interest and principal, delinquency buckets and collections.

Lending Platform ER diagram

Consumer lending and loan servicing database schema n1 n1 n1 n1 n1 n1 n1 n1 n1 n1 n1 n1 n1 n1 n1 n1 applicants idNUMBER applicant_referen…VARCHAR2 legal_nameVARCHAR2 date_of_birthDATE national_id_hashRAW emailVARCHAR2 phoneVARCHAR2 address_line1VARCHAR2 address_cityVARCHAR2 address_regionVARCHAR2 address_postcodeVARCHAR2 country_codeCHAR residency_statusVARCHAR2 created_atTIMESTAMP loan_products idNUMBER product_codeVARCHAR2 product_nameVARCHAR2 currency_codeCHAR min_amount_minorNUMBER max_amount_minorNUMBER min_term_monthsNUMBER max_term_monthsNUMBER base_annual_rateNUMBER interest_methodVARCHAR2 day_count_convent…VARCHAR2 origination_fee_b…NUMBER late_fee_minorNUMBER grace_period_daysNUMBER is_activeCHAR effective_fromDATE applications idNUMBER applicant_idNUMBER product_idNUMBER application_numberVARCHAR2 requested_amount_…NUMBER requested_term_mo…NUMBER currency_codeCHAR purposeVARCHAR2 channelVARCHAR2 statusVARCHAR2 credit_consent_atTIMESTAMP submitted_atTIMESTAMP decided_atTIMESTAMP expires_onDATE created_atTIMESTAMP employment_incomes idNUMBER applicant_idNUMBER application_idNUMBER employer_nameVARCHAR2 employment_typeVARCHAR2 job_titleVARCHAR2 gross_annual_inco…NUMBER pay_frequencyVARCHAR2 currency_codeCHAR start_dateDATE end_dateDATE verification_stat…VARCHAR2 verification_meth…VARCHAR2 verified_atTIMESTAMP credit_decisions idNUMBER application_idNUMBER decisionVARCHAR2 decision_sourceVARCHAR2 policy_versionVARCHAR2 credit_scoreNUMBER score_modelVARCHAR2 risk_gradeCHAR debt_to_incomeNUMBER approved_amount_m…NUMBER approved_rateNUMBER approved_term_mon…NUMBER decided_byVARCHAR2 expires_onDATE decided_atTIMESTAMP decision_reasons idNUMBER decision_idNUMBER reason_codeVARCHAR2 reason_textVARCHAR2 reason_rankNUMBER is_adverseCHAR attribute_valueVARCHAR2 loans idNUMBER application_idNUMBER borrower_idNUMBER product_idNUMBER loan_numberVARCHAR2 principal_minorNUMBER currency_codeCHAR annual_rateNUMBER term_monthsNUMBER installment_minorNUMBER origination_fee_m…NUMBER outstanding_princ…NUMBER accrued_interest_…NUMBER days_past_dueNUMBER schedule_versionNUMBER statusVARCHAR2 disbursed_onDATE first_payment_onDATE maturity_onDATE closed_onDATE loan_schedule_entri… idNUMBER loan_idNUMBER schedule_versionNUMBER installment_numberNUMBER due_onDATE opening_balance_m…NUMBER scheduled_princip…NUMBER scheduled_interes…NUMBER scheduled_fee_min…NUMBER total_due_minorNUMBER closing_balance_m…NUMBER paid_principal_mi…NUMBER paid_interest_min…NUMBER paid_fee_minorNUMBER statusVARCHAR2 settled_onDATE repayments idNUMBER loan_idNUMBER payment_referenceVARCHAR2 amount_minorNUMBER currency_codeCHAR payment_methodVARCHAR2 is_scheduledCHAR statusVARCHAR2 return_reasonVARCHAR2 received_onDATE value_onDATE created_atTIMESTAMP repayment_allocatio… idNUMBER repayment_idNUMBER schedule_entry_idNUMBER allocation_typeVARCHAR2 amount_minorNUMBER is_reversalCHAR applied_atTIMESTAMP delinquency_snapsho… idNUMBER loan_idNUMBER as_of_dateDATE days_past_dueNUMBER bucketVARCHAR2 past_due_principa…NUMBER past_due_interest…NUMBER past_due_fees_min…NUMBER total_past_due_mi…NUMBER is_non_performingCHAR created_atTIMESTAMP collection_activiti… idNUMBER loan_idNUMBER snapshot_idNUMBER activity_typeVARCHAR2 channelVARCHAR2 agent_referenceVARCHAR2 outcomeVARCHAR2 promised_amount_m…NUMBER promised_onDATE notesCLOB occurred_atTIMESTAMP next_action_onDATE

Related database schemas