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

# list_discounts — Discounts available for invoices

> Reference for the list_discounts MCP tool. List the percentage and fixed-amount discounts an organization can apply to invoices.

The `list_discounts` tool returns the discounts an organization can apply to invoices. Each discount is either a percentage or a fixed amount. Every request must include `intent` and `organizationId`, and the token must carry the `invoices.read` scope.

> [!NOTE]
>
> Receivables tools require the organization to have invoicing set up in Relay. If it does not, the tool returns an error instead of data.

## Scope

Required OAuth scope: `invoices.read`

## Input

**organizationId** `string` *required*

The organization to query. Must be one of the organizations the token can access.

**cursor** `string`

Opaque pagination cursor from a previous response. Keep the same `pageSize` and filters when following cursors. Never parse, edit, or reuse a cursor across different filter sets.

**pageSize** `integer`

Number of results per page. Must be between 1 and 100. Defaults to 50.

**intent** `string` *required*

What the user asked for and why this call serves it, in 1 to 500 characters. Required on every tool call. See [Common tool arguments](https://mcp.docs.relayfi.com/concepts/transport.md#common-tool-arguments).

## Output

**data** `Discount[]` *required*

Array of discounts.

**Discount**

**type** `string` *required*

Discount type. Values: `PERCENTAGE`, `FIXED`.

**percentage** `number`

Percentage off. Present when `type` is `PERCENTAGE`.

**amount** `Money`

Fixed amount off as a [Money](https://mcp.docs.relayfi.com/concepts/results.md#money) object. Present when `type` is `FIXED`.

**pagination** `object` *required*

Cursor-based pagination metadata.

**Pagination**

**hasNextPage** `boolean` *required*

Whether more results are available.

**pageSize** `integer` *required*

Number of results in this page.

**nextCursor** `string`

Opaque cursor to fetch the next page. Present only when `hasNextPage` is `true`.

## Example

```json Request theme={null}
{
  "jsonrpc": "2.0",
  "id": 17,
  "method": "tools/call",
  "params": {
    "name": "list_discounts",
    "arguments": {
      "intent": "User asked what discounts they usually offer on invoices.",
      "organizationId": "org_1"
    }
  }
}
```

```json Response theme={null}
{
  "jsonrpc": "2.0",
  "id": 17,
  "result": {
    "structuredContent": {
      "data": [
        {
          "type": "PERCENTAGE",
          "percentage": 10
        },
        {
          "type": "FIXED",
          "amount": {
            "cents": 5000,
            "display": "50.00",
            "currency": "USD"
          }
        }
      ],
      "pagination": {
        "hasNextPage": false,
        "pageSize": 50
      }
    }
  }
}
```

## Notes

* A `PERCENTAGE` discount carries `percentage`. A `FIXED` discount carries `amount` as a Money object.
* Follow `nextCursor` until `hasNextPage` is `false`. Keep the same `pageSize` and filters on every page.

> [card] [list\_tax\_rates](https://mcp.docs.relayfi.com/tools/list-tax-rates.md)
>
> List tax rates available for invoices.

> [card] [list\_invoices](https://mcp.docs.relayfi.com/tools/list-invoices.md)
>
> Search and list invoices.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.