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

# Build deposit (yield)

> Build an unsigned Solana deposit transaction and return fee metadata.

<ParamField header="x-api-key" type="string" required placeholder="your-api-key">
  Your StarkFi API key.
</ParamField>

<ParamField body="provider" type="enum<string>" required>
  `jupiter_lend` or `kamino`.
</ParamField>

<ParamField body="chain_name" type="string" required>
  Enabled chain, e.g. `solana`.
</ParamField>

<ParamField body="asset" type="string" required>
  Token symbol accepted by the provider resolver.
</ParamField>

<ParamField body="wallet" type="string" required>
  User Solana public key.
</ParamField>

<ParamField body="amount" type="string" required>
  Decimal amount to deposit, e.g. `"10.0"`.
</ParamField>

<RequestExample>
  ```bash cURL theme={null}
  curl --request POST \
    --url https://api.starkfi.io/yield/deposit \
    --header 'Content-Type: application/json' \
    --header 'x-api-key: <api_key>' \
    --data '{
      "provider": "jupiter_lend",
      "chain_name": "solana",
      "asset": "USDC",
      "wallet": "FmTGYpzX27fDqaiytXUdFVaphC5o68G61Q3uhVM2d8bm",
      "amount": "10.0"
    }'
  ```
</RequestExample>

<ResponseExample>
  ```json 200 - Success theme={null}
  {
    "statusCode": 200,
    "success": true,
    "status": "deposit_yield_strategy_ok",
    "message": "Yield strategy deposited successfully",
    "data": {
      "transaction": "AQAAAAA...",
      "charged_starkfi_fee_amount": 0.1,
      "charged_whitelabel_fee_amount": 0.05,
      "starkfi_fee_percentage_applied": 0.5,
      "used_yield_starkfi_custom_fee": false
    }
  }
  ```

  ```json 400 - Bad Request theme={null}
  {
    "statusCode": 400,
    "success": false,
    "status": "invalid_parameters",
    "message": "chain_name \"unknown\" is not a valid or enabled chain"
  }
  ```
</ResponseExample>

### Response

<ResponseField name="data.transaction" type="string">
  Base64-encoded **unsigned** Solana transaction wire. Sign and broadcast on your RPC, or optionally via [Broadcast yield](/broadcast).
</ResponseField>

<ResponseField name="data.charged_starkfi_fee_amount" type="number">
  StarkFi fee amount applied to this deposit when configured.
</ResponseField>

<ResponseField name="data.charged_whitelabel_fee_amount" type="number">
  Whitelabel fee amount applied when configured.
</ResponseField>
