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

# Platform Fees

> Configure platform fees with feePercentage and feeAddress

## Overview

Platform fees let your product collect an additional fee during payment execution.

To configure a platform fee, pass:

* `feePercentage`
* `feeAddress`

Use this page for setup and integration patterns. For protocol-level fees charged by Request Network, see [Protocol Fees](/api-features/protocol-fees).

## Required Parameters

<ParamField query="feePercentage" type="string">
  Fee percentage to apply at payment time (for example `"2.5"` for 2.5%).
</ParamField>

<ParamField query="feeAddress" type="string">
  Wallet address that receives the platform fee.
</ParamField>

<Warning>
  `feePercentage` and `feeAddress` must be provided together. If one is missing, validation fails.
</Warning>

## Validation Rules

* `feePercentage` must be a number between `0` and `100`
* `feeAddress` must be a valid blockchain address
* On `GET /v2/request/{requestId}/pay` these are **query** parameters; on `POST /v2/payouts` and `POST /v2/payouts/batch` they're **body** parameters

## Endpoint Usage

Use platform fee parameters on these endpoints:

* [GET /v2/request/{requestId}/pay](https://api.request.network/open-api/#tag/v2request/GET/v2/request/\{requestId}/pay)
* [POST /v2/payouts](https://api.request.network/open-api/#tag/v2payouts/POST/v2/payouts)
* [POST /v2/payouts/batch](https://api.request.network/open-api/#tag/v2payouts/POST/v2/payouts/batch)

## How to Add Platform Fees

<Steps>
  <Step title="Choose your fee policy">
    Set the percentage and receiver address used by your platform.
  </Step>

  <Step title="Pass fee parameters on payment call">
    Add `feePercentage` and `feeAddress` to the payment endpoint call.
  </Step>

  <Step title="Execute payment as usual">
    The API returns payment payloads that include fee handling. Your app executes the returned transactions as usual.
  </Step>
</Steps>

## Integration Examples

### Request-based payment

```bash cURL theme={null}
curl -X GET 'https://api.request.network/v2/request/{requestId}/pay?feePercentage=2.5&feeAddress=0x742d35CC6634c0532925a3B844BC9e7595f8fA40' \
  -H 'x-api-key: YOUR_API_KEY'
```

### Direct payout

```bash cURL theme={null}
curl -X POST 'https://api.request.network/v2/payouts' \
  -H 'x-api-key: YOUR_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{
    "payee": "0x6923831ACf5c327260D7ac7C9DfF5b1c3cB3C7D7",
    "amount": "100",
    "invoiceCurrency": "USD",
    "paymentCurrency": "USDC-base",
    "feePercentage": "2.5",
    "feeAddress": "0x742d35CC6634c0532925a3B844BC9e7595f8fA40"
  }'
```

### Batch payout

```bash cURL theme={null}
curl -X POST 'https://api.request.network/v2/payouts/batch' \
  -H 'x-api-key: YOUR_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{
    "payer": "0x2e2E5C79F571ef1658d4C2d3684a1FE97DD30570",
    "feePercentage": "2.5",
    "feeAddress": "0x742d35CC6634c0532925a3B844BC9e7595f8fA40",
    "requests": [
      {
        "payee": "0x6923831ACf5c327260D7ac7C9DfF5b1c3cB3C7D7",
        "amount": "10",
        "invoiceCurrency": "USD",
        "paymentCurrency": "USDC-base"
      }
    ]
  }'
```

## Related Pages

<CardGroup cols={2}>
  <Card title="Protocol Fees" href="/api-features/protocol-fees">
    Understand Request Network protocol-level fees.
  </Card>

  <Card title="Fee Breakdowns" href="/api-features/fee-breakdowns">
    Inspect fee line items returned by API responses.
  </Card>
</CardGroup>

## API Reference

For full schemas and examples, see [Request Network API Reference](https://api.request.network/open-api).
