Documentation Index
Fetch the complete documentation index at: https://mintlify.com/firefly-iii/firefly-iii/llms.txt
Use this file to discover all available pages before exploring further.
Overview
The Bills API (also called Subscriptions in some contexts) allows you to manage recurring expenses like rent, utilities, subscriptions, and other regular payments. Firefly III can automatically match transactions to bills based on configured rules.List All Bills
GET /v1/bills
Query Parameters
Page number for pagination
Start date for paid dates (YYYY-MM-DD)
End date for paid dates (YYYY-MM-DD)
Response Fields
Bill ID
ISO 8601 timestamp of creation
ISO 8601 timestamp of last update
Bill name
Always true for bills
Currency ID
Currency code
Currency name
Currency symbol
Decimal places for currency
Minimum expected amount
Minimum amount in primary currency
Maximum expected amount
Maximum amount in primary currency
Average amount
Average amount in primary currency
Bill start date (ISO 8601)
Bill end date (ISO 8601)
Extension date (ISO 8601)
Repeat frequency:
weekly, monthly, quarterly, half-year, yearlyNumber of periods to skip (0-31)
Whether the bill is active
Display order
Bill notes
Object group ID if bill is in a group
Order within object group
Object group title
Array of dates when bill was paid
Array of expected payment dates
Next expected match date (ISO 8601)
Human-readable time until next match
Create Bill
POST /v1/bills
Request Body
Bill name (1-255 characters, must be unique)
Minimum expected amount (positive number)
Maximum expected amount (must be ≥ amount_min)
Currency ID (must exist in transaction_currencies)
Currency code (3-51 characters, must exist)
Bill start date (YYYY-MM-DD, after 1970-01-02, before 2038-01-17)
Bill end date (must be after
date)Extension date (must be after
date)Repeat frequency:
weekly, monthly, quarterly, half-year, yearlyNumber of periods to skip (0-31)
Whether the bill is active
Display order
Bill notes (max 32,768 characters)
Object group ID to associate bill with
Object group title
Matching Transactions:Firefly III will automatically attempt to match transactions to bills based on:
- Amount falling within min/max range
- Transaction date matching expected payment schedule
- Description or account name patterns
Get Bill by ID
GET /v1/bills/{id}
Returns the same response fields as the List endpoint.
Update Bill
PUT /v1/bills/{id}
Accepts the same parameters as Create Bill. All fields are optional.
Delete Bill
DELETE /v1/bills/{id}
Deletes the bill. Associated transactions will no longer be linked to this bill.
Related Endpoints
Get Bill Attachments
Endpoint:GET /v1/bills/{id}/attachments
Returns all attachments for this bill.
Get Bill Rules
Endpoint:GET /v1/bills/{id}/rules
Returns all rules associated with this bill.
Get Bill Transactions
Endpoint:GET /v1/bills/{id}/transactions
Returns all transactions matched to this bill.
Query Parameters for Transactions
Start date (YYYY-MM-DD)
End date (YYYY-MM-DD)
Subscriptions Endpoints
The/v1/subscriptions endpoints are aliases for /v1/bills endpoints and work identically:
GET /v1/subscriptions- List all subscriptionsPOST /v1/subscriptions- Create subscriptionGET /v1/subscriptions/{id}- Get subscription by IDPUT /v1/subscriptions/{id}- Update subscriptionDELETE /v1/subscriptions/{id}- Delete subscriptionGET /v1/subscriptions/{id}/attachments- Get subscription attachmentsGET /v1/subscriptions/{id}/rules- Get subscription rulesGET /v1/subscriptions/{id}/transactions- Get subscription transactions