Skip to main content
Glama
other-income.md10.4 kB
# Other Income API Reference Other income represents revenue from sources other than standard invoicing (e.g., interest, grants, investment income, one-time payments). ## otherincome_list List other income records from FreshBooks with optional filtering and pagination. ### Description Retrieve a paginated list of other income records with filtering by category or date range. **When to use:** - User asks to see non-invoice income - User wants to review income by category - User needs to find income within a date range - Financial reporting for all revenue sources ### Input Schema | Parameter | Type | Required | Default | Description | |-----------|------|----------|---------|-------------| | accountId | string | Yes | - | FreshBooks account identifier | | page | number | No | 1 | Page number (1-indexed) | | perPage | number | No | 30 | Results per page (max 100) | | categoryName | string | No | - | Filter by category name | | dateFrom | string | No | - | Filter income after date (ISO 8601) | | dateTo | string | No | - | Filter income before date (ISO 8601) | ### Input Example ```json { "accountId": "ABC123", "categoryName": "Interest Income", "dateFrom": "2024-01-01T00:00:00Z", "dateTo": "2024-12-31T23:59:59Z" } ``` ### Output Schema | Field | Type | Description | |-------|------|-------------| | otherIncome | OtherIncome[] | Array of other income objects | | pagination | Pagination | Pagination metadata | #### OtherIncome Object | Field | Type | Nullable | Description | |-------|------|----------|-------------| | incomeId | number | No | Unique income identifier | | amount | Money | No | Income amount | | categoryName | string | No | Income category name | | createdAt | string | No | Creation timestamp (ISO 8601) | | date | string | No | Income date (ISO 8601) | | note | string | Yes | Income notes or description | | paymentType | string | No | Payment method received | | source | string | Yes | Income source | | taxes | Tax[] | Yes | Applied taxes | | updated | string | Yes | Last update timestamp (ISO 8601) | | visState | number | Yes | Visibility state (0=active, 1=deleted) | ### Output Example ```json { "otherIncome": [ { "incomeId": 333, "amount": { "amount": "250.00", "code": "USD" }, "categoryName": "Interest Income", "createdAt": "2024-12-01T10:00:00Z", "date": "2024-12-01T00:00:00Z", "note": "Quarterly interest from business savings", "paymentType": "Bank Transfer", "source": "First National Bank", "visState": 0 } ], "pagination": { "page": 1, "pages": 1, "total": 12, "perPage": 30 } } ``` ### Errors | Code | Condition | Recoverable | Recovery | |------|-----------|-------------|----------| | -32602 | Invalid accountId format | No | Check account ID is valid | | -32602 | Invalid date format | No | Use ISO 8601 format | | -32001 | Not authenticated | Yes | Call auth_get_url to authenticate | ### Related Tools - [otherincome_single](#otherincome_single) - Get single income record by ID - [otherincome_create](#otherincome_create) - Record new income - [report_profit_loss](./reports.md#report_profit_loss) - View in P&L report --- ## otherincome_single Get a single other income record by ID. ### Description Retrieve detailed information about a specific other income record. **When to use:** - User asks for details about specific income - Need to verify income data before update/delete - Retrieve full details after creation ### Input Schema | Parameter | Type | Required | Description | |-----------|------|----------|-------------| | accountId | string | Yes | FreshBooks account identifier | | incomeId | number | Yes | Income ID to retrieve | ### Input Example ```json { "accountId": "ABC123", "incomeId": 333 } ``` ### Output Schema Returns a single OtherIncome object (see [otherincome_list](#otherincome-object) for schema). ### Errors | Code | Condition | Recoverable | Recovery | |------|-----------|-------------|----------| | -32602 | Invalid incomeId | No | Check ID is a positive integer | | -32005 | Income not found | No | Verify ID exists in FreshBooks | | -32001 | Not authenticated | Yes | Call auth_get_url to authenticate | ### Related Tools - [otherincome_list](#otherincome_list) - Find income IDs - [otherincome_update](#otherincome_update) - Update this income - [otherincome_delete](#otherincome_delete) - Delete this income --- ## otherincome_create Record new other income. ### Description Record income from non-invoice sources such as interest, grants, or one-time payments. **When to use:** - User received income not from client invoices - Recording interest, dividends, or investment income - Logging grants or subsidies - One-time payments or miscellaneous income ### Input Schema | Parameter | Type | Required | Default | Description | |-----------|------|----------|---------|-------------| | accountId | string | Yes | - | FreshBooks account identifier | | amount | Money | Yes | - | Income amount | | categoryName | string | Yes | - | Income category name | | date | string | Yes | - | Income date (ISO 8601) | | paymentType | string | No | Cash | Payment method received | | note | string | No | - | Income notes or description | | source | string | No | - | Income source | | taxes | Tax[] | No | - | Taxes to apply | ### Input Example ```json { "accountId": "ABC123", "amount": { "amount": "1500.00", "code": "USD" }, "categoryName": "Grant Income", "date": "2024-12-15T00:00:00Z", "paymentType": "Bank Transfer", "note": "Small business development grant - Q4 2024", "source": "State Economic Development Agency" } ``` ### Output Schema Returns the created OtherIncome object (see [otherincome_list](#otherincome-object) for schema). ### Errors | Code | Condition | Recoverable | Recovery | |------|-----------|-------------|----------| | -32602 | Missing required fields | No | Provide amount, categoryName, date | | -32602 | Invalid paymentType | No | Use valid payment type | | -32001 | Not authenticated | Yes | Call auth_get_url to authenticate | ### Related Tools - [otherincome_list](#otherincome_list) - View recorded income - [report_profit_loss](./reports.md#report_profit_loss) - Include in financial reports --- ## otherincome_update Update an existing other income record. ### Description Modify details of an existing other income record. **When to use:** - User wants to correct income details - Update amount, category, or date - Add or modify notes - Change payment type or source ### Input Schema | Parameter | Type | Required | Description | |-----------|------|----------|-------------| | accountId | string | Yes | FreshBooks account identifier | | incomeId | number | Yes | Income ID to update | | amount | Money | No | Income amount | | categoryName | string | No | Income category name | | date | string | No | Income date (ISO 8601) | | paymentType | string | No | Payment method received | | note | string | No | Income notes or description | | source | string | No | Income source | | taxes | Tax[] | No | Taxes to apply | ### Input Example ```json { "accountId": "ABC123", "incomeId": 333, "amount": { "amount": "1750.00", "code": "USD" }, "note": "Updated grant amount after amendment" } ``` ### Output Schema Returns the updated OtherIncome object (see [otherincome_list](#otherincome-object) for schema). ### Errors | Code | Condition | Recoverable | Recovery | |------|-----------|-------------|----------| | -32602 | Invalid incomeId | No | Check ID is a positive integer | | -32005 | Income not found | No | Verify ID exists in FreshBooks | | -32001 | Not authenticated | Yes | Call auth_get_url to authenticate | ### Related Tools - [otherincome_single](#otherincome_single) - Get current values before update - [otherincome_delete](#otherincome_delete) - Delete instead of update --- ## otherincome_delete Delete an other income record. ### Description Delete an other income record from FreshBooks. **When to use:** - User wants to remove incorrect income record - Deleting duplicate entries - Removing test or accidental entries ### Input Schema | Parameter | Type | Required | Description | |-----------|------|----------|-------------| | accountId | string | Yes | FreshBooks account identifier | | incomeId | number | Yes | Income ID to delete | ### Input Example ```json { "accountId": "ABC123", "incomeId": 333 } ``` ### Output Schema | Field | Type | Description | |-------|------|-------------| | success | boolean | Whether deletion was successful | | message | string | Confirmation message | | incomeId | number | ID of deleted income | ### Output Example ```json { "success": true, "message": "Other income deleted successfully", "incomeId": 333 } ``` ### Errors | Code | Condition | Recoverable | Recovery | |------|-----------|-------------|----------| | -32602 | Invalid incomeId | No | Check ID is a positive integer | | -32005 | Income not found | No | May already be deleted | | -32001 | Not authenticated | Yes | Call auth_get_url to authenticate | ### Related Tools - [otherincome_single](#otherincome_single) - Verify before deletion - [otherincome_list](#otherincome_list) - View remaining income --- ## Notes ### Common Income Categories - **Interest Income** - Interest from savings, investments - **Dividend Income** - Dividends from investments - **Grant Income** - Government or private grants - **Refunds** - Tax refunds, vendor refunds - **Miscellaneous Income** - One-time or unusual income - **Investment Income** - Capital gains, investment returns - **Rental Income** - Property rental income (if not primary business) ### Payment Type Values Supported payment types include: - Cash, Check, Credit, Credit Card - Bank Transfer, ACH, Wire Transfer - PayPal, Stripe, 2Checkout - Debit, Interac - Visa, MasterCard, Discover, AMEX, Nova - Other ### vs Invoice Income - **Invoice Income**: Revenue from client billings (tracked via invoices) - **Other Income**: Non-invoice revenue sources Both appear in financial reports but are tracked separately for clarity. ### Tax Reporting Other income is included in: - Profit & Loss statements - Tax reports - Revenue totals Properly categorize income for accurate tax reporting.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Good-Samaritan-Software-LLC/freshbooks-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server