# Wealth (Fixed Income)

> Subscribe to Alpha Ladder Fixed Income Products (FIP) — flexible and fixed-term — after completing the investor precheck via the MCP API.

Deploy idle balances into Alpha Ladder's Fixed Income Products (FIP). FIPs offer both flexible (open-term) and fixed-term options across fiat currencies such as USD, EUR, and SGD, each with an estimated APR.

## Before you start

Call `get_module_permissions` and confirm the `wealth` module returns `hasPermission: true`. See [Module permissions](/developers/financial-services/concepts#module-permissions).

## The flow

<Steps>

<Step>

**Run the investor precheck** — call `investor_precheck` to verify the user has signed the required agreements and completed the investor declaration before any FIP subscription. Returns two boolean flags:

- `Master Brokerage Agreement & Trading Rules` — must be `true`.
- `investorDeclarationTag` — must be `true`.

<Callout type="info">Both flags must be `true` before calling `fip_subscribe`. If either is `false`, direct the user to complete the outstanding agreement or declaration via the Alpha Ladder platform before continuing.</Callout>

</Step>

<Step>

**List available products** — call `get_fip_products` to list all available FIP products, both flexible (`termType: 1`) and fixed-term (`termType: 2`). Each product entry includes:

- `productCode`, `productName`, `term` (human-readable label), `estApr` (estimated APR range).
- `currencyItemList[]` — per-currency options with `id`, `currency`, `estApr`, `termDays`, `liquidity`, and `mhp` (minimum holding period).
- Negative `termDays` values indicate flexible settlement products (e.g. T+1).

</Step>

<Step>

**Retrieve the agreement** — call `get_fip_agreement` (productType, productCode, currency) to retrieve the PDF agreement documents for the selected product and currency. Present the `show_name` and `url` links to the user so they can review the agreement before subscribing.

</Step>

<Step>

**Subscribe** — call `fip_subscribe` (id, currency, termDays, subscriptionAmount) to submit the subscription order.

<Callout type="warn">Destructive — confirm the product, currency, term, and subscription amount with the user before calling this tool.</Callout>

- `id` — the `currencyItemList[].id` from the product listing.
- `currency` — must match the selected currency item.
- `termDays` — use the `termDays` value from the currency item; negative values are used for flexible products.
- `subscriptionAmount` — the amount to invest in the specified currency.

`termType 1` = flexible / open term; `termType 2` = fixed term.

</Step>

</Steps>

## Ask in chat

> "I want to earn yield on my idle USD. What fixed income products are available?"

The agent will run `investor_precheck` to confirm eligibility, list products via `get_fip_products`, present the APR options and agreement links from `get_fip_agreement`, and then subscribe via `fip_subscribe` after your explicit confirmation.

## What you get back

`fip_subscribe` returns a confirmation object with:

| Field | Description |
|---|---|
| `currency` | Subscribed currency |
| `subscriptionAmount` | Subscription amount |
| `subscriptionDate` | Date the subscription was placed |
| `returnsAccrualStartDate` | Date when yield begins to accrue |
| `initialRedemptionOpeningDay` | Earliest date redemption is available |
| `settlementDate` | Settlement date description |

For full response conventions, see [Response Reference](/developers/financial-services/responses).
