Skip to main content
POST
/
v5
/
taxEngineExpress
/
findDeductions
Find Deductions
curl --request POST \
  --url https://sandbox.hurdlr.com/rest/v5/taxEngineExpress/findDeductions \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: */*' \
  --data '
{
  "client_id": "fake_client_id",
  "businessType": "REAL_ESTATE_AGENT",
  "expenses": [
    {
      "vendorName": "Acme",
      "categoryId": "13005023",
      "id": "1",
      "amount": 100.02,
      "hurdlrTaxCategory": "DEDUCTIBLE_MEALS_AND_ENTERTAINMENT",
      "date": "2023-12-25"
    }
  ],
  "userId": "fake_userId",
  "useMileageDeduction": true
}
'
{
  "vendorName": "Acme",
  "categoryId": "13005023",
  "id": "1",
  "amount": 100.02,
  "hurdlrTaxCategory": "DEDUCTIBLE_MEALS_AND_ENTERTAINMENT",
  "date": "2023-12-25",
  "confidence": "LIKELY",
  "deductionAmount": 50,
  "taxCategorySchedC1040DisplayName": "Deductible Meals and Entertainment",
  "taxCategorySchedC1040LineNumber": "24b"
}

Authorizations

Authorization
string
header
required

The access token received from the authorization server in the OAuth 2.0 flow.

Body

*/*

deduction finder parameters

client_id
string
required

The client_id of the Tight Partner

Example:

"fake_client_id"

businessType
enum<string>
required

The business type to be used in calculating deduction confidence

Available options:
DRIVER,
REAL_ESTATE_AGENT,
CONSULTANT,
SALES,
FREELANCER,
HOST,
E_COMMERCE,
INSURANCE_AGENT,
RETAIL,
OTHER
Example:

"REAL_ESTATE_AGENT"

expenses
object[]
required

Expense transaction array

userId
string
required

An anonymized userId, used for tracking API usage. The Tight Partner decides how to anonymize it.

Example:

"fake_userId"

useMileageDeduction
boolean

True if using the standard mileage rate, as opposed to actual vehicle expenses

Example:

true

Response

200 - application/json

Successful operation

vendorName
string
required

The vendor name of the expense transaction

Example:

"Acme"

categoryId
string
required

Plaid's category_id for the expense transaction (e.g. '13005023')

Example:

"13005023"

id
string

The Partner's internal ID of the expense transaction. This will be roundtripped in the response, so that the Partner can easily identify each transaction.

Example:

"1"

amount
number

The amount of the expense transaction

Example:

100.02

hurdlrTaxCategory
string

The Tight Tax Category for the expense transaction. The endpoint will populate this field for you if not populated.

Example:

"DEDUCTIBLE_MEALS_AND_ENTERTAINMENT"

date
string<date>

The date of the transaction. If not populated, the current year will be used.

confidence
enum<string>

The Deduction Confidence of the expense transaction. The /findDeductions endpoint will populate this field for you.

Available options:
LIKELY,
QUESTIONABLE,
UNLIKELY
deductionAmount
number

The Deduction Amount of the expense transaction. The /findDeductions endpoint will populate this field for you.

Example:

50

taxCategorySchedC1040DisplayName
string

The Form 1040 Schedule C display name for the expense transaction. The /findDeductions endpoint will populate this field for you.

Example:

"Deductible Meals and Entertainment"

taxCategorySchedC1040LineNumber
string

The Form 1040 Schedule C line number for the expense transaction. The /findDeductions endpoint will populate this field for you.

Example:

"24b"