> ## Documentation Index
> Fetch the complete documentation index at: https://docs.swippee.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Products

> The focused views you can derive from a parsed report — Income, Identity, Balance, Liabilities, Score, Verify, Underwriting.

Once a report is `complete`, each product is a focused `GET` on it. All take a
Bearer key and return JSON shaped for that one product — call only what you
need, **billed as one parse** regardless of how many you read.

| Product        | Endpoint                              | Returns                                                                                                                                                                                                                                                      |
| -------------- | ------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| Asset Report   | `GET /v1/reports/:id/asset-report`    | The full underwriting view — statement, signals, monthly summary, categories, and every transaction.                                                                                                                                                         |
| Income         | `GET /v1/reports/:id/income`          | Salary detection (amount, regularity, day-of-month), `income_sources` broken down by type (SALARY / REMITTANCE / INTEREST) with per-source totals + pay frequency, `total_income`, monthly credits, stability score, and income transactions.                |
| Identity       | `GET /v1/reports/:id/identity`        | Account holder, account number, bank, currency, and statement period.                                                                                                                                                                                        |
| Auth           | `GET /v1/reports/:id/auth`            | Verified numbers: account holder + number, institution SWIFT/BIC, and a `verification_status`.                                                                                                                                                               |
| Name match     | `POST /v1/reports/:id/identity/match` | Send the applicant's claimed name → 0–100 `match_score` + result (`match`/`partial_match`/`no_match`) vs the statement's account holder. Order/initial/honorific/transliteration-tolerant.                                                                   |
| Balance        | `GET /v1/reports/:id/balance`         | Opening/closing balances, average and minimum balance, and the balance trend.                                                                                                                                                                                |
| Cash Flow      | `GET /v1/reports/:id/cashflow`        | Total + 30/60/90-day inflow/outflow, net cash flow, average monthly balances, NSF/overdraft count, longest transaction gap.                                                                                                                                  |
| Recurring      | `GET /v1/reports/:id/recurring`       | Recurring inflow + outflow streams (salary, rent, EMIs, subscriptions) — cadence, average amount, MATURE/EARLY status, active flag, forecast next date.                                                                                                      |
| Counterparties | `GET /v1/reports/:id/counterparties`  | Inflow/outflow split by counterparty type (merchant / individual / institution / wallet / cash) plus top named people and merchants.                                                                                                                         |
| Liabilities    | `GET /v1/reports/:id/liabilities`     | EMI/loan obligations bucketed by detected lender, monthly EMI total, EMI load %, and bounce count.                                                                                                                                                           |
| Score          | `GET /v1/reports/:id/score`           | A single 0–1000 creditworthiness score derived from the statement signals.                                                                                                                                                                                   |
| Verify         | `GET /v1/reports/:id/verify`          | Forgery/tamper detection — a verdict (`authentic` \| `review` \| `suspicious`), confidence, a derived `risk_score` (0–100) + `risk_band` + categorised `risk_reasons`, a `risk_coverage` flag (`full`/`partial`), and every check with pass/fail + severity. |
| Trust          | `GET /v1/reports/:id/trust`           | Two-axis decision score — affordability **and** integrity (both 1–99), with `integrity_basis`, `integrity_confidence`, and an `overall_band` (`ACCEPT` \| `REVIEW` \| `REJECT`).                                                                             |
| Underwriting   | `POST /v1/reports/:id/underwriting`   | Full lender decision: FOIR, disposable income, max supportable EMI, risk flags, approve/review/decline verdict. **Bills 1 unit per call.**                                                                                                                   |

```bash theme={null}
# fetch just the income view of a completed report
curl https://api.swippee.com/v1/reports/cl_abc123/income \
  -H "Authorization: Bearer $SWIPPEE_API_KEY"
```

<Note>
  `enrich` is a transform endpoint (`POST /v1/enrich`) — send raw transactions,
  get merchant / MCC / category tags back. `connect` is the hosted upload flow —
  see the [Connect guide](/guides/connect).
</Note>

## Decisions & outcomes (closed-loop feedback)

Tell Swippee what you decided and what actually happened, so the score learns
from real lending results:

```bash theme={null}
# 1. record your decision (keyed by your own reference)
curl https://api.swippee.com/v1/decisions -H "Authorization: Bearer $SWIPPEE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "client_reference_id": "loan-1001", "decision": "approved", "amount": 250000 }'

# 2. later, report the outcome
curl https://api.swippee.com/v1/outcomes -H "Authorization: Bearer $SWIPPEE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "client_reference_id": "loan-1001", "outcome": "defaulted", "detail": "90+ DPD" }'
```

`decision` ∈ `approved` | `review` | `declined`; `outcome` ∈ `repaid` |
`delinquent` | `defaulted` | `written_off`. `GET /v1/decisions?outcome=defaulted`
lists what you've recorded.

## Issued statements

`GET /v1/statements` lists the verifiable statements your organization has
issued. Each carries a tamper-evident `content_hash` (SHA-256 of the canonical
statement), a `status` (`issued` | `revoked`), and a `verify_url` anyone can use
to confirm it's genuine. The single-statement detail and the upload-to-check
flow are public at `/v1/verify/{token}`.
