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

# Integrations

> How 9Squid integrates with loan servicing systems, fund administration platforms, CRMs, and banking rails.

9Squid is a system of record for deal-level on-chain state and a system of engagement for the syndication workflow. For everything else — loan servicing, fund administration, shadow accounting, treasury, CRM — 9Squid integrates rather than replaces. Off-chain activity is mirrored on-chain; on-chain activity is surfaced back into partner systems for reporting, accounting, and reconciliation.

***

## Authentication

All server-to-server integrations use **OAuth 2.0 client credentials**. Additional security options:

| Feature         | Details                                                                       |
| --------------- | ----------------------------------------------------------------------------- |
| API key scopes  | Per-organization, per-endpoint scopes (read, write, admin)                    |
| IP allowlists   | Supported at the organization level                                           |
| mTLS            | Optional for high-sensitivity partners (servicers, trustees, transfer agents) |
| Audit log       | Every API call logged and surfaced to Admin users in the webapp               |
| Webhook signing | HMAC-SHA256 signature on every delivery via `X-9Squid-Signature` header       |

***

## Loan Servicing

Direct integrations with major credit union servicing platforms:

| Platform   | System            |
| ---------- | ----------------- |
| Symitar    | Episys            |
| Corelation | KeyStone          |
| Fiserv     | DNA, Portico, XP2 |
| Jack Henry | CruiseNet         |
| FIS        | —                 |

For platforms not listed above, 9Squid supports standard loan tape formats via **SFTP** with field-level validation and auto-mapping.

### Typical Data Flow

```
1. Daily or monthly loan tape upload from servicer of record
2. 9Squid QC pass, stratification refresh, reserve account check
3. Monthly remittance report from master servicer
4. Waterfall calculation and distribution instructions
5. Remittance data mirrored to on-chain state (pool factor, balance, delinquency buckets)
```

***

## Fund Administration and Shadow Accounting

| Platform                | Integration                        |
| ----------------------- | ---------------------------------- |
| iLevel                  | Position and valuation sync        |
| Allvue / Black Mountain | Deal lifecycle and cash flow sync  |
| Juniper Square          | Investor reporting sync            |
| Generic Positions API   | Available for additional providers |

***

## Treasury and Banking

| Rail                      | Details                                                             |
| ------------------------- | ------------------------------------------------------------------- |
| ACH / Wire                | Via deal trustee for subscription receipts and distribution payouts |
| USDC on/off-ramp          | Via Circle Mint for deals/investors electing on-chain settlement    |
| Bank account verification | Via Plaid or manual micro-deposit                                   |

***

## CRM and Distribution

| Platform   | Sync                                                                    |
| ---------- | ----------------------------------------------------------------------- |
| Salesforce | Bidirectional sync of investor contacts, deal interest, and allocations |
| HubSpot    | Lead capture, NDA status, and deal-stage sync                           |
| CSV upload | Available for one-off network invitations                               |

To connect your CRM, contact [support@9squid.com](mailto:support@9squid.com).

***

## Webhooks

Every webhook event is delivered with:

* A **signed payload** (HMAC-SHA256 via `X-9Squid-Signature`)
* A **monotonically increasing event ID** — use this to deduplicate at-least-once deliveries
* **At-least-once delivery semantics** — your endpoint must be idempotent

### Event Reference

| Event                       | Triggered when                                       |
| --------------------------- | ---------------------------------------------------- |
| `deal.listed`               | Deal moved from draft to listed state                |
| `deal.updated`              | Deal's terms, documents, or disclosures updated      |
| `investor.access_requested` | Investor requested deal access                       |
| `investor.access_granted`   | Originator admin granted data-room access            |
| `offer.submitted`           | Investor submitted an allocation offer               |
| `offer.allocated`           | Originator accepted or partially accepted an offer   |
| `deal.closed`               | Deal closed and tokens minted                        |
| `remittance.posted`         | New monthly remittance report available              |
| `distribution.executed`     | Distribution executed per waterfall                  |
| `token.transferred`         | Secondary transfer settled on ledger                 |
| `compliance.flag_raised`    | Investor's eligibility status changed                |
| `deal.status_changed`       | A deal moves to a new status                         |
| `loan.approved`             | A loan deal is approved for securitization           |
| `loan.rejected`             | A loan deal is rejected                              |
| `trade.settled`             | An investor trade reaches settlement                 |
| `sc.completed`              | A Selection Criteria job finishes                    |
| `document.uploaded`         | A document is successfully uploaded to the deal room |

See the [Webhooks workflow](/workflows/webhooks) for setup instructions and signature verification.

***

## API Endpoints Reference

### Originator Endpoints

| Method | Path                                | Purpose                         |
| ------ | ----------------------------------- | ------------------------------- |
| `POST` | `/v1/deals`                         | Create deal in draft state      |
| `POST` | `/v1/deals/{dealId}/tape`           | Upload or append to loan tape   |
| `GET`  | `/v1/deals/{dealId}/stratification` | Retrieve current stratification |
| `POST` | `/v1/deals/{dealId}/list`           | List a drafted deal             |
| `POST` | `/v1/deals/{dealId}/remittance`     | Post monthly remittance         |

### Investor Endpoints

| Method | Path                                | Purpose                                              |
| ------ | ----------------------------------- | ---------------------------------------------------- |
| `GET`  | `/v1/deals`                         | List deals visible to investor                       |
| `POST` | `/v1/deals/{dealId}/access-request` | Request deal access                                  |
| `POST` | `/v1/deals/{dealId}/offers`         | Submit offer                                         |
| `GET`  | `/v1/positions`                     | Retrieve current positions and pending distributions |
| `GET`  | `/v1/distributions`                 | Retrieve distribution history                        |

### Service Provider Endpoints

| Method | Path                                  | Purpose                                                     |
| ------ | ------------------------------------- | ----------------------------------------------------------- |
| `POST` | `/v1/deals/{dealId}/book-entry`       | Record/update book-entry position (transfer agent)          |
| `POST` | `/v1/deals/{dealId}/trustee-events`   | Post trustee events (reserve draws, covenant events)        |
| `POST` | `/v1/deals/{dealId}/servicing-events` | Post servicing events (delinquency, charge-off, repurchase) |

***

## Rate Limits

| Integration Type                 | Limit                                     |
| -------------------------------- | ----------------------------------------- |
| Default                          | 100 requests per 60 seconds per API key   |
| Servicer/trustee batch endpoints | Higher ceiling negotiated per integration |

See [Error Handling](/error-handling#429-too-many-requests) for how to handle `429 Too Many Requests` responses.

***

## Versioning and Change Management

* All endpoints are versioned under `/v1/`
* Breaking changes are introduced only in new major versions
* Each new version runs **parallel with the prior version for at least 180 days**
* Non-breaking changes are announced in advance via the [Changelog](/changelog)

For integration design discussions, contact [developers@9squid.com](mailto:developers@9squid.com).

***

## AI Agents (MCP)

The 9squid Platform exposes a [Model Context Protocol (MCP)](/mcp-server/overview) server that lets AI agents like Claude interact directly with the platform through structured tool calls — loan uploads, pool analysis, deal browsing, portfolio queries, and more.

See the [MCP Integration guide](/mcp-server/overview) for setup and usage.

***

## Sandbox

A full sandbox environment is available with:

* Deterministic test data
* Simulated remittances
* Mock investor wallets

Request sandbox access at [developers@9squid.com](mailto:developers@9squid.com).

***

## CLI

For scripting and CI use cases, the [9squid CLI](/cli) wraps the same Originator and Investor endpoints — loan tapes, selection criteria, pools, deals, subscriptions, webhooks, and alerts — with table/JSON output and stable exit codes.
