# InvoiceFilter

## Example Usage

```typescript
import { InvoiceFilter } from "@flexprice/sdk/sdk/models";

let value: InvoiceFilter = {};
```

## Fields

| Field                                                                                                                                                                            | Type                                                                                                                                                                             | Required                                                                                                                                                                         | Description                                                                                                                                                                      |
| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `amountDueGt`                                                                                                                                                                    | *number*                                                                                                                                                                         | :heavy_minus_sign:                                                                                                                                                               | amount_due_gt filters invoices with a total amount due greater than the specified value<br/>Useful for finding invoices above a certain threshold or identifying high-value invoices |
| `amountRemainingGt`                                                                                                                                                              | *number*                                                                                                                                                                         | :heavy_minus_sign:                                                                                                                                                               | amount_remaining_gt filters invoices with an outstanding balance greater than the specified value<br/>Useful for finding invoices that still have significant unpaid amounts     |
| `billingReason`                                                                                                                                                                  | [models.InvoiceBillingReason](../../sdk/models/invoice-billing-reason.md)                                                                                                        | :heavy_minus_sign:                                                                                                                                                               | N/A                                                                                                                                                                              |
| `currency`                                                                                                                                                                       | *string*                                                                                                                                                                         | :heavy_minus_sign:                                                                                                                                                               | currency filters invoices by their currency (ISO 4217 code, e.g. "usd", "eur").<br/>Matches on the invoices.currency column exactly.                                             |
| `customerId`                                                                                                                                                                     | *string*                                                                                                                                                                         | :heavy_minus_sign:                                                                                                                                                               | customer_id filters invoices for a specific customer using FlexPrice's internal customer ID<br/>This is the ID returned by FlexPrice when creating or retrieving customers       |
| `endTime`                                                                                                                                                                        | [Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date)                                                                                    | :heavy_minus_sign:                                                                                                                                                               | N/A                                                                                                                                                                              |
| `expand`                                                                                                                                                                         | *string*                                                                                                                                                                         | :heavy_minus_sign:                                                                                                                                                               | N/A                                                                                                                                                                              |
| `externalCustomerId`                                                                                                                                                             | *string*                                                                                                                                                                         | :heavy_minus_sign:                                                                                                                                                               | external_customer_id filters invoices for a customer using your system's customer identifier<br/>This is the ID you provided when creating the customer in FlexPrice             |
| `filters`                                                                                                                                                                        | [models.FilterCondition](../../sdk/models/filter-condition.md)[]                                                                                                                 | :heavy_minus_sign:                                                                                                                                                               | N/A                                                                                                                                                                              |
| `invoiceIds`                                                                                                                                                                     | *string*[]                                                                                                                                                                       | :heavy_minus_sign:                                                                                                                                                               | invoice_ids restricts results to invoices with the specified IDs<br/>Use this to retrieve specific invoices when you know their exact identifiers                                |
| `invoiceStatus`                                                                                                                                                                  | [models.InvoiceStatus](../../sdk/models/invoice-status.md)[]                                                                                                                     | :heavy_minus_sign:                                                                                                                                                               | invoice_status filters by the current state of invoices in their lifecycle<br/>Multiple statuses can be specified to include invoices in any of the listed states                |
| `invoiceType`                                                                                                                                                                    | [models.InvoiceType](../../sdk/models/invoice-type.md)                                                                                                                           | :heavy_minus_sign:                                                                                                                                                               | N/A                                                                                                                                                                              |
| `limit`                                                                                                                                                                          | *number*                                                                                                                                                                         | :heavy_minus_sign:                                                                                                                                                               | N/A                                                                                                                                                                              |
| `offset`                                                                                                                                                                         | *number*                                                                                                                                                                         | :heavy_minus_sign:                                                                                                                                                               | N/A                                                                                                                                                                              |
| `order`                                                                                                                                                                          | [models.InvoiceFilterOrder](../../sdk/models/invoice-filter-order.md)                                                                                                            | :heavy_minus_sign:                                                                                                                                                               | N/A                                                                                                                                                                              |
| `paymentStatus`                                                                                                                                                                  | [models.PaymentStatus](../../sdk/models/payment-status.md)[]                                                                                                                     | :heavy_minus_sign:                                                                                                                                                               | payment_status filters by the payment state of invoices<br/>Multiple statuses can be specified to include invoices with any of the listed payment states                         |
| `periodEndGte`                                                                                                                                                                   | *string*                                                                                                                                                                         | :heavy_minus_sign:                                                                                                                                                               | period_end_gte filters invoices with period_end >= value                                                                                                                         |
| `periodEndLte`                                                                                                                                                                   | *string*                                                                                                                                                                         | :heavy_minus_sign:                                                                                                                                                               | period_end_lte filters invoices with period_end <= value                                                                                                                         |
| `periodStartGte`                                                                                                                                                                 | *string*                                                                                                                                                                         | :heavy_minus_sign:                                                                                                                                                               | period_start_gte filters invoices with period_start >= value                                                                                                                     |
| `periodStartLte`                                                                                                                                                                 | *string*                                                                                                                                                                         | :heavy_minus_sign:                                                                                                                                                               | period_start_lte filters invoices with period_start <= value                                                                                                                     |
| `skipLineItems`                                                                                                                                                                  | *boolean*                                                                                                                                                                        | :heavy_minus_sign:                                                                                                                                                               | SkipLineItems if true, will not include line items in the response                                                                                                               |
| `sort`                                                                                                                                                                           | [models.SortCondition](../../sdk/models/sort-condition.md)[]                                                                                                                     | :heavy_minus_sign:                                                                                                                                                               | N/A                                                                                                                                                                              |
| `startTime`                                                                                                                                                                      | [Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date)                                                                                    | :heavy_minus_sign:                                                                                                                                                               | N/A                                                                                                                                                                              |
| `status`                                                                                                                                                                         | [models.Status](../../sdk/models/status.md)                                                                                                                                      | :heavy_minus_sign:                                                                                                                                                               | N/A                                                                                                                                                                              |
| `subscriptionCustomerId`                                                                                                                                                         | *string*[]                                                                                                                                                                       | :heavy_minus_sign:                                                                                                                                                               | subscription_customer_id filters invoices by the subscription owner's customer ID                                                                                                |
| `subscriptionId`                                                                                                                                                                 | *string*                                                                                                                                                                         | :heavy_minus_sign:                                                                                                                                                               | subscription_id filters invoices generated for a specific subscription<br/>Only returns invoices that were created as part of the specified subscription's billing               |