OneMain Financial app icon

US personal-loan servicing data

Getting loan, statement and VantageScore data out of OneMain Financial

Every active OneMain loan sits behind one online account: a running balance, a payoff figure, a dated payment ledger, paperless statements, a VantageScore that refreshes once a month, and the Trim spending feed. None of it is anonymous and none of it is local — it is the borrower's own servicing record, held server-side and reachable only after the borrower signs in. That is exactly the kind of account a debt-management tool, a budgeting app, or a servicer's own reconciliation stack wants to read on a schedule, and it is what this brief maps.

The bottom line: there is real, structured, per-borrower data here, and it all sits behind a single authenticated session rather than scattered across surfaces. The route that holds up is the borrower authorizing access to their own account and us implementing that session faithfully. Everything below is built around that.

What the account holds

These are the surfaces the app and the matching web account actually expose, named the way OneMain presents them to a borrower.

Data domainWhere it comes from in the appGranularityWhat an integrator does with it
Loan balance & payoffAccount home / loan summaryCurrent balance, payoff quote, next due date and amountDrive a unified payoff view or a balance widget alongside other accounts
Payment historyPayments / activity ledgerPer-payment: date, amount, method, posted statusReconcile against a borrower's bank feed; detect missed or partial payments
AutoPay scheduleAutoPay / Direct Pay setupCadence (monthly, semimonthly or biweekly), funding account, next runForecast cash flow and surface the next scheduled debit
Billing statementsPaperless statementsPer-period statement documents and the account number on eachArchive, parse for finance charges, or feed a document workflow
VantageScoreCredit monitoring tileCurrent score plus month-over-month trendPlot a credit-health line in a personal-finance dashboard
Trim spendingTrim by OneMainTracked spend, subscription and recurring-bill signalsPull categorized spend into a budgeting or savings product

Routes that actually apply here

Three are realistic for OneMain; one is clearly the spine.

Borrower-consented account access (the one we'd build on)

The borrower authorizes access to their own OneMain online account, and we implement the authenticated session — sign-in, the token or cookie chain, and the calls behind the balance, ledger, statements and score. Everything in the table above is reachable this way because it all lives behind the same login. Effort is moderate, durability is good as long as a maintenance pass tracks front-end changes, and access is arranged with you during onboarding against a consenting account.

Aggregator liabilities, as a complement

Bank-data aggregators expose normalized loan and liability fields, but their loan coverage is strongest for cards, mortgages and student loans; a OneMain unsecured installment loan is not a guaranteed first-class object there. We use this where it adds clean normalized fields, never as the authoritative source for balance or payoff.

Statement documents, as backfill

Paperless statements are a stable, period-stamped record. They lag the live balance and need parsing, so they are a reconciliation and audit backstop rather than a real-time feed.

We would build on the consented-account route and treat the other two as support: aggregator fields where they are reliably present, statement PDFs to reconcile and to cover history the live screens do not show.

What lands in your repo

Concrete artefacts, each tied to a OneMain surface rather than a generic checklist:

  • An OpenAPI/Swagger spec covering authentication, loan summary, payment history, the statement list and document fetch, AutoPay state and the VantageScore tile.
  • A protocol and auth-flow report: the sign-in step, the session token or cookie chain on the OneMain online account, refresh behaviour and any step-up prompt.
  • Runnable source in Python and Node.js for authenticate, get-loan-summary, list-and-fetch-statements, get-payment-ledger and get-VantageScore.
  • A normalized schema that maps OneMain's fields onto one loan object so it drops into a multi-account model.
  • Automated tests run against a consenting account, plus interface documentation and GLBA-aware data-retention and consent guidance.

The build, in concrete terms

The shape below is illustrative; exact field and endpoint names are confirmed during the build against a consenting account, not asserted here.

POST /auth/session
  body: { username, password, device }
  -> 200 { session_token, mfa_required: bool }

# step-up only when the account is enrolled for it
POST /auth/mfa  { session_token, otp }  -> 200 { session_token }

GET /loan/summary            (Authorization: Bearer <session_token>)
  -> 200 {
       account_id, status,
       current_balance, payoff_amount,
       next_payment: { due_date, amount },
       autopay: { enabled, cadence, funding_account_last4 }
     }

GET /loan/payments?from=2025-01-01
  -> 200 { payments: [ { date, amount, method, status } ] }

GET /loan/statements         -> 200 { statements: [ { period, doc_id } ] }
GET /loan/statements/{doc_id}/pdf

GET /credit/vantagescore     -> 200 { score, as_of, trend_30d }
# refreshed ~monthly: cache on as_of, do not poll like a balance

# error handling: re-auth on 401, honour Retry-After on 429,
# treat an empty statements list as "not yet enrolled", not "none"

The normalized object we hand back keeps the same shape regardless of which route filled it:

{
  "lender": "onemain",
  "loan": { "balance": 0.0, "payoff": 0.0, "currency": "USD",
            "term_months": null, "next_due": { "date": null, "amount": 0.0 } },
  "autopay": { "enabled": false, "cadence": null },
  "payments": [],
  "statements": [],
  "credit": { "vantagescore": null, "as_of": null },
  "source": "consented-account|aggregator|statement-pdf",
  "fetched_at": "ISO-8601"
}

Where OneMain sits in US data-rights law

OneMain is a state-licensed consumer-installment lender and loan servicer — OneMain Financial Group, LLC, NMLS# 1339418 per its legal disclosures — not a bank. It holds the borrower's own servicing records. The federal rule that would otherwise dictate how a firm like OneMain hands those records to an authorized third party is back in rulemaking and not currently enforced (the CFPB reopened the personal-financial-data-rights rule for reconsideration in 2025), so the route that is dependable today is the borrower authorizing access to their own OneMain account, not a mandated standardized feed. We operate that way regardless: authorized and consented access, with the consent scope, expiry and revocation recorded. US financial-privacy law — the Gramm-Leach-Bliley Act — frames how this data is handled, and the VantageScore is consumer-report-adjacent, so we minimize it, keep it to the consented purpose, and sign an NDA where the work touches a borrower base.

Things we plan for on a OneMain build

Specific to this app, written as what we handle:

  • Three AutoPay cadences. OneMain runs monthly, semimonthly and biweekly schedules. We model the schedule object so "next payment" logic is correct on a biweekly loan, not just a monthly one — a common place naive integrations get the forecast wrong.
  • A once-monthly score. The VantageScore updates roughly monthly. We key the sync to its as_of stamp and cache it, so the integration neither presents last month's score as fresh nor hammers an endpoint that only changes twelve times a year.
  • Two distinct portals. Branch and personal loans run through the standard online account; secured and auto loans use a separate client portal with its own sign-in and record shape. We scope per portal because a borrower can hold loans across both, and the auth differs.
  • Enrollment and statement gating. An account that has not opted into paperless statements returns an empty list, which is not the same as "no statements". We capture the enrollment state so downstream logic does not misread it; access to a consenting account is arranged with you during onboarding.

Where integrators put this

  • A debt-payoff app syncing a user's OneMain balance, payoff quote and next payment into a single payoff plan beside their other debts.
  • A personal-finance dashboard charting the monthly VantageScore trend alongside accounts pulled from elsewhere.
  • A servicer or collections team reconciling statement PDFs and the payment ledger across a base of consented borrowers.
  • A budgeting product ingesting Trim's categorized spend and recurring-bill signals.

Screens we worked from

Store screenshots used while mapping the surfaces above. Tap to enlarge.

OneMain Financial screen 1 OneMain Financial screen 2 OneMain Financial screen 3 OneMain Financial screen 4 OneMain Financial screen 5 OneMain Financial screen 6 OneMain Financial screen 7 OneMain Financial screen 8
OneMain Financial screen 1 enlarged
OneMain Financial screen 2 enlarged
OneMain Financial screen 3 enlarged
OneMain Financial screen 4 enlarged
OneMain Financial screen 5 enlarged
OneMain Financial screen 6 enlarged
OneMain Financial screen 7 enlarged
OneMain Financial screen 8 enlarged

What we read, and when

We worked from OneMain's own app and account material, its licensing disclosures, the CFPB's current rulemaking status, and aggregator liabilities documentation, cross-checked against the public app listing. Primary sources: OneMain's app overview, OneMain legal disclosures and state licensing, the CFPB personal-financial-data-rights reconsideration, and Plaid's Liabilities documentation. Compiled by the OpenBanking Studio integration desk, 17 May 2026.

Other US installment lenders you might fold into one feed

Same category, similar account data — useful when a product needs to read more than one lender through a single integration. Listed for context, not ranked.

  • Upgrade — online personal loans and a linked account; holds balance, payment schedule and credit-monitoring data per user.
  • Avant — installment loans and cards for fair-credit borrowers; per-account balance and payment history.
  • LendingPoint — personal loans with a servicing portal carrying payoff and payment records.
  • Best Egg — larger online personal loans; account view with balance and statement history.
  • SoFi — personal loans inside a broader account that also spans banking and investing data.
  • OppLoans — short-term installment loans with a payment-tracking account.
  • NetCredit — installment loans and lines of credit; servicing data per borrower.
  • Universal Credit — personal loans with credit-health tracking alongside the loan record.
  • Happy Money — payoff-focused personal loans with a balance-and-progress account.
  • Achieve — debt-resolution and personal loans with a per-user servicing dashboard.

Questions a OneMain integrator tends to ask

Does a OneMain personal loan show up through bank-data aggregators, or only inside the account itself?

Aggregator liabilities feeds are strongest for credit cards, mortgages and student loans. A OneMain unsecured installment loan is not a guaranteed first-class object there, so the dependable surface is the borrower's own OneMain online account, where the balance, payoff and ledger are authoritative. We treat an aggregator as a complement for normalized fields, not the primary source.

Can the monthly VantageScore and the Trim spending feed be read the same way as the loan ledger?

Yes — they live behind the same authenticated session as the balance and statements, so one consented login reaches all of them. The VantageScore is consumer-report-adjacent data that refreshes monthly, so we key the sync to that cadence and handle it under the borrower's consent with data minimization rather than polling it like a balance.

OneMain also services secured and auto loans through a separate portal — is that in or out?

It is a distinct surface. Branch and personal loans run through the standard online account, while secured and auto loans use a separate client portal with its own sign-in and record shapes. We scope per portal and can cover both when a borrower holds loans across them.

What happens to the integration the next time OneMain reworks the online account front end?

The authentication and data contract behind the account tends to move far less often than the screens. We capture the request and response shapes, not the markup, and a maintenance pass re-validates the flows when the front end shifts so the integration keeps returning the same normalized object.

A OneMain integration lands in your repo inside one to two weeks. You can take it as delivered source code from $300, paid only after we hand it over and you have confirmed it works against a consenting account; or skip the build and call our hosted endpoints instead, paying per call with nothing upfront. Tell us the app and what you need from its data at /contact.html — access, sandboxing and the compliance paperwork are arranged with you from there, not asked of you before we start.

App profile — OneMain Financial

OneMain Financial (package com.springleaf.mobile, per Google Play; also on iOS) is the servicing app for OneMain personal loans. An active OneMain account is required to use it. The app makes loan payments, turns on AutoPay, enrolls in paperless statements and payment alerts, shows a monthly VantageScore, and includes Trim by OneMain for spend tracking and savings. Per the app's store listing, OneMain personal loans run roughly $1,500–$20,000 over 24–60 month terms with APR up to 35.99%, with state-specific minimums, maximums and origination fees. OneMain Financial Group, LLC holds NMLS# 1339418 and is licensed under various US state consumer-lending regimes, per its legal disclosures. This recap is descriptive only.

Mapping last checked 2026-05-17.