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

# The Receivable Sale Object

> Field-level reference for the Receivable Sale object, how purchase_amount is built, and how to list and retrieve sales.

A receivable sale groups one business day's receivables into a single purchase that Lead debits from your operating account. Lead creates every receivable sale. You read them with `GET /v2/receivable_sales` and `GET /v2/receivable_sales/{receivable_sale_id}`.

```json theme={null}
{
  "id": "receivable_sale_3f9a1c7e5b2d4a6f8e0c1b3d5f7a9c2e",
  "status": "settled",
  "request_date": "2026-06-03",
  "currency_code": "USD",
  "purchase_amount": 1250685,
  "purchase_amount_breakdown": {
    "principal": 1250000,
    "interest": 0,
    "fees": 685
  },
  "receivables_count": 42,
  "core_transaction_id": "core_transaction_5BIJT5QH8Qm2n1x~0",
  "created_at": "2026-06-03T12:45:00Z",
  "settled_at": "2026-06-03T21:00:00Z",
  "updated_at": "2026-06-03T21:00:00Z"
}
```

A failed sale also carries a `failure` block:

```json theme={null}
{
  "id": "receivable_sale_6c1e3a5b7d9f0b2d4f6a8c0e2b4d6f8a",
  "status": "failed",
  "request_date": "2026-06-02",
  "currency_code": "USD",
  "purchase_amount": 870000,
  "purchase_amount_breakdown": {
    "principal": 865000,
    "interest": 3200,
    "fees": 1800
  },
  "receivables_count": 27,
  "core_transaction_id": null,
  "failure": {
    "reason": "non_sufficient_funds",
    "details": "Your account has insufficient funds. Please add funds and notify Lead."
  },
  "created_at": "2026-06-02T12:45:00Z",
  "settled_at": null,
  "updated_at": "2026-06-02T21:00:00Z"
}
```

## Fields

| Field | Type | Description |
| :- | :- | :- |
| `id` | string | Unique identifier, prefixed `receivable_sale_`. |
| `status` | enum | `created`, `settled`, or `failed`. See [Receivable Sale Statuses](/v2/products/receivable-sales/statuses). |
| `request_date` | date | The business day being sold. Can be earlier than `created_at` if Lead generates a sale for a past business day. |
| `currency_code` | enum | ISO 4217 code. `USD` only. |
| `purchase_amount` | integer | What you pay, in minor units. Equals the sum of the member receivables' `amount` and the sum of every component in `purchase_amount_breakdown`. Fixed when the sale is created. |
| `purchase_amount_breakdown` | object | The components of `purchase_amount`. See [The purchase\_amount\_breakdown block](#the-purchase-amount-breakdown-block). |
| `receivables_count` | integer | How many receivables are in the sale. `0` on a day with nothing to buy. |
| `core_transaction_id` | string or null | The core transaction that debited `purchase_amount` from your operating account. `null` until `settled`, and stays `null` on a sale with nothing to buy. |
| `failure` | object | Present only when `status` is `failed`. See [The failure block](#the-failure-block). |
| `created_at` | timestamp | When Lead created the sale. RFC 3339, UTC. |
| `settled_at` | timestamp or null | When `purchase_amount` was debited. `null` until `settled`. |
| `updated_at` | timestamp | RFC 3339, UTC. |

## The purchase\_amount\_breakdown block

| Field | Type | Description |
| :- | :- | :- |
| `principal` | integer | Sum of the member receivables' `amount_breakdown.principal`, in minor units. |
| `interest` | integer | Sum of the member receivables' `amount_breakdown.interest`, in minor units. |
| `fees` | integer | Sum of the member receivables' `amount_breakdown.fees`, in minor units. |

Lead may add components to this block without a version change. Each component is a signed integer, and one that reduces the amount due is negative. To check the total, add every key present, not only the three above.

`purchase_amount` does not include partner-owed fees and premiums. Lead bills those separately under your program agreement.

## The failure block

| Field | Type | Description |
| :- | :- | :- |
| `reason` | enum | `non_sufficient_funds` or `account_closed`. See [Failure reasons](/v2/products/receivable-sales/statuses#failure-reasons). |
| `details` | string | What went wrong and what to do next. |

## Membership rules

* **One sale per business day.** Each business day's eligible receivables go into one receivable sale for your program. Handle more than one sale for the same `request_date`, since Lead may regenerate a sale for a day.
* **Fixed at creation.** Once a sale is `created`, its receivables, `purchase_amount`, and breakdown do not change, including on a retry after a failure.
* **Late receivables roll forward.** A receivable that becomes eligible after the day's sale is created joins the next business day's sale.

## List and retrieve

`GET /v2/receivable_sales` returns your program's receivable sales, most recently created first. Filters:

* `request_date`, `request_date[after]`, `request_date[on_or_after]`, `request_date[before]`, `request_date[on_or_before]`. Sales for a business day or a range.
* `status`. One of `created`, `settled`, `failed`.
* `limit` (1 to 100, default 10), `starting_after`, `ending_before`. Cursor pagination. Cursors are receivable sale IDs.

`GET /v2/receivable_sales/{receivable_sale_id}` returns one receivable sale. It returns `404` if the ID does not exist.

To list a sale's receivables, call `GET /v2/receivables?receivable_sale_id={receivable_sale_id}`.

## Coming from the Sales Request and Response files

| Files | API |
| :- | :- |
| Lead sends a Sales Request file | Lead creates a receivable sale and sends `receivable_sale.created`. |
| Each line in the Sales Request | A receivable in the sale. List them by `receivable_sale_id`. |
| You return a Sales Response file | Nothing to send. Lead debits your operating account on schedule. |
| Empty-day file | A sale created `settled` at `0`, with `receivable_sale.no_receivables_for_sale`. |

## Related

[Receivable Sale Overview](/v2/products/receivable-sales/overview) · [Receivable Sale Statuses](/v2/products/receivable-sales/statuses) · [The Receivable Object](/v2/products/receivables/receivable-object) · [The Core Transaction Object](/products/core-transaction/core-transaction-object)


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