List bills

GET /api/v1/bills

Retrieve all bills for a business with cursor-based pagination. Can filter by vendor name (fuzzy search) or associated journal entry.

Operation ID: list_bills_api_v1_bills_get · View as markdown · OpenAPI slice

Authentication

Bearer token authentication. Pass your DayZero API token in the Authorization header and the target business UUID in x-business-id.

Parameters

Query

vendor_search string

Fuzzy search bills by vendor name (uses PostgreSQL trigram matching)

journal_entry_id string

Filter bills by associated journal entry UUID

payment_method string

Filter bills by payment method: 'Wire Transfer', 'ACH', 'Check', 'Credit Card'

vendor_id string

Filter bills by vendor UUID

status string

Filter by bill status (e.g. draft, approved, received, paid, canceled)

search string

Search bills by bill number, description, or vendor name (case-insensitive partial match)

cursor string

Cursor for pagination

limit integer

Pagination limit

direction string default: next

Pagination direction: 'next' or 'prev'

include_total_count boolean default: False

Whether to include total count (expensive - avoid if possible)

sort_by string

Column name to sort by (e.g. 'created_at', 'amount', 'name'). When changing sort, reset cursor to None.

descending boolean default: True

Sort direction: true for descending (newest/largest first), false for ascending

Responses

200 Successful Response

items array · BillResponse requiredBillResponse

List of items

25 fields
id string required

Bill UUID.

business_id string required

Business UUID.

currency string

Currency for the bill (USD, CAD, AUD, EUR, or GBP).

status integer | string required

Bill status (see schema description).

description string

Bill description.

bill_number string

Bill/invoice number from vendor.

vendor_id string required

Vendor UUID.

vendor_name string

Vendor name (resolved).

vendor_email string

Vendor email (resolved).

type integer | string required

Type: 'recurring' or 'one_time'.

expected_amount integer

Expected amount in cents.

expected_paid_on_date string · date-time

Expected payment date.

total_paid integer

Total amount paid so far in cents.

amount integer

Actual bill amount in cents.

s3_key string

S3 key of attached document.

received_on string · date-time

Date bill/goods received.

due_on string · date-time

Payment due date.

paid_on string · date-time

Date fully paid.

created_at string · date-time required

Creation timestamp.

updated_at string · date-time required

Last update timestamp.

signed_url string

Signed URL to view attached document.

payments array · object

List of payments made.

journal_entries array · object

Associated accounting entries.

recurring_template_id string

ID of recurring template if this bill was generated from one, or if one was created.

source_inventory_order_id string

Source PO that produced this bill via the PO lifecycle. Non-null means this bill is visible on the Inventory -> Accounts Payable tab.

total integer

Total number of items (null when not calculated for performance)

limit integer

Pagination limit

next_cursor string

Cursor for next page

prev_cursor string

Cursor for previous page

has_next boolean required

Whether there are more items

has_prev boolean required

Whether there are previous items

401 Unauthorized - Authentication required

403 Forbidden - Insufficient permissions

422 Validation Error

detail array · ValidationError ValidationError
5 fields
loc array · string | integer required
msg string required
type string required
input object
ctx object