Income Statements
The IncomeStatement object is used to represent a company’s income, the cost of sales, operating expenses, and other non-operating expenses. The object also includes other important values like gross profit, gross operating profit, and net income. This represents a period of time (month, quarter, or year).
The IncomeStatement object
Properties

idString
Required

remote_idString
Optional
The third-party API ID of the matching object.

nameString
Optional
The income statement's name.

currencyEnum
Optional
The income statement's currency. Possible values include: XUA, AFN, AFA, ALL, ALK, DZD, ADP, AOA, AOK, AON, AOR, ARA, ARS, ARM, ARP, ARL, AMD, AWG, AUD, ATS, AZN, AZM, BSD, BHD, BDT, BBD, BYN, BYB, BYR, BEF, BEC, BEL, BZD, BMD, BTN, BOB, BOL, BOV, BOP, BAM, BAD, BAN, BWP, BRC, BRZ, BRE, BRR, BRN, BRB, BRL, GBP, BND, BGL, BGN, BGO, BGM, BUK, BIF, XPF, KHR, CAD, CVE, KYD, XAF, CLE, CLP, CLF, CNX, CNY, CNH, COP, COU, KMF, CDF, CRC, HRD, HRK, CUC, CUP, CYP, CZK, CSK, DKK, DJF, DOP, NLG, XCD, DDM, ECS, ECV, EGP, GQE, ERN, EEK, ETB, EUR, XBA, XEU, XBB, XBC, XBD, FKP, FJD, FIM, FRF, XFO, XFU, GMD, GEK, GEL, DEM, GHS, GHC, GIP, XAU, GRD, GTQ, GWP, GNF, GNS, GYD, HTG, HNL, HKD, HUF, IMP, ISK, ISJ, INR, IDR, IRR, IQD, IEP, ILS, ILP, ILR, ITL, JMD, JPY, JOD, KZT, KES, KWD, KGS, LAK, LVL, LVR, LBP, LSL, LRD, LYD, LTL, LTT, LUL, LUC, LUF, MOP, MKD, MKN, MGA, MGF, MWK, MYR, MVR, MVP, MLF, MTL, MTP, MRU, MRO, MUR, MXV, MXN, MXP, MDC, MDL, MCF, MNT, MAD, MAF, MZE, MZN, MZM, MMK, NAD, NPR, ANG, TWD, NZD, NIO, NIC, NGN, KPW, NOK, OMR, PKR, XPD, PAB, PGK, PYG, PEI, PEN, PES, PHP, XPT, PLN, PLZ, PTE, GWE, QAR, XRE, RHD, RON, ROL, RUB, RUR, RWF, SVC, WST, SAR, RSD, CSD, SCR, SLL, XAG, SGD, SKK, SIT, SBD, SOS, ZAR, ZAL, KRH, KRW, KRO, SSP, SUR, ESP, ESA, ESB, XDR, LKR, SHP, XSU, SDD, SDG, SDP, SRD, SRG, SZL, SEK, CHF, SYP, STN, STD, TVD, TJR, TJS, TZS, XTS, THB, XXX, TPE, TOP, TTD, TND, TRY, TRL, TMT, TMM, USD, USN, USS, UGX, UGS, UAH, UAK, AED, UYW, UYU, UYP, UYI, UZS, VUV, VES, VEB, VEF, VND, VNN, CHE, CHW, XOF, YDD, YER, YUN, YUD, YUM, YUR, ZWN, ZRN, ZRZ, ZMW, ZMK, ZWD, ZWR, ZWL, or - in cases where there is no clear mapping - the original value passed through.

companyString
Optional
The company the income statement belongs to.

start_periodString
Optional
The income statement's start period.

end_periodString
Optional
The income statement's end period.

incomeReportItem[]
Required
The ReportItem object
The ReportItem object is used to represent a report item for a Balance Sheet, Cash Flow Statement or Profit and Loss Report.
JSON
{
"remote_id": "10299",
"name": "Revenue",
"value": 1000,
"sub_items": [
{
"remote_id": "10300",
"name": "Revenue - San Francisco",
"value": 500,
"sub_items": []
},
{
"remote_id": "10301",
"name": "Revenue - New York",
"value": 500,
"sub_items": []
}
],
"company": "595c8f97-2ac4-45b7-b000-41bdf43240b5",
"modified_at": "2021-10-16T00:00:00Z"
}
Properties

remote_idString
Optional
The third-party API ID of the matching object.

nameString
Optional
The report item's name.

valueNumber
Optional
The report item's value.

sub_itemsObject
Required

companyString
Optional
The company the report item belongs to.

modified_atString
Required
This is the datetime that this object was last updated by Merge

cost_of_salesReportItem[]
Required
The ReportItem object
The ReportItem object is used to represent a report item for a Balance Sheet, Cash Flow Statement or Profit and Loss Report.
JSON
{
"remote_id": "10299",
"name": "Revenue",
"value": 1000,
"sub_items": [
{
"remote_id": "10300",
"name": "Revenue - San Francisco",
"value": 500,
"sub_items": []
},
{
"remote_id": "10301",
"name": "Revenue - New York",
"value": 500,
"sub_items": []
}
],
"company": "595c8f97-2ac4-45b7-b000-41bdf43240b5",
"modified_at": "2021-10-16T00:00:00Z"
}
Properties

remote_idString
Optional
The third-party API ID of the matching object.

nameString
Optional
The report item's name.

valueNumber
Optional
The report item's value.

sub_itemsObject
Required

companyString
Optional
The company the report item belongs to.

modified_atString
Required
This is the datetime that this object was last updated by Merge

gross_profitNumber
Optional
The revenue minus the cost of sale.

operating_expensesReportItem[]
Required
The ReportItem object
The ReportItem object is used to represent a report item for a Balance Sheet, Cash Flow Statement or Profit and Loss Report.
JSON
{
"remote_id": "10299",
"name": "Revenue",
"value": 1000,
"sub_items": [
{
"remote_id": "10300",
"name": "Revenue - San Francisco",
"value": 500,
"sub_items": []
},
{
"remote_id": "10301",
"name": "Revenue - New York",
"value": 500,
"sub_items": []
}
],
"company": "595c8f97-2ac4-45b7-b000-41bdf43240b5",
"modified_at": "2021-10-16T00:00:00Z"
}
Properties

remote_idString
Optional
The third-party API ID of the matching object.

nameString
Optional
The report item's name.

valueNumber
Optional
The report item's value.

sub_itemsObject
Required

companyString
Optional
The company the report item belongs to.

modified_atString
Required
This is the datetime that this object was last updated by Merge

net_operating_incomeNumber
Optional
The revenue minus the operating expenses.

non_operating_expensesReportItem[]
Required
The ReportItem object
The ReportItem object is used to represent a report item for a Balance Sheet, Cash Flow Statement or Profit and Loss Report.
JSON
{
"remote_id": "10299",
"name": "Revenue",
"value": 1000,
"sub_items": [
{
"remote_id": "10300",
"name": "Revenue - San Francisco",
"value": 500,
"sub_items": []
},
{
"remote_id": "10301",
"name": "Revenue - New York",
"value": 500,
"sub_items": []
}
],
"company": "595c8f97-2ac4-45b7-b000-41bdf43240b5",
"modified_at": "2021-10-16T00:00:00Z"
}
Properties

remote_idString
Optional
The third-party API ID of the matching object.

nameString
Optional
The report item's name.

valueNumber
Optional
The report item's value.

sub_itemsObject
Required

companyString
Optional
The company the report item belongs to.

modified_atString
Required
This is the datetime that this object was last updated by Merge

net_incomeNumber
Optional
The gross profit minus the total expenses.

remote_was_deletedBoolean
Required
Indicates whether or not this object has been deleted by third party webhooks.

field_mappingsObject
Optional

modified_atString
Required
This is the datetime that this object was last updated by Merge

remote_dataRemoteData[]
Optional

The IncomeStatement object
JSON
{
"id": "0958cbc6-6040-430a-848e-aafacbadf4ae",
"remote_id": "1342348",
"name": "IncomeStatement",
"currency": "USD",
"company": "595c8f97-2ac4-45b7-b000-41bdf43240b5",
"start_period": "2023-05-26T22:33:53.508Z",
"end_period": "2023-05-26T22:33:53.508Z",
"income": [
{
"remote_id": "10299",
"name": "Total Income",
"value": 325,
"sub_items": [
{
"remote_id": "10200",
"name": "Landscaping Services",
"value": 425,
"sub_items": []
},
{
"remote_id": "10201",
"name": "Pest Control Services",
"value": -100,
"sub_items": []
}
]
}
],
"cost_of_sales": [
{
"remote_id": "10299",
"name": "Total COGS",
"value": 25,
"sub_items": [
{
"remote_id": "10200",
"name": "Supplies",
"value": 10,
"sub_items": []
}
]
}
],
"gross_profit": 300,
"operating_expenses": [
{
"remote_id": "10299",
"name": "Total Operating Expenses",
"value": 100,
"sub_items": []
}
],
"net_operating_income": 200,
"non_operating_expenses": [
{
"remote_id": "10299",
"name": "Total Non-Operating Expenses",
"value": 100,
"sub_items": []
}
],
"net_income": 100,
"remote_was_deleted": true,
Show advanced fields
}

GET
/income-statements

Returns a list of IncomeStatement objects.


Header Parameters

AuthorizationString
Required
Token-based authentication with required prefix "Bearer"

X-Account-TokenString
Required
Token identifying the end user.
Query & Path Parameters

company_idString
Optional
If provided, will only return income statements for this company.

created_afterString
Optional
If provided, will only return objects created after this datetime.

created_beforeString
Optional
If provided, will only return objects created before this datetime.

cursorString
Optional
The pagination cursor value.

expandString
Optional
Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces.

include_deleted_dataBoolean
Optional
Whether to include data that was marked as deleted by third party webhooks.

include_remote_dataBoolean
Optional
Whether to include the original data Merge fetched from the third-party to produce these models.

modified_afterString
Optional
If provided, only objects synced by Merge after this date time will be returned.

modified_beforeString
Optional
If provided, only objects synced by Merge before this date time will be returned.

page_sizeInteger
Optional
Number of results to return per page.

remote_idString
Optional
The API provider's ID for the given object.

Response
JSON
{
"next": "cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw",
"previous": "cj1sZXdwd2VycWVtY29zZnNkc2NzUWxNMEUxTXk0ME16UXpNallsTWtJ",
"results": [
{
"id": "0958cbc6-6040-430a-848e-aafacbadf4ae",
"remote_id": "1342348",
"name": "IncomeStatement",
"currency": "USD",
"company": "595c8f97-2ac4-45b7-b000-41bdf43240b5",
"start_period": "2023-05-26T22:33:53.515Z",
"end_period": "2023-05-26T22:33:53.515Z",
"income": [
{
"remote_id": "10299",
"name": "Total Income",
"value": 325,
"sub_items": [
{
"remote_id": "10200",
"name": "Landscaping Services",
"value": 425,
"sub_items": []
},
{
"remote_id": "10201",
"name": "Pest Control Services",
"value": -100,
"sub_items": []
}
]
}
],
"cost_of_sales": [
{
"remote_id": "10299",
"name": "Total COGS",
"value": 25,
"sub_items": [
{
"remote_id": "10200",
"name": "Supplies",
"value": 10,
"sub_items": []
}
]
}
],
"gross_profit": 300,
"operating_expenses": [
{
"remote_id": "10299",
"name": "Total Operating Expenses",
"value": 100,
"sub_items": []
}
],
"net_operating_income": 200,
"non_operating_expenses": [
{
"remote_id": "10299",
"name": "Total Non-Operating Expenses",
"value": 100,
"sub_items": []
}
],
"net_income": 100,
"remote_was_deleted": true,
Show advanced fields
}
]
}
Field support by platform
NetSuite
NetSuite

Merge supports Passthrough Requests to this platform's API

Supported Response Fields


companyString

end_periodString

nameString

start_periodString
QuickBooks Online
QuickBooks Online

Merge supports Passthrough Requests to this platform's API

Supported Response Fields


currencyEnum

end_periodString

gross_profitNumber

nameString

net_incomeNumber

net_operating_incomeNumber

remote_dataRemoteData[]
pathstring
dataobject

start_periodString
Xero
Xero

Merge supports Passthrough Requests to this platform's API

Supported Response Fields


end_periodString

gross_profitNumber

nameString

net_incomeNumber

net_operating_incomeNumber

remote_dataRemoteData[]
pathstring
dataobject

start_periodString
FreshBooks
FreshBooks
Coming Soon
Hint: Use the /linked-accounts endpoint to pull platform support information.
GET
/income-statements/{id}

Returns an IncomeStatement object with the given id.


Header Parameters

AuthorizationString
Required
Token-based authentication with required prefix "Bearer"

X-Account-TokenString
Required
Token identifying the end user.
Query & Path Parameters

expandString
Optional
Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces.

idString
Required

include_remote_dataBoolean
Optional
Whether to include the original data Merge fetched from the third-party to produce these models.
Response
JSON
{
"id": "0958cbc6-6040-430a-848e-aafacbadf4ae",
"remote_id": "1342348",
"name": "IncomeStatement",
"currency": "USD",
"company": "595c8f97-2ac4-45b7-b000-41bdf43240b5",
"start_period": "2023-05-26T22:33:53.528Z",
"end_period": "2023-05-26T22:33:53.528Z",
"income": [
{
"remote_id": "10299",
"name": "Total Income",
"value": 325,
"sub_items": [
{
"remote_id": "10200",
"name": "Landscaping Services",
"value": 425,
"sub_items": []
},
{
"remote_id": "10201",
"name": "Pest Control Services",
"value": -100,
"sub_items": []
}
]
}
],
"cost_of_sales": [
{
"remote_id": "10299",
"name": "Total COGS",
"value": 25,
"sub_items": [
{
"remote_id": "10200",
"name": "Supplies",
"value": 10,
"sub_items": []
}
]
}
],
"gross_profit": 300,
"operating_expenses": [
{
"remote_id": "10299",
"name": "Total Operating Expenses",
"value": 100,
"sub_items": []
}
],
"net_operating_income": 200,
"non_operating_expenses": [
{
"remote_id": "10299",
"name": "Total Non-Operating Expenses",
"value": 100,
"sub_items": []
}
],
"net_income": 100,
"remote_was_deleted": true,
Show advanced fields
}
Field support by platform
NetSuite
NetSuite

Merge supports Passthrough Requests to this platform's API

Supported Response Fields


companyString

end_periodString

nameString

start_periodString
QuickBooks Online
QuickBooks Online

Merge supports Passthrough Requests to this platform's API

Supported Response Fields


currencyEnum

end_periodString

gross_profitNumber

nameString

net_incomeNumber

net_operating_incomeNumber

remote_dataRemoteData[]
pathstring
dataobject

start_periodString
Xero
Xero

Merge supports Passthrough Requests to this platform's API

Supported Response Fields


end_periodString

gross_profitNumber

nameString

net_incomeNumber

net_operating_incomeNumber

remote_dataRemoteData[]
pathstring
dataobject

start_periodString
FreshBooks
FreshBooks
Coming Soon
Hint: Use the /linked-accounts endpoint to pull platform support information.