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

# Onramp

> Collect fiat via mobile money and release stablecoins to an address. Amount limits are per transaction.

Starts a local collection and, after success, releases crypto to the destination wallet.

<ParamField path="currency_code" type="string" required>
  e.g. `KES`, `UGX`, `GHS`, `MWK`, `CDF`.
</ParamField>

<ParamField body="shortcode" type="string" required>
  Customer phone / mobile money number (10 digits for KES/UGX).
</ParamField>

<ParamField body="amount" type="number" required>
  Fiat amount to collect. Limits are per transaction — see [Limits](/limits).
</ParamField>

<ParamField body="mobile_network" type="string" required>
  Network operator for the market (e.g. `Safaricom`, `Airtel`, `MTN`).
</ParamField>

<ParamField body="address" type="string" required>
  Destination wallet address for released assets.
</ParamField>

<ParamField body="chain" type="string" required>
  `BASE` or `CELO`.
</ParamField>

<ParamField body="asset" type="string" required>
  `USDC` on BASE; `USDT` on CELO.
</ParamField>

<ParamField body="callback_url" type="string">
  Optional webhook URL.
</ParamField>

<ParamField body="reference" type="string">
  Optional client reference.
</ParamField>

## Amount limits

Per-transaction min/max by currency: [Limits](/limits).

<RequestExample>
  ```bash theme={null}
  curl -X POST "{{base_url}}/v1/onramp/KES" \
    -H "x-api-key: YOUR_CONSUMER_KEY" \
    -H "Content-Type: application/json" \
    -d '{
      "shortcode": "254712345678",
      "amount": 500,
      "mobile_network": "Safaricom",
      "address": "0xYourWallet",
      "chain": "BASE",
      "asset": "USDC"
    }'
  ```
</RequestExample>
