# List all invoices

**GET /api/v1/invoices**

You can list all invoices, or list the invoices for a specific contractor. The invoices are returned sorted by creation date, with the most recently created invoices appearing first.

## Servers
- Production server: https://api.1099policy.com (Production server)

## Parameters

### Query parameters

- **limit** (integer)  
  A limit on the number of objects to be returned. Limit can range between `1` and `100`, and the default is `10`.

- **starting_after** (string)  
  A cursor for use in pagination. `starting_after` is an invoice ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `in_fOo123`, your subsequent call can include `starting_after=in_fOo123` in order to fetch the next page of the list.

- **ending_before** (string)  
  A cursor for use in pagination. `ending_before` is an invoice ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with `in_bAr123`, your subsequent call can include `ending_before=in_bAr123` in order to fetch the previous page of the list.

## Responses
### 200
Returns an array of invoice objects. If no more invoices are available, the resulting array will be empty.

#### Body: application/json (array[object])
- **contractor** (string)  
  ID of the contractor.

- **created** (integer(int64))

- **gross_pay** (integer)  
  The gross pay that the contractor earned in the last pay period.

A positive integer representing the gross pay (e.g., 15000 cents to charge $150.00). The minimum amount is 100 cents US. The maximum amount is 100000000 cents US ($1,000,000).

- **id** (string)

- **job** (string)  
  ID of the job that the contractor was paid to do.

- **paycycle_enddate** (integer(int64))  
  Pay period end date. Measured in seconds since the Unix epoch.

- **paycycle_startdate** (integer(int64))  
  Pay period start date. Measured in seconds since the Unix epoch.

- **premium_due** (integer)  
  Premium due for pay cycle. Calculated as a percentage of gross pay for the period.

A positive integer representing the premium due (e.g., 150 cents to charge $1.50). The minimum amount is 100 cents US.

- **purchase_order_number** (string)  
  The purchase order number for this invoice. Used for dashboard display and agency-pay billing.

By default an invoice inherits this from the `purchase_order_number` set on the job's `custom_metadata` when it is created. It can be overridden per invoice on create or update by sending `purchase_order_number` (an explicit value wins over the job default), or cleared by sending an empty string (`""`). Omitting the field on update leaves the current value unchanged.

When a wage change re-prices an invoice, the replacement invoice keeps this value rather than re-inheriting it from the job.

Precedence: explicit value on the invoice, then the value carried forward when an invoice is re-priced, then the job's `custom_metadata` default.
