Self-Employed & Business Income
Self-employed individuals often have multiple streams of income, and those individuals generally have to file one Form 1040 Schedule C for each of those businesses.
LLCs, LLPs and S Corps also, obviously, need to track their business income, as that income ultimately passes through to the owner's tax filing.
In both of the above cases, the Hurdlr Income Streams API has you covered.
1. How it works
The Hurdlr API is able to ingest data from many different income streams, enabling you to easily provide your users with accurate tax calculations, financial reporting, and other accounting functionality.
If you are not using Hurdlr's Plaid integration, in order for the Hurdlr API to ingest your user's business income data, you can simply push each income record, as it is earned, to the Hurdlr API. The Hurdlr API will take care of the rest.
Hurdlr allows you to track the income at the business-level, which is especially useful for self-employed folks who are earning income via multiple businesses. Optionally, the Hurdlr Income Streams API lets you track income at the client-level, which enables very powerful financial reporting.
Once you have your user's self-employed and business income pushed into the Hurdlr API, you can immediately start using all of Hurdlr's Tax Calculations, Financial Reporting, and other functionality.
2. Adding self-employed or business income
If you are leveraging the Plaid integration for tracking income, please see the instructions on how to classify income transactions as business income.
For any other business income streams from sources outside of the Plaid integration, you can simply add that income by making a POST call to the Hurdlr API.
You should update the following fields on a new JSON object when adding business income:
Field | Description | Format |
---|---|---|
date | Date that the revenue was deposited | yyyy-MM-dd or yyyy-MM-dd'T'HH:mm:ss.SSSZ |
amount | Total value of the income | Numeric, with 2 decimal places |
type | Whether the transaction was classified as Business or Personal | Must be one of the following: "BUSINESS", "NOT_BUSINESS" |
businessId | Id of the business that this should be assigned to | Numeric |
clientId | Id of the client that this should be assigned to. Optional. | Numeric |
description | Description of the income. Optional. | Any string |
To add the income, simply POST the income's JSON object to the /revenue endpoint:
curl \
--request POST \
--url https://sandbox.hurdlr.com/rest/v5/revenue/revenue \
--header 'Authorization: Bearer ${access_token}' \
--header 'Content-Type: application/json' \
--data '{
"revenue": {
"date": "2021-07-30T20:00:00.000Z",
"amount": 500.00,
"type": "BUSINESS",
"businessId": 416080,
"clientId": 805609,
"description": "Design implementation"
}
}'
3. Getting self-employed or business income
All self-employed or business income can be accessed in the list of revenues, via the /revenues endpoint:
curl \
--request GET \
--url https://sandbox.hurdlr.com/rest/v5/revenue/revenues?lastUpdatedDate=1970-01-01 \
--header 'Authorization: Bearer ${access_token}' \
--header 'Content-Type: application/json' \
The response from GET /revenues contains an array of the user's revenues:
{
"data": [
{
"id": 760731,
"type": "BUSINESS",
"date": "2021-08-30T20:58:19.000Z",
"amount": 399.99,
"businessId": 416080,
"clientId": 805609,
"description": "Payment for design work",
// Below fields populated if transaction originated from Plaid
"plaidInstitutionId": "ins_5",
"plaidDisplayName": "Citi Business Checking",
"plaidAccountNo": "3333",
"plaidItemAccountId": 17331,
"apiName": "PLAID",
"apiPaymentId": "Broro8rVMMUmXAdw59mvsm909M547gtxRk34B",
// Above fields populated if transaction originated from Plaid
"lastUpdatedDate": "2021-09-17T19:35:12.000Z"
}
],
"lastUpdatedDate": "2021-09-17T19:25:19.236Z"
}
On each revenue, you may find the following attributes to be of particular interest, especially the type
field:
Field | Description | Format |
---|---|---|
id | Id of the revenue record | Numeric |
type | Whether the transaction was classified as Business or Personal | Must be one of the following: "PENDING", "BUSINESS", "NOT_BUSINESS" |
date | Date that the revenue was earned | yyyy-MM-dd'T'HH:mm:ss.SSSZ |
amount | Total value of the deposit | Numeric, with 2 decimal places |
businessId | Id of the business that this was assigned to | Numeric |
clientId | Id of the client that this was assigned to | Numeric |
description | Description of the income | Any string |
pendingRevenueId | Id of the associated pending revenue | Numeric |
4. Next steps
Once you have pushed your user's self-employed and business income into the Hurdlr API, you are ready to start pulling tax estimates!
Updated about 2 months ago