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

# Fund request flow

> Payer fulfills a money request — required config with amount, currency, and requestData

## Overview

**`fund-request`** is the **payer** side of request money. The link config carries the amount, currencies, and requester/payout profile (`requestData`) so the payer can quote and fund without re-entering the ask.

<Warning>
  Unlike `request` or `smart`, **`config` is required** for `fund-request`. Omitting amount / currency / `requestData` fails validation.
</Warning>

## Required config (conceptual)

| Field                                    | Role                                                   |
| ---------------------------------------- | ------------------------------------------------------ |
| `amount`                                 | Pinned amount (send or receive, per `amountAnchor`)    |
| `sourceCountry` / `destinationCountry`   | ISO 3166-1 alpha-2 corridor                            |
| `sourceCurrency` / `destinationCurrency` | ISO 4217 codes                                         |
| `requestData`                            | Requester profile + payout method (Request API–shaped) |
| `amountAnchor`                           | Optional: `send` (default) or `receive`                |

Exact property names and nested payout shapes are in OpenAPI (`CreateFundRequestLinkDto`).

## Create example

```bash theme={null}
curl -X POST https://raas-widgets-backend-sandbox.up.railway.app/partner/links \
  -H "X-API-Key: raas_sandbox_your_api_key_here" \
  -H "Content-Type: application/json" \
  -d '{
    "referenceId": "payer_user_456",
    "flow": "fund-request",
    "expiresInMinutes": 1440,
    "config": {
      "amount": 100,
      "amountAnchor": "send",
      "sourceCountry": "US",
      "destinationCountry": "MX",
      "sourceCurrency": "USD",
      "destinationCurrency": "MXN",
      "requestData": {
        "name": {
          "firstName": "Lucia",
          "lastName": "Mendez"
        },
        "payoutMethod": {
          "type": "bank_account",
          "bankAccount": {
            "country": "MX",
            "accountNumber": "012345678901234567"
          }
        }
      }
    }
  }'
```

<Tip>
  Often the **request** flow mints this payer link for you after the requester finishes. Use Partner create when you already have a complete ask payload (migration from Request API, server-side orchestration).
</Tip>

## After the payer pays

When the sender confirms funding, RaaS Widgets creates an **operation**. You receive `operation.created` (often with `requestId`) and later `operation.completed`, `operation.failed`, or `operation.cancelled`.

See [Request money lifecycle](/raas-widgets/request-api/lifecycle) and [Operation lifecycle](/raas-widgets/ops/operation-lifecycle).

## Related

<CardGroup cols={2}>
  <Card title="Request" icon="envelope-open-dollar" href="/raas-widgets/flows/request">
    Originate the money request.
  </Card>

  <Card title="Request money lifecycle" icon="arrows-split-up-and-left" href="/raas-widgets/request-api/lifecycle">
    Ask → fund-request → operation.
  </Card>

  <Card title="Operations" icon="list" href="/raas-widgets/ops/operations">
    List transfers after the payer completes.
  </Card>
</CardGroup>
